Fix bogus linked-list management for user defined merge drivers.

ll_user_merge_tail is supposed to point at the pointer to be
updated to point at a newly created item.

Signed-off-by: Junio C Hamano <junkio@cox.net>
diff --git a/merge-recursive.c b/merge-recursive.c
index 96e461c..3d39589 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
@@ -902,8 +902,9 @@
 		namebuf[namelen] = 0;
 		fn->name = namebuf;
 		fn->fn = ll_ext_merge;
-		fn->next = *ll_user_merge_tail;
+		fn->next = NULL;
 		*ll_user_merge_tail = fn;
+		ll_user_merge_tail = &(fn->next);
 	}
 
 	ep++;