From 4bbfd80236161221c3271734cea742f11b25e334 Mon Sep 17 00:00:00 2001
From: Raymond Toy <toy.raymond@gmail.com>
Date: Sat, 26 May 2012 08:24:55 -0700
Subject: [PATCH] Debugger needs to open file with the appropriate external
 format. Patch from Douglas.

---
 src/code/debug-int.lisp | 6 ++++--
 src/code/debug.lisp     | 3 ++-
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/code/debug-int.lisp b/src/code/debug-int.lisp
index a3a3dfb57..014382ee9 100644
--- a/src/code/debug-int.lisp
+++ b/src/code/debug-int.lisp
@@ -4943,8 +4943,10 @@ The result is a symbol or nil if the routine cannot be found."
 		 (aref (or (debug-source-start-positions d-source)
 			   (error (intl:gettext "Cannot set breakpoints for editor when ~
 				   there is no start positions map.")))
-		       local-tlf-offset)))
-	   (with-open-file (f name)
+		       local-tlf-offset))
+		(external-format (or (c::debug-source-info d-source)
+				     ext:*default-source-external-format*)))
+	   (with-open-file (f name :external-format external-format)
 	     (cond
 	      ((= (debug-source-created d-source) (file-write-date name))
 	       (file-position f char-offset))
diff --git a/src/code/debug.lisp b/src/code/debug.lisp
index 825ed0b6b..62bf9866f 100644
--- a/src/code/debug.lisp
+++ b/src/code/debug.lisp
@@ -1486,7 +1486,8 @@ See the CMU Common Lisp User's Manual for more information.
 	(when *cached-source-stream* (close *cached-source-stream*))
 	(setq *cached-source-stream*
 	      (open name :if-does-not-exist nil
-		    :external-format (or (c::debug-source-info d-source) :default)))
+		    :external-format (or (c::debug-source-info d-source)
+					 ext:*default-source-external-format*)))
 	(unless *cached-source-stream*
 	  (error (intl:gettext "Source file no longer exists:~%  ~A.") (namestring name)))
 	(format t (intl:gettext "~%; File: ~A~%") (namestring name)))
-- 
GitLab