mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-27 03:54:41 +08:00
[gdb] Eliminate catch(...) in pipe_command
Remove duplicate code in pipe_command using SCOPE_EXIT. Tested on aarch64-linux. Approved-By: Tom Tromey <tom@tromey.com>
This commit is contained in:
parent
f3f21aa9f9
commit
58706ec737
@ -1118,19 +1118,14 @@ pipe_command (const char *arg, int from_tty)
|
||||
if (to_shell_command == nullptr)
|
||||
error (_("Error launching \"%s\""), shell_command);
|
||||
|
||||
try
|
||||
{
|
||||
stdio_file pipe_file (to_shell_command);
|
||||
int exit_status;
|
||||
{
|
||||
SCOPE_EXIT { exit_status = pclose (to_shell_command); };
|
||||
|
||||
execute_command_to_ui_file (&pipe_file, gdb_cmd.c_str (), from_tty);
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
pclose (to_shell_command);
|
||||
throw;
|
||||
}
|
||||
stdio_file pipe_file (to_shell_command);
|
||||
|
||||
int exit_status = pclose (to_shell_command);
|
||||
execute_command_to_ui_file (&pipe_file, gdb_cmd.c_str (), from_tty);
|
||||
}
|
||||
|
||||
if (exit_status < 0)
|
||||
error (_("shell command \"%s\" failed: %s"), shell_command,
|
||||
|
Loading…
Reference in New Issue
Block a user