From 6fb3b96af833ea328b3e13a2f3d21a5b8d76769a Mon Sep 17 00:00:00 2001
From: rtoy <rtoy>
Date: Thu, 7 Jul 2005 14:45:37 +0000
Subject: [PATCH] Revert previous change so we don't call truename on the given
 file. However, for logical pathnames, call translate-logical-pathname to get
 a usable pathname that dlopen can understand.

---
 code/foreign.lisp | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/code/foreign.lisp b/code/foreign.lisp
index 4ae9f3796..e6bafcd93 100644
--- a/code/foreign.lisp
+++ b/code/foreign.lisp
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/foreign.lisp,v 1.51 2005/06/20 16:22:49 rtoy Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/foreign.lisp,v 1.52 2005/07/07 14:45:37 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -659,7 +659,9 @@ to skip undefined symbols which don't have an address."
   (ensure-lisp-table-opened)
   ; rtld global: so it can find all the symbols previously loaded
   ; rtld now: that way dlopen will fail if not all symbols are defined.
-  (let* ((filename (namestring (truename file)))
+  (let* ((filename (namestring (if (lisp::logical-pathname-p (pathname file))
+				   (translate-logical-pathname file)
+				   file)))
 	 (sap (dlopen filename (logior rtld-now rtld-global))))
     (cond ((zerop (sap-int sap))
 	   (let ((err-string (dlerror))
-- 
GitLab