gdb/gdb-autoload-01of28.patch

66 lines
2.1 KiB
Diff

http://sourceware.org/ml/gdb-cvs/2012-01/msg00202.html
### src/gdb/ChangeLog 2012/01/24 19:12:31 1.13771
### src/gdb/ChangeLog 2012/01/24 20:56:33 1.13772
## -1,3 +1,12 @@
+2012-01-24 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Code cleanup.
+ * cli/cli-cmds.c (source_script_from_stream): Never fclose STREAM.
+ Update the function comment for it.
+ (source_script_with_search): Call make_cleanup_fclose for STREAM.
+ * cli/cli-script.c (script_from_file): Do not call make_cleanup_fclose
+ for STREAM.
+
2012-01-24 Pedro Alves <palves@redhat.com>
* breakpoint.c (bpstat_stop_status): Moving clearing print_it
--- src/gdb/cli/cli-cmds.c 2012/01/23 16:37:03 1.123
+++ src/gdb/cli/cli-cmds.c 2012/01/24 20:56:33 1.124
@@ -527,8 +527,7 @@
return 1;
}
-/* Load script FILE, which has already been opened as STREAM.
- STREAM is closed before we return. */
+/* Load script FILE, which has already been opened as STREAM. */
static void
source_script_from_stream (FILE *stream, const char *file)
@@ -556,12 +555,9 @@
else
{
/* Nope, just punt. */
- fclose (stream);
throw_exception (e);
}
}
- else
- fclose (stream);
}
else
script_from_file (stream, file);
@@ -595,6 +591,7 @@
}
old_cleanups = make_cleanup (xfree, full_path);
+ make_cleanup_fclose (stream);
/* The python support reopens the file, so we need to pass full_path here
in case the file was found on the search path. It's useful to do this
anyway so that error messages show the actual file used. But only do
--- src/gdb/cli/cli-script.c 2012/01/04 08:17:17 1.73
+++ src/gdb/cli/cli-script.c 2012/01/24 20:56:33 1.74
@@ -1614,11 +1614,9 @@
if (stream == NULL)
internal_error (__FILE__, __LINE__, _("called with NULL file pointer!"));
- old_cleanups = make_cleanup_fclose (stream);
-
old_lines.old_line = source_line_number;
old_lines.old_file = source_file_name;
- make_cleanup (source_cleanup_lines, &old_lines);
+ old_cleanups = make_cleanup (source_cleanup_lines, &old_lines);
source_line_number = 0;
source_file_name = file;
/* This will get set every time we read a line. So it won't stay ""