Blob Blame Raw
Description: <short summary of the patch>
 TODO: Put a short summary on the line above and replace this paragraph
 with a longer explanation of this change. Complete the meta-information
 with other relevant fields (see below for details). To make it easier, the
 information below has been extracted from the changelog. Adjust it or drop
 gcl (2.6.12-46) unstable; urgency=high
   * pathnames1.12
   * Bug fix: "maintainer script(s) do not start on #!", thanks to</a>; (Closes: #843303).
Author: Camm Maguire <>

The information above should follow the Patch Tagging Guidelines, please
checkout to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: <vendor|upstream|other>, <url of original patch>
Bug: <url in upstream bugtracker>
Forwarded: <no|not-needed|url proving that it has been forwarded>
Reviewed-By: <name and email of someone who approved the patch>
Last-Update: 2016-11-18

--- gcl-2.6.12.orig/lsp/gcl_iolib.lsp
+++ gcl-2.6.12/lsp/gcl_iolib.lsp
@@ -457,11 +457,10 @@
 		      if-exists iesp if-does-not-exist idnesp external-format)))
     (when (typep s 'stream) (c-set-stream-object1 s pf) s)))
-(defun load-pathname-exists (z &aux (z (link-expand (namestring z))))
-  (cond ((eq (stat z) :file) z)
-	(*allow-gzipped-file*
-	 (when (eq (stat (string-concatenate (namestring z) ".gz")) :file)
-	  z))))
+(defun load-pathname-exists (z)
+  (or (probe-file z)
+      (when *allow-gzipped-file*
+	(probe-file (string-concatenate (namestring z) ".gz")))))
 (defun load-pathname (p print if-does-not-exist external-format
 			&aux (pp (merge-pathnames p))
--- gcl-2.6.12.orig/lsp/gcl_listlib.lsp
+++ gcl-2.6.12/lsp/gcl_listlib.lsp
@@ -123,8 +123,8 @@
 (defun smallnthcdr (n x)
   (declare (fixnum n))
-  (cond ((atom x) (when x (tp-error x proper-list)))
-	((= n 0) x)
+  (cond ((= n 0) x)
+	((atom x) (when x (tp-error x proper-list)))
 	((smallnthcdr (1- n) (cdr x)))))
 (defun bignthcdr (n i s f) 
--- gcl-2.6.12.orig/lsp/gcl_truename.lsp
+++ gcl-2.6.12/lsp/gcl_truename.lsp
@@ -38,5 +38,5 @@
   (check-type pd pathname-designator)
   (when (wild-pathname-p pn)
     (error 'file-error :pathname pn :format-control "Pathname is wild"))
-  (when (eq (stat (namestring pn)) :file)
+  (when (eq (stat (link-expand (namestring pn))) :file)
     (truename pn)))