From 5b19791236a18dafef77545101eb3a70bb5a03e1 Mon Sep 17 00:00:00 2001
From: Ulrich Weigand <uweigand@de.ibm.com>
Date: Sun, 4 May 2008 00:41:44 +0000
Subject: [PATCH] 	* rs6000-tdep.c (rs6000_frame_this_id): If info->base
 is 0, 	return the null frame ID to terminate the backtrace.

---
 gdb/ChangeLog     | 5 +++++
 gdb/rs6000-tdep.c | 4 ++++
 2 files changed, 9 insertions(+)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 4c52d0e3ed3..2f8573f90ef 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
+
+	* rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
+	return the null frame ID to terminate the backtrace.
+
 2008-05-03  Ulrich Weigand  <uweigand@de.ibm.com>
 
 	* rs6000-tdep.c: Do not include "rs6000-tdep.h".
diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c
index 6f3d2e5e1b7..790776734e9 100644
--- a/gdb/rs6000-tdep.c
+++ b/gdb/rs6000-tdep.c
@@ -2550,6 +2550,10 @@ rs6000_frame_this_id (struct frame_info *this_frame, void **this_cache,
 {
   struct rs6000_frame_cache *info = rs6000_frame_cache (this_frame,
 							this_cache);
+  /* This marks the outermost frame.  */
+  if (info->base == 0)
+    return;
+
   (*this_id) = frame_id_build (info->base, get_frame_func (this_frame));
 }