gdb: check result of gdb_fopen_cloexec in dump_binary_file
authorSimon Marchi <simon.marchi@polymtl.ca>
Mon, 26 Apr 2021 15:27:07 +0000 (11:27 -0400)
committerSimon Marchi <simon.marchi@polymtl.ca>
Mon, 26 Apr 2021 15:27:07 +0000 (11:27 -0400)
commitbea3329b76cf131ad4ac27acb6728b38984998b9
tree5c8d8482d6ec1da893061e2e263a55a2fff28a71
parent21f91785752b59d03117f7803b7e1c9a58e62dbe
gdb: check result of gdb_fopen_cloexec in dump_binary_file

Bug 27773 shows that passing a filename in a non-existent directory to
the "dump binary" command leads to a gdb crash.  This is because the
gdb_fopen_cloexec in dump_binary_file fails (returns nullptr) and the
return value is not checked.  Fix that by erroring out if
gdb_fopen_cloexec fails.

gdb/ChangeLog:

PR gdb/27773
* cli/cli-dump.c (dump_binary_file): Check result of
gdb_fopen_cloexec.

gdb/testsuite/ChangeLog:

PR gdb/27773
* gdb.base/dump.exp: Test dump to non-existent dir.

Change-Id: Iea89a3bf9e6b9dcc31142faa5ae17bc855759328
gdb/ChangeLog
gdb/cli/cli-dump.c
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/dump.exp