* elf/dl-error.c (_dl_signal_error): Use __longjmp instead of longjmp.
authorUlrich Drepper <drepper@redhat.com>
Sat, 17 Dec 2005 23:09:41 +0000 (23:09 +0000)
committerUlrich Drepper <drepper@redhat.com>
Sat, 17 Dec 2005 23:09:41 +0000 (23:09 +0000)
* elf/dl-minimal.c (longjmp): Remove definition.

ChangeLog
elf/dl-error.c
elf/dl-minimal.c

index 9de0e4c..2d61341 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2005-12-17  Ulrich Drepper  <drepper@redhat.com>
 
+       * elf/dl-error.c (_dl_signal_error): Use __longjmp instead of longjmp.
+       * elf/dl-minimal.c (longjmp): Remove definition.
+
        * sysdeps/x86_64/bsd-setjmp.S [PIC] (setjmp): Add missing jmp.
 
 2005-12-14  Thorsten Kukuk  <kukuk@suse.de>
index 3a0d9bb..be9209d 100644 (file)
@@ -112,7 +112,8 @@ _dl_signal_error (int errcode, const char *objname, const char *occation,
          lcatch->errstring = _dl_out_of_memory;
          lcatch->malloced = false;
        }
-      longjmp (lcatch->env, errcode ?: -1);
+      /* We do not restore the signal mask because none was saved.  */
+      __longjmp (lcatch->env, errcode ?: -1);
     }
   else
     {
index adb85e6..868d3bd 100644 (file)
@@ -1,5 +1,5 @@
 /* Minimal replacements for basic facilities used in the dynamic linker.
-   Copyright (C) 1995-1998,2000-2002,2004 Free Software Foundation, Inc.
+   Copyright (C) 1995-1998,2000-2002,2004,2005 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -148,12 +148,6 @@ __sigjmp_save (sigjmp_buf env, int savemask __attribute__ ((unused)))
   env[0].__mask_was_saved = 0;
   return 0;
 }
-
-void weak_function
-longjmp (jmp_buf env, int val)
-{
-  __longjmp (env[0].__jmpbuf, val);
-}
 \f
 /* Define our own version of the internal function used by strerror.  We
    only provide the messages for some common errors.  This avoids pulling