/* a generic and efficient heap */
-/* Copyright (c) 2004, 2005, 2007, 2008, 2009, 2010. The SimGrid Team.
+/* Copyright (c) 2004-2005, 2007-2013. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
if (count > size) {
H->size = (size << 1) + 1;
H->items =
- (void *) realloc(H->items,
+ (void *) xbt_realloc(H->items,
(H->size) * sizeof(struct xbt_heap_item));
}
int size = H->size;
void *max;
- XBT_DEBUG("Heap has %d elements before extraction and max elem was %g",xbt_heap_size(H),xbt_heap_maxkey(H));
-
if (H->count == 0)
return NULL;
+ XBT_DEBUG("Heap has %d elements before extraction and max elem was %g",xbt_heap_size(H),xbt_heap_maxkey(H));
+
max = CONTENT(H, 0);
items[0] = items[(H->count) - 1];
if (H->count < size >> 2 && size > 16) {
size = (size >> 1) + 1;
H->items =
- (void *) realloc(items,
+ (void *) xbt_realloc(items,
size * sizeof(struct xbt_heap_item));
H->size = size;
}