diff options
-rw-r--r-- | libsysfs/dlist.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libsysfs/dlist.c b/libsysfs/dlist.c index 5f2c00be9b..c4ee324573 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; |