chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[PATCH] dev_d.c file sorting and cleanup
[elogind.git]
/
libsysfs
/
dlist.c
diff --git
a/libsysfs/dlist.c
b/libsysfs/dlist.c
index a94ab1f854be6d9f784dc5b4657fd8fde0935324..942eccb48c89850a83e7806318a3803641fe68a3 100644
(file)
--- a/
libsysfs/dlist.c
+++ b/
libsysfs/dlist.c
@@
-260,6
+260,16
@@
void dlist_unshift(Dlist *list,void *data)
dlist_insert(list,data,0);
}
dlist_insert(list,data,0);
}
+void dlist_unshift_sorted(Dlist *list, void *data,
+ int (*sorter)(void *new, void *old))
+{
+ if (list->count == 0)
+ dlist_unshift(list, data);
+ else {
+ list->marker=list->head->next;
+ dlist_insert_sorted(list, data, sorter);
+ }
+}
/*
* Remove end node from list.
/*
* Remove end node from list.