From 61d109a6e5794cf393d1f9d5bebda10f8efce902 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Tue, 25 Dec 2012 21:50:14 -0600 Subject: Fix engine loading portability Use GModule APIs for determining engine filenames. Also, link with the -no-undefined flag, required on PE platforms. --- src/daemon/engines.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'src/daemon/engines.c') diff --git a/src/daemon/engines.c b/src/daemon/engines.c index 23a2ade..2217f28 100644 --- a/src/daemon/engines.c +++ b/src/daemon/engines.c @@ -56,12 +56,9 @@ static ThemeEngine* active_engine = NULL; static ThemeEngine* load_theme_engine(const char *name) { ThemeEngine* engine; - char* filename; char* path; - filename = g_strdup_printf("lib%s.so", name); - path = g_build_filename(ENGINES_DIR, filename, NULL); - g_free (filename); + path = g_module_build_path (ENGINES_DIR, name); engine = g_new0(ThemeEngine, 1); engine->ref_count = 1; @@ -113,7 +110,7 @@ static ThemeEngine* load_theme_engine(const char *name) if (engine->module != NULL && !g_module_close (engine->module)) { - g_warning("%s: %s", filename, g_module_error()); + g_warning("%s: %s", name, g_module_error()); } g_free(engine); -- cgit v1.2.1