aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/unwind-dw2-fde.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a4681a7..8d1fb69 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2003-04-18 Douglas B Rupp <rupp@gnat.com>
+
+ * unwind-dw2-fde.c (__register_frame_info_bases): Check for
+ null begin parameter (as well as pointer to null).
+ (__deregister_frame_info_bases): Likewise.
+
2003-04-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* function.c (purge_addressof_1): For ADDRESSOF, see if SUB is a
diff --git a/gcc/unwind-dw2-fde.c b/gcc/unwind-dw2-fde.c
index b1bd8c0..31fc1c4 100644
--- a/gcc/unwind-dw2-fde.c
+++ b/gcc/unwind-dw2-fde.c
@@ -78,7 +78,7 @@ __register_frame_info_bases (void *begin, struct object *ob,
void *tbase, void *dbase)
{
/* If .eh_frame is empty, don't register at all. */
- if (*(uword *) begin == 0)
+ if ((uword *) begin == 0 || *(uword *) begin == 0)
return;
ob->pc_begin = (void *)-1;
@@ -176,7 +176,7 @@ __deregister_frame_info_bases (void *begin)
struct object *ob = 0;
/* If .eh_frame is empty, we haven't registered. */
- if (*(uword *) begin == 0)
+ if ((uword *) begin == 0 || *(uword *) begin == 0)
return ob;
init_object_mutex_once ();