Merge "Stop fp unwinding if the pc is 0." into main
diff --git a/libc/bionic/android_unsafe_frame_pointer_chase.cpp b/libc/bionic/android_unsafe_frame_pointer_chase.cpp
index 58b7cd8..7d5cd6c 100644
--- a/libc/bionic/android_unsafe_frame_pointer_chase.cpp
+++ b/libc/bionic/android_unsafe_frame_pointer_chase.cpp
@@ -82,7 +82,11 @@
     auto* frame = reinterpret_cast<frame_record*>(begin);
 #endif
     if (num_frames < num_entries) {
-      buf[num_frames] = __bionic_clear_pac_bits(frame->return_addr);
+      uintptr_t addr = __bionic_clear_pac_bits(frame->return_addr);
+      if (addr == 0) {
+        break;
+      }
+      buf[num_frames] = addr;
     }
     ++num_frames;
     if (frame->next_frame < begin + sizeof(frame_record) || frame->next_frame >= end ||