stop using variable sized arrays. That's something that belongs to C++ and not C.
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Thu, 10 Apr 2008 19:44:56 +0000 (19:44 +0000)
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Thu, 10 Apr 2008 19:44:56 +0000 (19:44 +0000)
git-svn-id: svn://svn.berlios.de/openocd/trunk@560 b42882b7-edfa-0310-969c-e2dbd0fdcd60

src/helper/command.c

index ec7cc6bb7cd2e962d2f9b95ddcd0cc39ae6629eb..7a7cbcbb61932fecb8c3741e87881f50480dacfb 100644 (file)
@@ -452,11 +452,8 @@ int command_run_file(command_context_t *context, FILE *file, enum command_mode m
 void command_print_help_line(command_context_t* context, struct command_s *command, int indent)
 {
        command_t *c;
-       #ifdef HAVE_C_VARRAYS
-       char indent_text[indent + 2];
-       #else
-       char indent_text[68];
-       #endif
+       char *indent_text=malloc(indent + 2);
+       
        char *help = "no help available";
        char name_buf[64];
        
@@ -484,6 +481,7 @@ void command_print_help_line(command_context_t* context, struct command_s *comma
                        command_print_help_line(context, c, indent + 1);
                }
        }
+       free(indent_text);
 }
 
 int command_print_help_match(command_context_t* context, command_t* c_first, char* name, char** args, int argc)