aboutsummaryrefslogtreecommitdiffstats
path: root/geoip/ip.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'geoip/ip.lisp')
-rw-r--r--geoip/ip.lisp8
1 files changed, 4 insertions, 4 deletions
diff --git a/geoip/ip.lisp b/geoip/ip.lisp
index 3e3790e..31149f4 100644
--- a/geoip/ip.lisp
+++ b/geoip/ip.lisp
@@ -191,9 +191,8 @@
(with-slots (ptr data-offset node-count) mmdb
(alexandria:when-let* ((record (record-value mmdb ip-bits))
(offset (+ data-offset (- record node-count 16))))
- (mread-data
- (make-db-reader :db-ptr (inc-pointer ptr offset)
- :head-ptr ptr :data-offset data-offset)))))
+ (make-db-reader :db-ptr (inc-pointer ptr offset)
+ :head-ptr ptr :data-offset data-offset))))
(defun integer-to-bits (n bit-count)
"Convert integer to list of bits (MSB first)"
@@ -205,7 +204,8 @@
(with-slots (ip-version) mmdb
(when (and (= ip-version 4) (= ip-v 6))
(error "Can't query IPv6 address in IPv4 database"))
- (lookup-ip-bits mmdb (integer-to-bits ip-val (if (= ip-version 4) 32 128))))))
+ (alexandria:when-let ((reader (lookup-ip-bits mmdb (integer-to-bits ip-val (if (= ip-version 4) 32 128)))))
+ (mread-data reader)))))
(defun mmap->mmdb (file ptr fd size)
(let* ((metadata-start (find-metadata-start ptr size))