diff options
Diffstat (limited to 'dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-1874.patch')
-rw-r--r-- | dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-1874.patch | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-1874.patch b/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-1874.patch new file mode 100644 index 000000000000..599ae61d322f --- /dev/null +++ b/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-1874.patch @@ -0,0 +1,25 @@ +From http://lists.nongnu.org/archive/html/chicken-hackers/2013-03/msg00074.html +--- chicken-4.8.0.3/csi.scm ++++ chicken-4.8.0.3/csi.scm +@@ -1019,13 +1019,11 @@ EOF + (cons (cadr p) (loop (cddr p)))) ) ] + [else '()] ) ) ) + (define (loadinit) +- (let ([fn (##sys#string-append "./" init-file)]) +- (if (file-exists? fn) +- (load fn) +- (let* ([prefix (chop-separator (or (get-environment-variable "HOME") "."))] +- [fn (string-append prefix "/" init-file)] ) +- (when (file-exists? fn) +- (load fn) ) ) ) ) ) ++ (and-let* ((home (get-environment-variable "HOME")) ++ ((not (string=? home "")))) ++ (let ((fn (string-append (chop-separator home) "/" init-file))) ++ (when (file-exists? fn) ++ (load fn) ) ) ) ) + (define (evalstring str #!optional (rec (lambda _ (void)))) + (let ((in (open-input-string str))) + (do ([x (read in) (read in)]) +-- +1.7.12 + |