[PATCH v2] Fix make-custom-port in case encoding is #f
"H." Müller <[email protected]> Sun, 02 Feb 2025 22:01:56 +0100
| Newsgroups | gmane.lisp.guile.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi Maxime,
Thanks for hint with the explanation. I'm still learning.
Below the second try.
Best Regards
Hannes
From 5eb06c5d22799170289ab55ab5a8eab45a98b390 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Hannes=20M=C3=BCller?= <>
Date: Sun, 2 Feb 2025 21:32:18 +0100
Subject: [PATCH v2] Fix make-custom-port in case encoding is #f
* module/ice-9/custom-ports.scm (make-custom-port): Code fails if
(fluid-ref %default-port-encoding) returns #f. In fact this was the
case why readline support on MSYS2 failed for guile 3.0.10, ref.
https://github.com/msys2/MSYS2-packages/issues/5079
But later used canonicalize-encoding is prepared to handle #f for
encoding. So allow encoding to also handle this case.
---
module/ice-9/custom-ports.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/module/ice-9/custom-ports.scm b/module/ice-9/custom-ports.scm
index 6010fd94f..c4376db7b 100644
--- a/module/ice-9/custom-ports.scm
+++ b/module/ice-9/custom-ports.scm
@@ -127,7 +127,7 @@
(id "custom-port")
(print (make-default-print #:id id))
(truncate default-truncate)
- (encoding (string->symbol (fluid-ref %default-port-encoding)))
+ (encoding (and=> (fluid-ref %default-port-encoding) string->symbol))
(conversion-strategy (fluid-ref %default-port-conversion-strategy))
(close-on-gc? #f))
"Create a custom port whose behavior is determined by the methods passed
--
2.39.5