Remove meaningless NULL checks
authorYusuke Endoh <[email protected]>
Wed, 4 Dec 2024 07:33:49 +0000 (4 16:33 +0900)
committerYusuke Endoh <[email protected]>
Wed, 4 Dec 2024 08:12:26 +0000 (4 17:12 +0900)
The functions dereference `*dead_entry` without a NULL check

weakmap.c

index 32acf2d..f8a6ae3 100644 (file)
--- a/weakmap.c
+++ b/weakmap.c
@@ -636,10 +636,8 @@ static int
 wkmap_mark_table_i(st_data_t key, st_data_t val_obj, st_data_t data)
 {
     VALUE **dead_entry = (VALUE **)data;
-    if (dead_entry != NULL) {
-        ruby_sized_xfree(*dead_entry, sizeof(VALUE));
-        *dead_entry = NULL;
-    }
+    ruby_sized_xfree(*dead_entry, sizeof(VALUE));
+    *dead_entry = NULL;
 
     VALUE *key_ptr = (VALUE *)key;
 
@@ -702,10 +700,8 @@ static int
 wkmap_compact_table_i(st_data_t key, st_data_t val_obj, st_data_t data, int _error)
 {
     VALUE **dead_entry = (VALUE **)data;
-    if (dead_entry != NULL) {
-        ruby_sized_xfree(*dead_entry, sizeof(VALUE));
-        *dead_entry = NULL;
-    }
+    ruby_sized_xfree(*dead_entry, sizeof(VALUE));
+    *dead_entry = NULL;
 
     VALUE *key_ptr = (VALUE *)key;