chiark / gitweb /
[PATCH] klibc_fixups: remove unneeded stuff
[elogind.git] / libsysfs / dlist.c
index 5f2c00be9be5c4697b38548d76bf3bef8dbe1757..c44e9d5ff592b12fe38951c7761a44a38f591888 100644 (file)
@@ -27,6 +27,7 @@
  * delete function.  Otherwise dlist will just use free.
 
 */
+#include "stdlib.h"
 #include "dlist.h"
 
 /*
@@ -546,11 +547,14 @@ int _dlist_merge(struct dlist *listsource, struct dlist *listdest, unsigned int
 void dlist_sort_custom(struct dlist *list, int (*compare)(void *, void *))
 {
 
-  dlist_start(list);
   struct dlist *listsource, *listdest, *swap;
-  struct dlist *templist = dlist_new(list->data_size);
+  struct dlist *templist;
   unsigned int passcount = 1;
   unsigned int mergecount = 1;
+
+  dlist_start(list);
+  templist = dlist_new(list->data_size);
+
   // do nothing if there isn't anything to sort
   listsource = list;
   listdest = templist;