X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=libsysfs%2Fdlist.c;h=c4ee32457322799f46af50c1285a949fc608d52a;hb=27753a3cf74f9d665728e0e2c483435b1d72721f;hp=5f2c00be9be5c4697b38548d76bf3bef8dbe1757;hpb=993a633ab848487b8e546f66087595e2dc5aa4af;p=elogind.git diff --git a/libsysfs/dlist.c b/libsysfs/dlist.c index 5f2c00be9..c4ee32457 100644 --- a/libsysfs/dlist.c +++ b/libsysfs/dlist.c @@ -546,11 +546,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;