+2008-11-20 Pedro Alves <pedro@codesourcery.com>
+
+ * infrun.c (resume): If following a fork, also reset regcache,
+ gdbarch and pc.
+
2008-11-20 Doug Evans <dje@google.com>
* printcmd.c (sym_info): Don't print the offset if it's zero.
{
int should_resume = 1;
struct cleanup *old_cleanups = make_cleanup (resume_cleanups, 0);
+
+ /* Note that these must be reset if we follow a fork below. */
struct regcache *regcache = get_current_regcache ();
struct gdbarch *gdbarch = get_regcache_arch (regcache);
struct thread_info *tp = inferior_thread ();
CORE_ADDR pc = regcache_read_pc (regcache);
+
QUIT;
if (debug_infrun)
/* Following a child fork will change our notion of current
thread. */
tp = inferior_thread ();
+ regcache = get_current_regcache ();
+ gdbarch = get_regcache_arch (regcache);
+ pc = regcache_read_pc (regcache);
break;
case TARGET_WAITKIND_EXECD: