aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/remote-rdi.c15
2 files changed, 17 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 5279d9f..3712db9 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+Tue Sep 15 14:02:01 1998 Nick Clifton <nickc@cygnus.com>
+
+ * remote-rdi.c: Prevent multiple attempts to close the remote
+ connection.
+
Tue Sep 15 10:24:17 1998 Andrew Cagney <cagney@b1.cygnus.com>
* printcmd.c (examine_i_type): New static - type for instructions.
diff --git a/gdb/remote-rdi.c b/gdb/remote-rdi.c
index 2911904..6bfcb8b 100644
--- a/gdb/remote-rdi.c
+++ b/gdb/remote-rdi.c
@@ -181,6 +181,9 @@ mygets (arg, buffer, len)
return fgets(buffer, len, stdin);
}
+/* Prevent multiple calls to angel_RDI_close(). */
+static int closed_already = 1;
+
/* Open a connection to a remote debugger. NAME is the filename used
for communication. */
@@ -318,6 +321,8 @@ device is attached to the remote system (e.g. /dev/ttya).");
}
printf_filtered ("Connected to ARM RDI target.\n");
+
+ closed_already = 0;
}
/* Start an inferior process and set inferior_pid to its pid.
@@ -414,10 +419,14 @@ arm_rdi_close (quitting)
{
int rslt;
- rslt = angel_RDI_close ();
- if (rslt)
+ if (! closed_already)
{
- printf_filtered ("RDI_close: %s\n", rdi_error_message (rslt));
+ rslt = angel_RDI_close ();
+ if (rslt)
+ {
+ printf_filtered ("RDI_close: %s\n", rdi_error_message (rslt));
+ }
+ closed_already = 1;
}
}