aboutsummaryrefslogtreecommitdiffstats
path: root/src/list.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/list.c')
-rw-r--r--src/list.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/list.c b/src/list.c
index 71c30f7b6..14832adb7 100644
--- a/src/list.c
+++ b/src/list.c
@@ -287,6 +287,21 @@ int findInList(List * list, char *key, void **data)
return 0;
}
+ListNode *getNodeByPosition(List *list, int pos)
+{
+ ListNode *tmpNode;
+
+ assert(list != NULL);
+ if (pos < 0 || pos >= list->numberOfNodes)
+ return NULL;
+
+ tmpNode = list->firstNode;
+ while (pos-- > 0)
+ tmpNode = tmpNode->nextNode;
+
+ return tmpNode;
+}
+
int deleteFromList(List * list, char *key)
{
ListNode *tmpNode;