From 6804ca2dd0fb9936ee2f83415aa86f8e8cfe0cb6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?=
 <grubba@grubba.org>
Date: Thu, 17 Sep 2015 14:33:24 +0200
Subject: [PATCH] ADT.Heap: 2nd try at fixing the NULL-deref.

---
 lib/modules/ADT.pmod/Heap.pike | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/modules/ADT.pmod/Heap.pike b/lib/modules/ADT.pmod/Heap.pike
index 6292860975..cef3715cf8 100644
--- a/lib/modules/ADT.pmod/Heap.pike
+++ b/lib/modules/ADT.pmod/Heap.pike
@@ -128,7 +128,7 @@ Element adjust(mixed value)
   if (objectp(value) && value->is_adt_heap_element) {
     pos = value->pos;
   } else {
-    pos = search(values?->value, value);
+    pos = search(map(values, lambda(Element x) { return x?->value; }), value);
   }
   Element ret;
   if(pos>=0) {
@@ -211,7 +211,7 @@ void remove(mixed value)
   if (objectp(value) && value->is_adt_heap_element) {
     pos = value->pos;
   } else {
-    pos = search(values?->value, value);
+    pos = search(map(values, lambda(Element x) { return x?->value; }), value);
   }
   if ((pos < 0) || (pos >= num_values)) return;
 
-- 
GitLab