On Mon, Jun 02, 2003 at 06:49:15PM +0200, Rasmus Meldgaard wrote:
> I am reading up on libtools, but I can't understand what is the
> differs between: lt_dladdsearchdir(dir) and
> lt_dlinsertsearchdir(lt_dlgetsearchpath(), dir)
lt_dladdsearhdir: newpath=oldpath:dir
lt_dlinsertsearchdir: newpath=partofoldpath:dir:restofoldpath
in this particular case: newpath=dir:oldpath
Attached is a patch that does it the hard and bloated way if
CF_LTDL_ANCIENT is defined.
--
Tuomo
--- ../releases/ion-devel-20030602-1/ioncore/readconfig.c 2003-06-02
13:04:00.000000000 +0300
+++ ioncore/readconfig.c 2003-06-02 20:34:20.000000000 +0300
@@ -72,7 +72,28 @@
bool ioncore_add_moduledir(const char *dir)
{
+#ifndef CF_LTDL_ANCIENT
return (lt_dlinsertsearchdir(lt_dlgetsearchpath(), dir)==0);
+#else
+ const char *oldpath;
+ char *newpath;
+ bool ret;
+
+ oldpath=lt_dlgetsearchpath();
+ if(oldpath==NULL){
+ return (lt_dlsetsearchpath(dir)==0);
+ }else{
+ libtu_asprintf(&newpath, "%s:%s", dir, oldpath);
+ if(newpath==NULL){
+ warn_err();
+ return FALSE;
+ }else{
+ ret=(lt_dlsetsearchpath(newpath)==0);
+ free(newpath);
+ return ret;
+ }
+ }
+#endif
}