OSDN Git Service

gdb/
authorjkratoch <jkratoch>
Thu, 19 Aug 2010 07:34:26 +0000 (07:34 +0000)
committerjkratoch <jkratoch>
Thu, 19 Aug 2010 07:34:26 +0000 (07:34 +0000)
* varobj.c (varobj_create): Replace variable old_fi with old_id,
initialize it by null_frame_id, wrap its usage by get_frame_id,
frame_id_p and frame_find_by_id.

gdb/ChangeLog
gdb/varobj.c

index c35c47b..b889876 100644 (file)
@@ -1,3 +1,9 @@
+2010-08-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * varobj.c (varobj_create): Replace variable old_fi with old_id,
+       initialize it by null_frame_id, wrap its usage by get_frame_id,
+       frame_id_p and frame_find_by_id.
+
 2010-08-18  Tom Tromey  <tromey@redhat.com>
 
        PR python/11900:
index 35c6ce7..56cb8ae 100644 (file)
@@ -537,7 +537,7 @@ varobj_create (char *objname,
   if (expression != NULL)
     {
       struct frame_info *fi;
-      struct frame_info *old_fi = NULL;
+      struct frame_id old_id = null_frame_id;
       struct block *block;
       char *p;
       enum varobj_languages lang;
@@ -611,7 +611,7 @@ varobj_create (char *objname,
 
          var->root->frame = get_frame_id (fi);
          var->root->thread_id = pid_to_thread_id (inferior_ptid);
-         old_fi = get_selected_frame (NULL);
+         old_id = get_frame_id (get_selected_frame (NULL));
          select_frame (fi);     
        }
 
@@ -639,8 +639,8 @@ varobj_create (char *objname,
       var->root->rootvar = var;
 
       /* Reset the selected frame */
-      if (old_fi != NULL)
-       select_frame (old_fi);
+      if (frame_id_p (old_id))
+       select_frame (frame_find_by_id (old_id));
     }
 
   /* If the variable object name is null, that means this