From: Michael Meissner Date: Wed, 8 Mar 1995 15:21:52 +0000 (+0000) Subject: Do not initialize the pointer variable __new_handler with an address. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8a552066c6da40dace18225bbffda66b5b9e3883;p=gcc.git Do not initialize the pointer variable __new_handler with an address. From-SVN: r9129 --- diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c index 39598efb038..6846dfc975b 100644 --- a/gcc/libgcc2.c +++ b/gcc/libgcc2.c @@ -1604,11 +1604,13 @@ __bb_init_func (struct bb *blocks) typedef void (*vfp)(void); extern vfp __new_handler; +extern void __default_new_handler (void); void * __builtin_new (size_t sz) { void *p; + vfp handler = (__new_handler) ? __new_handler : __default_new_handler; /* malloc (0) is unpredictable; avoid it. */ if (sz == 0) @@ -1616,7 +1618,7 @@ __builtin_new (size_t sz) p = (void *) malloc (sz); while (p == 0) { - (*__new_handler) (); + (*handler) (); p = (void *) malloc (sz); } @@ -1657,7 +1659,7 @@ __builtin_vec_new (size_t sz) typedef void (*vfp)(void); void __default_new_handler (void); -vfp __new_handler = __default_new_handler; +vfp __new_handler = (vfp)0; vfp set_new_handler (vfp handler)