bug#41131: Bug in hash-table-merge! (and patch)

"Ricardo G. Herdt" <[email protected]>
Newsgroups gmane.lisp.guile.bugs
Message-ID <[email protected]>
Hi,

I just found this bug in the hash-table-merge! function 
(modul/srfi/srfi-69.scm). Instead of merging both hash tables, it was 
ignoring one of them (other-ht). Attached is the fix, where it now folds 
over other-ht and store its data in ht.

Cheers,

Ricardo G. Herdt
0001-Fix-hash-table-merge-bug.patch (text/x-diff, 831 B)
From 180a9e14b807295aa31966a52bfd732647458ef9 Mon Sep 17 00:00:00 2001
From: "Ricardo G. Herdt" <[email protected]>
Date: Fri, 8 May 2020 01:37:24 +0200
Subject: [PATCH] Fix hash-table-merge! bug.

* module/srfi/srfi-69.scm : fold over second hash table.
---
 module/srfi/srfi-69.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/module/srfi/srfi-69.scm b/module/srfi/srfi-69.scm
index b9486c465..91bcc77db 100644
--- a/module/srfi/srfi-69.scm
+++ b/module/srfi/srfi-69.scm
@@ -330,7 +330,7 @@ Answer the final F result."
   "Add all key/value pairs from OTHER-HT to HT, overriding HT's
 mappings where present.  Return HT."
   (hash-table-fold
-   ht (lambda (k v ign) (hash-table-set! ht k v)) #f)
+   other-ht (lambda (k v ign) (hash-table-set! ht k v)) #f)
   ht)
 
 ;;; srfi-69.scm ends here
-- 
2.20.1
Changelog (text/plain, 170 B)
2020-05-08 Ricardo G. Herdt <[email protected]>

* srfi-69.scm: hash-table-merge! was ignoring the second hash table.
Fold over other-ht, and store its key-values in ht.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.