diff libfdcore/extensions.c @ 1242:b25ca6134bdc

Fix configuration dump when no extension is loaded
author Sebastien Decugis <sdecugis@freediameter.net>
date Mon, 11 Nov 2013 14:42:02 +0800
parents cec3e9b579e1
children
line wrap: on
line diff
--- a/libfdcore/extensions.c	Sat Nov 02 22:29:32 2013 +0800
+++ b/libfdcore/extensions.c	Mon Nov 11 14:42:02 2013 +0800
@@ -82,13 +82,17 @@
 	struct fd_list * li;
 	FD_DUMP_HANDLE_OFFSET();
 	
-	for (li = ext_list.next; li != &ext_list; li = li->next)
-	{
-		struct fd_ext_info * ext = (struct fd_ext_info *)li;
-		CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "'%s'[%s], %sloaded%s",
-					ext->filename, 
-					ext->conffile?:"(no config file)", 
-					ext->handler ? "" : "not ", (li->next == &ext_list) ? "":"\n"), return NULL);
+	if (FD_IS_LIST_EMPTY(&ext_list)) {
+		CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "-none-"), return NULL);
+	} else {
+		for (li = ext_list.next; li != &ext_list; li = li->next)
+		{
+			struct fd_ext_info * ext = (struct fd_ext_info *)li;
+			CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "'%s'[%s], %sloaded%s",
+						ext->filename, 
+						ext->conffile?:"(no config file)", 
+						ext->handler ? "" : "not ", (li->next == &ext_list) ? "":"\n"), return NULL);
+		}
 	}
 	return *buf;
 }
"Welcome to our mercurial repository"