SOURCES: mpg123-no-la.patch - open module using full path, without...
qboosh
qboosh at pld-linux.org
Thu Jan 24 16:45:15 CET 2008
Author: qboosh Date: Thu Jan 24 15:45:15 2008 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- open module using full path, without chdir() and requiring any rpath
---- Files affected:
SOURCES:
mpg123-no-la.patch (1.1 -> 1.2)
---- Diffs:
================================================================
Index: SOURCES/mpg123-no-la.patch
diff -u SOURCES/mpg123-no-la.patch:1.1 SOURCES/mpg123-no-la.patch:1.2
--- SOURCES/mpg123-no-la.patch:1.1 Thu Jan 24 00:42:35 2008
+++ SOURCES/mpg123-no-la.patch Thu Jan 24 16:45:10 2008
@@ -9,3 +9,54 @@
#define MODULE_SYMBOL_PREFIX "mpg123_"
#define MODULE_SYMBOL_SUFFIX "_module_info"
+@@ -77,12 +77,10 @@
+ size_t module_symbol_len = 0;
+ char *workdir = NULL;
+ char *moddir = NULL;
+- workdir = get_the_cwd();
+ moddir = get_module_dir();
+- if(workdir == NULL || moddir == NULL)
++ if(moddir == NULL)
+ {
+- error("Failure getting workdir or moddir!");
+- if(workdir != NULL) free(workdir);
++ error("Failure getting moddir!");
+ if(moddir != NULL) free(moddir);
+ return NULL;
+ }
+@@ -75,7 +75,6 @@
+ size_t module_path_len = 0;
+ char* module_symbol = NULL;
+ size_t module_symbol_len = 0;
+- char *workdir = NULL;
+ char *moddir = NULL;
+ moddir = get_module_dir();
+ if(moddir == NULL)
+@@ -90,15 +87,14 @@
+ /* Initialize libltdl */
+ if (lt_dlinit()) error( "Failed to initialise libltdl" );
+
+- chdir(moddir);
+ /* Work out the path of the module to open */
+- module_path_len = strlen(type) + 1 + strlen(name) + strlen(MODULE_FILE_SUFFIX) + 1;
++ module_path_len = strlen(moddir) + 1 + strlen(type) + 1 + strlen(name) + strlen(MODULE_FILE_SUFFIX) + 1;
+ module_path = malloc( module_path_len );
+ if (module_path == NULL) {
+ error1( "Failed to allocate memory for module name: %s", strerror(errno) );
+ goto om_bad;
+ }
+- snprintf( module_path, module_path_len, "%s_%s%s", type, name, MODULE_FILE_SUFFIX );
++ snprintf( module_path, module_path_len, "%s/%s_%s%s", moddir, type, name, MODULE_FILE_SUFFIX );
+ /* Display the path of the module created */
+ debug1( "Module path: %s", module_path );
+
+@@ -144,9 +140,7 @@
+ om_bad:
+ module = NULL;
+ om_end:
+- chdir(workdir);
+ free(moddir);
+- free(workdir);
+ return module;
+ }
+
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/mpg123-no-la.patch?r1=1.1&r2=1.2&f=u
More information about the pld-cvs-commit
mailing list