aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2012-01-23 16:37:03 +0000
committerJan Kratochvil <jan.kratochvil@redhat.com>2012-01-23 16:37:03 +0000
commit77a35dd897bf8b3ea4a54f6da6043165d439dfd2 (patch)
tree9c5a0493ba8649bd8259237f49cb6d432a82a00b
parenta71b5a3812de2a9da03eb91bc31df306f28c3d11 (diff)
downloadgdb-77a35dd897bf8b3ea4a54f6da6043165d439dfd2.zip
gdb-77a35dd897bf8b3ea4a54f6da6043165d439dfd2.tar.gz
gdb-77a35dd897bf8b3ea4a54f6da6043165d439dfd2.tar.bz2
gdb/
* cli/cli-cmds.c (find_and_open_script): Handle failure of fdopen.
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/cli/cli-cmds.c11
2 files changed, 15 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 932c035..b73d98f 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2012-01-23 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * cli/cli-cmds.c (find_and_open_script): Handle failure of fdopen.
+
2012-01-23 Ulrich Weigand <ulrich.weigand@linaro.org>
* inf-child.c: Include "gdb_stat.h" instead of <sys/stat.h>.
diff --git a/gdb/cli/cli-cmds.c b/gdb/cli/cli-cmds.c
index c38167a..91421aa 100644
--- a/gdb/cli/cli-cmds.c
+++ b/gdb/cli/cli-cmds.c
@@ -513,6 +513,17 @@ find_and_open_script (const char *script_file, int search_path,
do_cleanups (old_cleanups);
*streamp = fdopen (fd, FOPEN_RT);
+ if (*streamp == NULL)
+ {
+ int save_errno = errno;
+
+ close (fd);
+ if (full_pathp)
+ xfree (*full_pathp);
+ errno = save_errno;
+ return 0;
+ }
+
return 1;
}