diff --git a/src/search.c b/src/search.c
index ce6bccc5574606ae142102bee2718adda300cac9..0abea2dd33d543cefff838c00cf965cf4ca4c61b 100644
--- a/src/search.c
+++ b/src/search.c
@@ -1202,8 +1202,8 @@ filestruct *find_history(const filestruct *h_start, const filestruct
     return NULL;
 }
 
-/* Update a history list.  h should be the current position in the
- * list. */
+/* Update a history list (the one in which h is the current position)
+ * with a fresh string s.  That is: add s, or move it to the end. */
 void update_history(filestruct **h, const char *s)
 {
     filestruct **hage = NULL, **hbot = NULL, *thesame;
@@ -1220,7 +1220,7 @@ void update_history(filestruct **h, const char *s)
 
     assert(hage != NULL && hbot != NULL);
 
-    /* See if this string is already in the history. */
+    /* See if the string is already in the history. */
     thesame = find_history(*hbot, *hage, s, HIGHEST_POSITIVE);
 
     /* If an identical string was found, delete that item. */
@@ -1235,9 +1235,8 @@ void update_history(filestruct **h, const char *s)
 	renumber(after);
     }
 
-    /* If the history is full, delete the beginning entry to make room
-     * for the new entry at the end.  We assume that MAX_SEARCH_HISTORY
-     * is greater than zero. */
+    /* If the history is full, delete the oldest item (the one at the
+     * head of the list), to make room for a new item at the end. */
     if ((*hbot)->lineno == MAX_SEARCH_HISTORY + 1) {
 	filestruct *foo = *hage;
 
@@ -1246,13 +1245,13 @@ void update_history(filestruct **h, const char *s)
 	renumber(*hage);
     }
 
-    /* Add the new entry to the end. */
+    /* Store the fresh string in the last item, then create a new item. */
     (*hbot)->data = mallocstrcpy((*hbot)->data, s);
     splice_node(*hbot, make_new_node(*hbot));
     *hbot = (*hbot)->next;
     (*hbot)->data = mallocstrcpy(NULL, "");
 
-    /* Indicate that the history's been changed. */
+    /* Indicate that the history needs to be saved on exit. */
     history_changed = TRUE;
 
     /* Set the current position in the list to the bottom. */