diff --git a/lib/modules/ADT.pmod/Heap.pike b/lib/modules/ADT.pmod/Heap.pike index 6292860975eae2863458345bd583c84ab670ffd2..cef3715cf871d5d6d7bdf54980fde2bbb6427f39 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;