From 141ad9acf0a4b8c0107859ed87ea03d8f1d2d665 Mon Sep 17 00:00:00 2001 From: cristy Date: Thu, 11 Sep 2014 23:37:24 +0000 Subject: [PATCH] --- MagickCore/option.c | 136 ++++++++++++++++++-------------------------- 1 file changed, 55 insertions(+), 81 deletions(-) diff --git a/MagickCore/option.c b/MagickCore/option.c index 3da77083c..0ce53be9d 100644 --- a/MagickCore/option.c +++ b/MagickCore/option.c @@ -2096,6 +2096,7 @@ MagickExport ssize_t GetCommandOptionFlags(const CommandOption option, token[MaxTextExtent]; const OptionInfo + *command_info, *option_info; int @@ -2110,6 +2111,9 @@ MagickExport ssize_t GetCommandOptionFlags(const CommandOption option, register const char *p; + register ssize_t + i; + ssize_t option_types; @@ -2138,55 +2142,38 @@ MagickExport ssize_t GetCommandOptionFlags(const CommandOption option, } *q='\0'; if (option == MagickCommandOptions) - { - const OptionInfo - *command_info; - - command_info=GetCommandOptionInfo(token); - 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) - return(-1); - if (negate != MagickFalse) - option_types=option_types &~ command_info->flags; - else - option_types=option_types | command_info->flags; - } + command_info=GetCommandOptionInfo(token); else { - register ssize_t - i; - for (i=0; option_info[i].mnemonic != (char *) NULL; i++) if (LocaleCompare(token,option_info[i].mnemonic) == 0) break; - if ((option_info[i].mnemonic == (char *) NULL) && - ((strchr(token+1,'-') != (char *) NULL) || - (strchr(token+1,'_') != (char *) NULL))) + command_info=option_info+i; + } + 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)); + if (option == MagickCommandOptions) + command_info=GetCommandOptionInfo(token); + else { - 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)); for (i=0; option_info[i].mnemonic != (char *) NULL; i++) if (LocaleCompare(token,option_info[i].mnemonic) == 0) break; + command_info=option_info+i; } - if (option_info[i].mnemonic == (char *) NULL) - return(-1); - if (negate != MagickFalse) - option_types=option_types &~ option_info[i].flags; - else - option_types=option_types | option_info[i].flags; } + if (command_info->mnemonic == (const char *) NULL) + return(-1); + if (negate != MagickFalse) + option_types=option_types &~ command_info->flags; + else + option_types=option_types | command_info->flags; if (list == MagickFalse) break; } @@ -2686,6 +2673,7 @@ MagickExport ssize_t ParseCommandOption(const CommandOption option, token[MaxTextExtent]; const OptionInfo + *command_info, *option_info; int @@ -2700,6 +2688,9 @@ MagickExport ssize_t ParseCommandOption(const CommandOption option, register const char *p; + register ssize_t + i; + ssize_t option_types; @@ -2728,55 +2719,38 @@ MagickExport ssize_t ParseCommandOption(const CommandOption option, } *q='\0'; if (option == MagickCommandOptions) - { - const OptionInfo - *command_info; - - command_info=GetCommandOptionInfo(token); - 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) - return(-1); - if (negate != MagickFalse) - option_types=option_types &~ command_info->type; - else - option_types=option_types | command_info->type; - } + command_info=GetCommandOptionInfo(token); else { - register ssize_t - i; - for (i=0; option_info[i].mnemonic != (char *) NULL; i++) if (LocaleCompare(token,option_info[i].mnemonic) == 0) break; - if ((option_info[i].mnemonic == (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)); - for (i=0; option_info[i].mnemonic != (char *) NULL; i++) - if (LocaleCompare(token,option_info[i].mnemonic) == 0) - break; - } - if (option_info[i].mnemonic == (char *) NULL) - return(-1); - if (negate != MagickFalse) - option_types=option_types &~ option_info[i].type; - else - option_types=option_types | option_info[i].type; + command_info=option_info+i; } + 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)); + if (option == MagickCommandOptions) + command_info=GetCommandOptionInfo(token); + else + { + for (i=0; option_info[i].mnemonic != (char *) NULL; i++) + if (LocaleCompare(token,option_info[i].mnemonic) == 0) + break; + command_info=option_info+i; + } + } + if (command_info->mnemonic == (const char *) NULL) + return(-1); + if (negate != MagickFalse) + option_types=option_types &~ command_info->type; + else + option_types=option_types | command_info->type; if (list == MagickFalse) break; } -- 2.40.0