[gdb] Fix hang after ext sigkill
[deliverable/binutils-gdb.git] / gdb / thread.c
index c6e3d356a5a352de4bb07e5a3eab38a4b39b2fc9..03805bd25659d6f672596cef91178f70c278a293 100644 (file)
@@ -1488,8 +1488,16 @@ scoped_restore_current_thread::scoped_restore_current_thread ()
       else
        frame = NULL;
 
-      m_selected_frame_id = get_frame_id (frame);
-      m_selected_frame_level = frame_relative_level (frame);
+      try
+       {
+         m_selected_frame_id = get_frame_id (frame);
+         m_selected_frame_level = frame_relative_level (frame);
+       }
+      catch (const gdb_exception_error &ex)
+       {
+         m_selected_frame_id = null_frame_id;
+         m_selected_frame_level = -1;
+       }
 
       tp->incref ();
       m_thread = tp;
This page took 0.037761 seconds and 4 git commands to generate.