From 297602162c89b10f6ee41c21e6302bcc51199a3d Mon Sep 17 00:00:00 2001
From: gdt <gdt>
Date: Mon, 22 Dec 2003 15:56:00 +0000
Subject: add comments clarifying the operation of listnode_add_sort

---
 lib/linklist.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/lib/linklist.c b/lib/linklist.c
index 6fc03e16..d6eeab41 100644
--- a/lib/linklist.c
+++ b/lib/linklist.c
@@ -80,7 +80,12 @@ listnode_add (struct list *list, void *val)
   list->count++;
 }
 
-/* Add new node with sort function. */
+/*
+ * Add a node to the list.  If the list was sorted according to the
+ * cmp function, insert a new node with the given val such that the
+ * list remains sorted.  The new node is always inserted; there is no
+ * notion of omitting duplicates.
+ */
 void
 listnode_add_sort (struct list *list, void *val)
 {
@@ -94,6 +99,7 @@ listnode_add_sort (struct list *list, void *val)
     {
       for (n = list->head; n; n = n->next)
 	{
+	  /* XXX should an "equal" node be inserted before or after? */
 	  if ((*list->cmp) (val, n->data) <= 0)
 	    {	    
 	      new->next = n;
-- 
cgit v1.2.1