[Openmcl-cvs-notifications] r15271 - in /trunk/source: level-0/l0-cfm-support.lisp lisp-kernel/pmcl-kernel.c

gb at clozure.com gb at clozure.com
Fri Mar 23 17:55:24 CDT 2012


Author: gb
Date: Fri Mar 23 17:55:24 2012
New Revision: 15271

Log:
Android's #_dlopen() returns a pointer to an soinfo structure.
Deal with that in %REOPEN-USER-LIBRARIES; let xGetSharedLibrary call
dlopen().

Modified:
    trunk/source/level-0/l0-cfm-support.lisp
    trunk/source/lisp-kernel/pmcl-kernel.c

Modified: trunk/source/level-0/l0-cfm-support.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/level-0/l0-cfm-support.lisp (original)
+++ trunk/source/level-0/l0-cfm-support.lisp Fri Mar 23 17:55:24 2012
@@ -895,7 +895,11 @@
                        :address soname
                        :unsigned-fullword *dlopen-flags*
                        :address))
-                #-(or freebsd-target solaris-target) (setq map handle)
+                #-(or freebsd-target solaris-target android-target) (setq =
map handle)
+                #+android-target (setq map
+                                       (if (%null-ptr-p handle)
+                                         handle
+                                         (pref handle :soinfo.linkmap)))
                 #+(or freebsd-target solaris-target)
                 (setq map
                       (if (%null-ptr-p handle)

Modified: trunk/source/lisp-kernel/pmcl-kernel.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/lisp-kernel/pmcl-kernel.c (original)
+++ trunk/source/lisp-kernel/pmcl-kernel.c Fri Mar 23 17:55:24 2012
@@ -2153,12 +2153,7 @@
 void *
 xGetSharedLibrary(char *path, int mode)
 {
-#ifdef ANDROID
-  /* Hopefully temporary bug workaround */
-  return NULL;
-#else
   return dlopen(path, mode);
-#endif
 }
 #endif
 #else



More information about the Openmcl-cvs-notifications mailing list