From: cristy Date: Thu, 11 Sep 2014 14:39:34 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~2024 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4ad161684c578ad4600f8829037e63ed07e7dd17;p=imagemagick --- diff --git a/MagickCore/option.c b/MagickCore/option.c index 2917ba96a..e0682b59e 100644 --- a/MagickCore/option.c +++ b/MagickCore/option.c @@ -2143,32 +2143,22 @@ MagickExport ssize_t GetCommandOptionFlags(const CommandOption option, *command_info; command_info=GetCommandOptionInfo(token); - if (command_info->mnemonic != (const char *) NULL) + if ((command_info->mnemonic == (const char *) NULL) && + ((strchr(token+1,'-') != (char *) NULL) || + (strchr(token+1,'_') != (char *) NULL))) { - if (*token == '!') - option_types=option_types &~ command_info->flags; - else - option_types=option_types | command_info->flags; + while ((q=strchr(token+1,'-')) != (char *) NULL) + (void) CopyMagickString(q,q+1,MaxTextExtent-strlen(q)); + while ((q=strchr(token+1,'_')) != (char *) NULL) + (void) CopyMagickString(q,q+1,MaxTextExtent-strlen(q)); + command_info=GetCommandOptionInfo(token); } - else - if ((strchr(token+1,'-') != (char *) NULL) || - (strchr(token+1,'_') != (char *) NULL)) - { - while ((q=strchr(token+1,'-')) != (char *) NULL) - (void) CopyMagickString(q,q+1,MaxTextExtent-strlen(q)); - while ((q=strchr(token+1,'_')) != (char *) NULL) - (void) CopyMagickString(q,q+1,MaxTextExtent-strlen(q)); - command_info=GetCommandOptionInfo(token); - if (command_info->mnemonic != (const char *) NULL) - { - if (*token == '!') - option_types=option_types &~ command_info->flags; - else - option_types=option_types | command_info->flags; - } - } if (command_info->mnemonic == (const char *) NULL) return(-1); + if (*token == '!') + option_types=option_types &~ command_info->flags; + else + option_types=option_types | command_info->flags; } else { @@ -2177,13 +2167,7 @@ MagickExport ssize_t GetCommandOptionFlags(const CommandOption option, for (i=0; option_info[i].mnemonic != (char *) NULL; i++) if (LocaleCompare(token,option_info[i].mnemonic) == 0) - { - if (*token == '!') - option_types=option_types &~ option_info[i].flags; - else - option_types=option_types | option_info[i].flags; - break; - } + break; if ((option_info[i].mnemonic == (char *) NULL) && ((strchr(token+1,'-') != (char *) NULL) || (strchr(token+1,'_') != (char *) NULL))) @@ -2194,16 +2178,14 @@ MagickExport ssize_t GetCommandOptionFlags(const CommandOption option, (void) CopyMagickString(q,q+1,MaxTextExtent-strlen(q)); for (i=0; option_info[i].mnemonic != (char *) NULL; i++) if (LocaleCompare(token,option_info[i].mnemonic) == 0) - { - if (*token == '!') - option_types=option_types &~ option_info[i].flags; - else - option_types=option_types | option_info[i].flags; - break; - } + break; } if (option_info[i].mnemonic == (char *) NULL) return(-1); + if (*token == '!') + option_types=option_types &~ option_info[i].flags; + else + option_types=option_types | option_info[i].flags; } if (list == MagickFalse) break; @@ -2751,32 +2733,22 @@ MagickExport ssize_t ParseCommandOption(const CommandOption option, *command_info; command_info=GetCommandOptionInfo(token); - if (command_info->mnemonic != (const char *) NULL) - { - if (*token == '!') - option_types=option_types &~ command_info->type; - else - option_types=option_types | command_info->type; - } - else - if ((strchr(token+1,'-') != (char *) NULL) || - (strchr(token+1,'_') != (char *) NULL)) + if ((command_info->mnemonic == (const char *) NULL) && + ((strchr(token+1,'-') != (char *) NULL) || + (strchr(token+1,'_') != (char *) NULL))) { while ((q=strchr(token+1,'-')) != (char *) NULL) (void) CopyMagickString(q,q+1,MaxTextExtent-strlen(q)); while ((q=strchr(token+1,'_')) != (char *) NULL) (void) CopyMagickString(q,q+1,MaxTextExtent-strlen(q)); command_info=GetCommandOptionInfo(token); - if (command_info->mnemonic != (const char *) NULL) - { - if (*token == '!') - option_types=option_types &~ command_info->type; - else - option_types=option_types | command_info->type; - } } if (command_info->mnemonic == (const char *) NULL) return(-1); + if (*token == '!') + option_types=option_types &~ command_info->type; + else + option_types=option_types | command_info->type; } else { @@ -2785,13 +2757,7 @@ MagickExport ssize_t ParseCommandOption(const CommandOption option, for (i=0; option_info[i].mnemonic != (char *) NULL; i++) if (LocaleCompare(token,option_info[i].mnemonic) == 0) - { - if (*token == '!') - option_types=option_types &~ option_info[i].type; - else - option_types=option_types | option_info[i].type; - break; - } + break; if ((option_info[i].mnemonic == (char *) NULL) && ((strchr(token+1,'-') != (char *) NULL) || (strchr(token+1,'_') != (char *) NULL))) @@ -2802,16 +2768,14 @@ MagickExport ssize_t ParseCommandOption(const CommandOption option, (void) CopyMagickString(q,q+1,MaxTextExtent-strlen(q)); for (i=0; option_info[i].mnemonic != (char *) NULL; i++) if (LocaleCompare(token,option_info[i].mnemonic) == 0) - { - if (*token == '!') - option_types=option_types &~ option_info[i].type; - else - option_types=option_types | option_info[i].type; - break; - } + break; } if (option_info[i].mnemonic == (char *) NULL) return(-1); + if (*token == '!') + option_types=option_types &~ option_info[i].type; + else + option_types=option_types | option_info[i].type; } if (list == MagickFalse) break;