2011-03-09 Michael Snyder * mi-cmd-disas.c (mi_cmd_disassemble): Fix memory leak. Index: mi-cmd-disas.c =================================================================== RCS file: /cvs/src/src/gdb/mi/mi-cmd-disas.c,v retrieving revision 1.38 diff -u -p -r1.38 mi-cmd-disas.c --- mi-cmd-disas.c 12 Jan 2011 21:09:39 -0000 1.38 +++ mi-cmd-disas.c 9 Mar 2011 19:08:54 -0000 @@ -73,6 +73,7 @@ mi_cmd_disassemble (char *command, char int how_many = -1; CORE_ADDR low = 0; CORE_ADDR high = 0; + struct cleanup *cleanups = make_cleanup (null_cleanup, NULL); /* Options processing stuff. */ int optind = 0; @@ -103,6 +104,7 @@ mi_cmd_disassemble (char *command, char case FILE_OPT: file_string = xstrdup (optarg); file_seen = 1; + make_cleanup (xfree, file_string); break; case LINE_OPT: line_num = atoi (optarg); @@ -169,4 +171,6 @@ mi_cmd_disassemble (char *command, char file_string, disasm_flags, how_many, low, high); + + do_cleanups (cleanups); }