summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/emacs-module.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/src/emacs-module.c b/src/emacs-module.c
index 7e0ba3c16c1..ad6c8fb0104 100644
--- a/src/emacs-module.c
+++ b/src/emacs-module.c
@@ -315,18 +315,13 @@ module_free_global_ref (emacs_env *env, emacs_value ref)
MODULE_FUNCTION_BEGIN ();
struct Lisp_Hash_Table *h = XHASH_TABLE (Vmodule_refs_hash);
Lisp_Object obj = value_to_lisp (ref);
- EMACS_UINT hashcode;
- ptrdiff_t i = hash_lookup (h, obj, &hashcode);
+ ptrdiff_t i = hash_lookup (h, obj, NULL);
if (i >= 0)
{
- Lisp_Object value = HASH_VALUE (h, i);
- EMACS_INT refcount = XFASTINT (value) - 1;
+ EMACS_INT refcount = XFASTINT (HASH_VALUE (h, i)) - 1;
if (refcount > 0)
- {
- value = make_natnum (refcount);
- set_hash_value_slot (h, i, value);
- }
+ set_hash_value_slot (h, i, make_natnum (refcount));
else
{
eassert (refcount == 0);