emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master 29a7d73: * src/fns.c (hashfn_user_defined): Make su


From: Stefan Monnier
Subject: [Emacs-diffs] master 29a7d73: * src/fns.c (hashfn_user_defined): Make sure we always return a fixnum.
Date: Tue, 23 Jul 2019 08:29:26 -0400 (EDT)

branch: master
commit 29a7d73d195761e8309a4fe23872888758436d1e
Author: Stefan Monnier <address@hidden>
Commit: Stefan Monnier <address@hidden>

    * src/fns.c (hashfn_user_defined): Make sure we always return a fixnum.
---
 src/fns.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/fns.c b/src/fns.c
index d28d437..f4f3b95 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -4023,7 +4023,7 @@ hashfn_user_defined (Lisp_Object key, struct 
Lisp_Hash_Table *h)
 {
   Lisp_Object args[] = { h->test.user_hash_function, key };
   Lisp_Object hash = hash_table_user_defined_call (ARRAYELTS (args), args, h);
-  return BIGNUMP (hash) ? make_fixnum (sxhash_bignum (XBIGNUM (hash))) : hash;
+  return FIXNUMP (hash) ? hash : make_fixnum (sxhash (hash, 0));
 }
 
 struct hash_table_test const



reply via email to

[Prev in Thread] Current Thread [Next in Thread]