aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/libgcc2.c9
2 files changed, 13 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e456336..c7b0ca7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+1999-10-14 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * libgcc2.c (__do_global_dtors): Protect __deregister_frame_info
+ from multiple calls.
+
Thu Oct 14 04:54:54 1999 Richard Henderson <rth@cygnus.com>
* i386.md (call value patterns): Move to the end of the file.
diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c
index a05d7fd..6a982cc 100644
--- a/gcc/libgcc2.c
+++ b/gcc/libgcc2.c
@@ -2867,7 +2867,14 @@ __do_global_dtors ()
}
#endif
#ifdef EH_FRAME_SECTION
- __deregister_frame_info (__EH_FRAME_BEGIN__);
+ {
+ static int completed = 0;
+ if (! completed)
+ {
+ completed = 1;
+ __deregister_frame_info (__EH_FRAME_BEGIN__);
+ }
+ }
#endif
}
#endif