Changeset 14575
- Timestamp:
- Jan 11, 2011, 7:31:12 AM (14 years ago)
- File:
-
- 1 edited
-
trunk/source/level-0/l0-cfm-support.lisp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/level-0/l0-cfm-support.lisp
r14566 r14575 316 316 (defun open-shared-library-internal (name) 317 317 (let* ((handle (with-cstrs ((name name)) 318 (ff-call319 (%kernel-import target::kernel-import-GetSharedLibrary)320 :address name321 :unsigned-fullword *dlopen-flags*322 :address)))318 (ff-call 319 (%kernel-import target::kernel-import-GetSharedLibrary) 320 :address name 321 :unsigned-fullword *dlopen-flags* 322 :address))) 323 323 (link-map #+(and linux-target (not android-target)) handle 324 324 #+(or freebsd-target solaris-target) … … 334 334 (pref p :address) 335 335 (%null-ptr)))) 336 #+android-target (pref handle :soinfo.linkmap))) 336 #+android-target (if (%null-ptr-p handle) 337 handle 338 (pref handle :soinfo.linkmap)))) 337 339 (if (%null-ptr-p link-map) 338 340 (values nil (dlerror)) … … 343 345 (%walk-shared-libraries 344 346 #'(lambda (map) 345 (unless (shared-library-at 346 (%int-to-ptr (pref map :link_map.l_addr))) 347 (let* ((new (shlib-from-map-entry map))) 348 (%dlopen-shlib new))))))))) 347 (let* ((addr (pref map :link_map.l_addr))) 348 (unless (or (eql addr 0) 349 (shared-library-at (%int-to-ptr addr))) 350 (let* ((new (shlib-from-map-entry map))) 351 (%dlopen-shlib new)))))))))) 349 352 350 353 )
Note:
See TracChangeset
for help on using the changeset viewer.
