summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Cameron <Brian.Cameron@sun.com>2009-04-29 18:52:32 -0500
committerBrian Cameron <Brian.Cameron@sun.com>2009-04-29 18:52:32 -0500
commit33f4ead50679294ce6eed04cd014ece44401d626 (patch)
treefa69aadd67afb3826c0dc9ccf0b372acd93fd56f
parentdae20e256132e4431535e08bac1b1a81febd7e12 (diff)
downloadgdk-pixbuf-33f4ead50679294ce6eed04cd014ece44401d626.tar.gz
Minor fix for GTK+ mediaLib code.
After doing some performance analysis, it was found that the GTK+ mediaLib code triggers unnecessary lazy loading of dependent libraries. The current code uses RTLD_DEFAULT, RTLD_PROBE, RTLD_NEXT, and RTLD_SELF. However, RTLD_PROBE is all that is necessary, and avoids triggering the lazy loading. So this commit fixes the code to just use RTLD_PROBE. (Bug 580678)
-rw-r--r--gdk-pixbuf/pixops/pixops.c5
-rw-r--r--gdk/gdkmedialib.c5
2 files changed, 2 insertions, 8 deletions
diff --git a/gdk-pixbuf/pixops/pixops.c b/gdk-pixbuf/pixops/pixops.c
index 3d01edaf2..513d16fc8 100644
--- a/gdk-pixbuf/pixops/pixops.c
+++ b/gdk-pixbuf/pixops/pixops.c
@@ -217,10 +217,7 @@ _pixops_use_medialib ()
* For x86 processors use of libumem conflicts with
* mediaLib, so avoid using it.
*/
- if ((dlsym (RTLD_DEFAULT, "umem_alloc") != NULL) ||
- (dlsym (RTLD_PROBE, "umem_alloc") != NULL) ||
- (dlsym (RTLD_NEXT, "umem_alloc") != NULL) ||
- (dlsym (RTLD_SELF, "umem_alloc") != NULL))
+ if (dlsym (RTLD_PROBE, "umem_alloc") != NULL)
{
use_medialib = FALSE;
return;
diff --git a/gdk/gdkmedialib.c b/gdk/gdkmedialib.c
index 0a2301208..effb89dd8 100644
--- a/gdk/gdkmedialib.c
+++ b/gdk/gdkmedialib.c
@@ -104,10 +104,7 @@ _gdk_use_medialib (void)
* For x86 processors use of libumem conflicts with
* mediaLib, so avoid using it.
*/
- if ((dlsym (RTLD_DEFAULT, "umem_alloc") != NULL) ||
- (dlsym (RTLD_PROBE, "umem_alloc") != NULL) ||
- (dlsym (RTLD_NEXT, "umem_alloc") != NULL) ||
- (dlsym (RTLD_SELF, "umem_alloc") != NULL))
+ if (dlsym (RTLD_PROBE, "umem_alloc") != NULL)
{
return FALSE;
}