Fix kstartperf failure

This closes Bug 854
(cherry picked from commit 1de68cb32e)
v3.5.13-sru
Timothy Pearson 13 years ago committed by Slávek Banko
parent 2c3c4ccec7
commit 6c9da07cca

@ -1,8 +1,7 @@
INCLUDES = $(all_includes) INCLUDES = $(all_includes)
lib_LTLIBRARIES = libkstartperf.la lib_LTLIBRARIES = libkstartperf.la
libkstartperf_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_KDECORE) $(LIB_KDEUI) -lkdefx $(LIB_KIO) -version-info 1:0 -no-undefined libkstartperf_la_LDFLAGS = $(all_libraries) $(KDE_RPATH) $(LIB_QT) -lDCOP $(LIB_KDECORE) $(LIB_KDEUI) -lkdefx $(LIB_KIO) -ldl -version-info 1:0 -no-undefined
# libkstartperf_la_LIBADD = ../libltdl/libltdlc.la
libkstartperf_la_SOURCES = libkstartperf.c libkstartperf_la_SOURCES = libkstartperf.c
bin_PROGRAMS = kstartperf bin_PROGRAMS = kstartperf

@ -2,7 +2,7 @@
* *
* $Id$ * $Id$
* *
* This file is part of the KDE project, module kstartperf. * This file is part of the TDE project, module kstartperf.
* Copyright (C) 2000 Geert Jansen <jansen@kde.org> * Copyright (C) 2000 Geert Jansen <jansen@kde.org>
* *
* You can freely redistribute this program under the "Artistic License". * You can freely redistribute this program under the "Artistic License".

@ -23,8 +23,7 @@
#include <X11/X.h> #include <X11/X.h>
#include <X11/Xlib.h> #include <X11/Xlib.h>
#include <ltdl.h> #include <dlfcn.h>
/* Prototypes */ /* Prototypes */
@ -64,26 +63,28 @@ int XMapRaised(Display * d, Window w)
void KDE_InterceptXMapRequest(Display * d, Window w) void KDE_InterceptXMapRequest(Display * d, Window w)
{ {
lt_dlhandle handle; void * handle;
handle = lt_dlopen("libX11.so"); handle = dlopen("libX11.so", (RTLD_LAZY | RTLD_GLOBAL));
if (handle == 0L) if (handle == 0L)
handle = lt_dlopen("libX11.so.6"); handle = dlopen("libX11.so.6", (RTLD_LAZY | RTLD_GLOBAL));
if (handle == 0L) if (handle == 0L)
{ {
fprintf(stderr, "kstartperf: Could not dlopen libX11\n"); const char * ltdlError = dlerror();
fprintf(stderr, "kstartperf: Could not dlopen libX11: %s\n", ltdlError);
exit(1); exit(1);
} }
KDE_RealXMapWindow = (KDE_XMapRequestSignature)lt_dlsym(handle, "XMapWindow"); KDE_RealXMapWindow = (KDE_XMapRequestSignature)dlsym(handle, "XMapWindow");
if (KDE_RealXMapWindow == 0L) if (KDE_RealXMapWindow == 0L)
{ {
fprintf(stderr, "kstartperf: Could not find symbol XMapWindow in libX11\n"); fprintf(stderr, "kstartperf: Could not find symbol XMapWindow in libX11\n");
exit(1); exit(1);
} }
KDE_RealXMapRaised = (KDE_XMapRequestSignature)lt_dlsym(handle, "XMapRaised"); KDE_RealXMapRaised = (KDE_XMapRequestSignature)dlsym(handle, "XMapRaised");
if (KDE_RealXMapRaised == 0L) if (KDE_RealXMapRaised == 0L)
{ {
fprintf(stderr, "kstartperf: Could not find symbol XMapRaised in libX11\n"); fprintf(stderr, "kstartperf: Could not find symbol XMapRaised in libX11\n");

Loading…
Cancel
Save