2009-05-14 Erwann Chenede - <[email protected]>
authorerwannc
Thu, 14 May 2009 16:01:56 +0000
changeset 15766 4015b1e83531
parent 15765 d43128c94c21
child 15767 23f35822a204
2009-05-14 Erwann Chenede - <[email protected]> * patches/glib-02-gmodule-always-lazy.diff: added RTLD_FIRST in dlopen * patches/glib-03-trusted-extensions.diff: ported in light of the patch above
ChangeLog
patches/glib-02-gmodule-always-lazy.diff
patches/glib-03-trusted-extensions.diff
--- a/ChangeLog	Thu May 14 13:07:11 2009 +0000
+++ b/ChangeLog	Thu May 14 16:01:56 2009 +0000
@@ -1,3 +1,8 @@
+2009-05-14 Erwann Chenede - <[email protected]>
+
+	* patches/glib-02-gmodule-always-lazy.diff: added RTLD_FIRST in dlopen 
+	* patches/glib-03-trusted-extensions.diff: ported in light of the patch above
+
 2009-05-14  Matt Keenan <[email protected]>
 
 	* SUNWgnutls.spec : Fix d.o.o. : 8876, ON bits being built on nevada builds
--- a/patches/glib-02-gmodule-always-lazy.diff	Thu May 14 13:07:11 2009 +0000
+++ b/patches/glib-02-gmodule-always-lazy.diff	Thu May 14 16:01:56 2009 +0000
@@ -1,7 +1,7 @@
-diff -Nrup glib-2.13.1/gmodule/gmodule-dl.c ../SUNWgnome-base-libs-2.16.1-patch04/glib-2.13.1/gmodule/gmodule-dl.c
---- glib-2.13.1/gmodule/gmodule-dl.c	2004-02-20 02:41:00.000000000 +0100
-+++ ../SUNWgnome-base-libs-2.16.1-patch04/glib-2.13.1/gmodule/gmodule-dl.c	2006-10-12 10:43:14.442137000 +0200
-@@ -94,6 +94,12 @@
+diff -rup ../i386/glib-2.20.1/gmodule/gmodule-dl.c glib-2.20.1/gmodule/gmodule-dl.c
+--- ../i386/glib-2.20.1/gmodule/gmodule-dl.c	2009-04-01 01:04:20.000000000 +0200
++++ glib-2.20.1/gmodule/gmodule-dl.c	2009-05-14 16:39:16.692377272 +0200
+@@ -95,9 +95,15 @@ _g_module_open (const gchar *file_name,
  		gboolean     bind_local)
  {
    gpointer handle;
@@ -13,4 +13,17 @@
 +  #endif
    
    handle = dlopen (file_name,
- 		   (bind_local ? 0 : RTLD_GLOBAL) | (bind_lazy ? RTLD_LAZY : RTLD_NOW));
+-		   (bind_local ? 0 : RTLD_GLOBAL) | (bind_lazy ? RTLD_LAZY : RTLD_NOW));
++		   (bind_local ? 0 : RTLD_GLOBAL) | (bind_lazy ? RTLD_LAZY | RTLD_FIRST: RTLD_NOW));
+   if (!handle)
+     g_module_set_error (fetch_dlerror (TRUE));
+   
+@@ -113,7 +119,7 @@ _g_module_self (void)
+    * are required on some systems.
+    */
+   
+-  handle = dlopen (NULL, RTLD_GLOBAL | RTLD_LAZY);
++  handle = dlopen (NULL, RTLD_GLOBAL | RTLD_LAZY | RTLD_FIRST);
+   if (!handle)
+     g_module_set_error (fetch_dlerror (TRUE));
+   
--- a/patches/glib-03-trusted-extensions.diff	Thu May 14 13:07:11 2009 +0000
+++ b/patches/glib-03-trusted-extensions.diff	Thu May 14 16:01:56 2009 +0000
@@ -1,6 +1,6 @@
-diff -urN glib.orig/gmodule/gmodule-dl.c glib.new/gmodule/gmodule-dl.c
---- glib.orig/gmodule/gmodule-dl.c	2006-11-01 15:24:13.863431000 +0000
-+++ glib.new/gmodule/gmodule-dl.c	2006-11-01 15:30:45.508553000 +0000
+diff -rup ../i386/glib-2.20.1/gmodule/gmodule-dl.c glib-2.20.1/gmodule/gmodule-dl.c
+--- ../i386/glib-2.20.1/gmodule/gmodule-dl.c	2009-05-14 16:42:09.667625600 +0200
++++ glib-2.20.1/gmodule/gmodule-dl.c	2009-05-14 16:42:41.085074835 +0200
 @@ -30,6 +30,8 @@
  #include "config.h"
  
@@ -10,7 +10,7 @@
  
  /* Perl includes <nlist.h> and <link.h> instead of <dlfcn.h> on some systmes? */
  
-@@ -88,6 +90,22 @@
+@@ -89,6 +91,22 @@ fetch_dlerror (gboolean replace_null)
    return msg;
  }
  
@@ -33,7 +33,7 @@
  static gpointer
  _g_module_open (const gchar *file_name,
  		gboolean     bind_lazy,
-@@ -118,7 +118,46 @@
+@@ -101,7 +119,46 @@ _g_module_open (const gchar *file_name,
       performed immediately in all dynamic dependencies */
    bind_lazy = 1;
    #endif
@@ -79,5 +79,5 @@
 +  }
 +
    handle = dlopen (file_name,
- 		   (bind_local ? 0 : RTLD_GLOBAL) | (bind_lazy ? RTLD_LAZY : RTLD_NOW));
+ 		   (bind_local ? 0 : RTLD_GLOBAL) | (bind_lazy ? RTLD_LAZY | RTLD_FIRST: RTLD_NOW));
    if (!handle)