aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Seitz <keiths@redhat.com>2002-10-22 17:53:42 +0000
committerKeith Seitz <keiths@redhat.com>2002-10-22 17:53:42 +0000
commit99615eb88f4394f240d5cc8807b5c15db91cc754 (patch)
tree8ca92b45dfe458ec185ae51965c493d6892aa171
parent7ed1d3463ed9ab59cb3f7e2e454d0e214b743c85 (diff)
downloadgdb-99615eb88f4394f240d5cc8807b5c15db91cc754.zip
gdb-99615eb88f4394f240d5cc8807b5c15db91cc754.tar.gz
gdb-99615eb88f4394f240d5cc8807b5c15db91cc754.tar.bz2
* mi-main.c (mi_cmd_thread_select): Only return MI_CMD_CAUGHT_ERROR
when we really did catch an error(). If we got GDB_RC_FAIL, return MI_CMD_ERROR instead.
-rw-r--r--gdb/mi/ChangeLog6
-rw-r--r--gdb/mi/mi-main.c6
2 files changed, 11 insertions, 1 deletions
diff --git a/gdb/mi/ChangeLog b/gdb/mi/ChangeLog
index 0a0954f..5a89d5f 100644
--- a/gdb/mi/ChangeLog
+++ b/gdb/mi/ChangeLog
@@ -1,3 +1,9 @@
+2002-10-22 Keith Seitz <keiths@redhat.com>
+
+ * mi-main.c (mi_cmd_thread_select): Only return MI_CMD_CAUGHT_ERROR
+ when we really did catch an error(). If we got GDB_RC_FAIL, return
+ MI_CMD_ERROR instead.
+
2002-10-03 Jeff Johnston <jjohnstn@redhat.com>
* gdbmi.texinfo: Fix examples that show frames to remove
diff --git a/gdb/mi/mi-main.c b/gdb/mi/mi-main.c
index 4177592..a866042 100644
--- a/gdb/mi/mi-main.c
+++ b/gdb/mi/mi-main.c
@@ -240,8 +240,12 @@ mi_cmd_thread_select (char *command, char **argv, int argc)
else
rc = gdb_thread_select (uiout, argv[0]);
- if (rc == GDB_RC_FAIL)
+ /* RC is enum gdb_rc if it is successful (>=0)
+ enum return_reason if not (<0). */
+ if ((int) rc < 0 && (enum return_reason) rc == RETURN_ERROR)
return MI_CMD_CAUGHT_ERROR;
+ else if ((int) rc >= 0 && rc == GDB_RC_FAIL)
+ return MI_CMD_ERROR;
else
return MI_CMD_DONE;
}