[Openmcl-devel] possible bug in open-shared-library-internal

Artem Mironov artem.mironov at gmail.com
Tue Jun 21 13:22:05 UTC 2011


Hello

I've moved to trunk to test my project with fixed vector streams but
got unexpected error
in code which loads my shared library. The problem is that (pref map
:link_map.l_addr) returns
macptr and %INT-TO-PTR fails. Here is a fix. I run
1.7-dev-r14834M-trunk  (FreebsdX8664).

Index: level-0/l0-cfm-support.lisp
===================================================================
--- level-0/l0-cfm-support.lisp (revision 14834)
+++ level-0/l0-cfm-support.lisp (working copy)
@@ -351,8 +351,8 @@
        (%walk-shared-libraries
         #'(lambda (map)
              (let* ((addr (pref map :link_map.l_addr)))
-               (unless (or (eql addr 0)
-                           (shared-library-at (%int-to-ptr addr)))
+               (unless (or (%null-ptr-p addr)
+                           (shared-library-at addr))
                  (let* ((new (shlib-from-map-entry map)))
                    (%dlopen-shlib new))))))))))

-- 
Best Regards
Artem



More information about the Openmcl-devel mailing list