Mailinglist Archive: opensuse-bugs (3543 mails)

< Previous Next >
[Bug 717671] Segmentation fault happened in libc-2.14 for q3ademo

https://bugzilla.novell.com/show_bug.cgi?id=717671

https://bugzilla.novell.com/show_bug.cgi?id=717671#c27


Andreas Jaeger <aj@xxxxxxxx> changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|NEEDINFO |RESOLVED
InfoProvider|matz@xxxxxxxx |
Resolution| |FIXED

--- Comment #27 from Andreas Jaeger <aj@xxxxxxxx> 2011-09-27 11:40:24 UTC ---
Here's a working fix, I'll submit a new glibc now to Factory.

Richard, Michael thanks a lot for the debugging help.

diff --git a/elf/soinit.c b/elf/soinit.c
index 7139830..be25284 100644
--- a/elf/soinit.c
+++ b/elf/soinit.c
@@ -25,8 +25,10 @@ run_hooks (void (*const list[]) (void))
void
__libc_global_ctors (void)
{
+ void (**tem)();
+ asm ("" : "=r" (tem) : "0" (__CTOR_LIST__));
/* Call constructor functions. */
- run_hooks (__CTOR_LIST__);
+ run_hooks (tem);
}


@@ -35,8 +37,10 @@ __libc_global_ctors (void)
void
__libc_fini (void)
{
+ void (**tem)();
+ asm ("" : "=r" (tem) : "0" (__DTOR_LIST__));
/* Call destructor functions. */
- run_hooks (__DTOR_LIST__);
+ run_hooks (tem);
}

--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

< Previous Next >
References