summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2016-11-25 21:02:03 -0800
committerKaz Kylheku <kaz@kylheku.com>2016-11-25 21:02:03 -0800
commitddcc44152f913ec34b866c68a9080e6a35d38b00 (patch)
tree7e7590ee368bb8aa623bfb13d8fc1eb512d1236f /share
parenta5706bba994d356fb4b0a3a01a789d8b06e76713 (diff)
downloadtxr-ddcc44152f913ec34b866c68a9080e6a35d38b00.tar.gz
txr-ddcc44152f913ec34b866c68a9080e6a35d38b00.tar.bz2
txr-ddcc44152f913ec34b866c68a9080e6a35d38b00.zip
bugfix: unbound var in IP-slash-notation functions.
* share/txr/stdlib/socket.tl (sys:str-inaddr-net-impl): Use let* so that calculation of we can see dependent w variable.
Diffstat (limited to 'share')
-rw-r--r--share/txr/stdlib/socket.tl12
1 files changed, 6 insertions, 6 deletions
diff --git a/share/txr/stdlib/socket.tl b/share/txr/stdlib/socket.tl
index 45a9cc73..24b2af3f 100644
--- a/share/txr/stdlib/socket.tl
+++ b/share/txr/stdlib/socket.tl
@@ -101,12 +101,12 @@
(set mask (logior mask (ash mask 4)))
(set mask (logior mask (ash mask 8)))
(set mask (logior mask (ash mask 16)))
- (let ((w (- 32 (width (lognot mask 32))))
- (d (logand addr #xFF))
- (c (logand (ash addr -8) #xFF))
- (b (logand (ash addr -16) #xFF))
- (a (ash addr -24))
- (we (or weff (+ w wextra))))
+ (let* ((w (- 32 (width (lognot mask 32))))
+ (d (logand addr #xFF))
+ (c (logand (ash addr -8) #xFF))
+ (b (logand (ash addr -16) #xFF))
+ (a (ash addr -24))
+ (we (or weff (+ w wextra))))
(cond
((or (> a 255) (minusp a))
(throwf 'eval-error "str-inaddr-net: ~a out of range for IPv4 address"