From 92dd34edb429e169a1e7d75a9fffdca18bf06047 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Fri, 28 May 2004 10:44:55 +0000
Subject: [PATCH] Created strListPush and strListPop convenience macros.
 Removed pad argument from strListReadFile().

---
 src/xpdev/ini_file.c | 2 +-
 src/xpdev/str_list.c | 8 ++------
 src/xpdev/str_list.h | 6 +++++-
 3 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/xpdev/ini_file.c b/src/xpdev/ini_file.c
index b84aa44661..57ffa4a96f 100644
--- a/src/xpdev/ini_file.c
+++ b/src/xpdev/ini_file.c
@@ -583,7 +583,7 @@ str_list_t iniReadFile(FILE* fp)
 	
 	rewind(fp);
 
-	list = strListReadFile(fp, NULL, INI_MAX_LINE_LEN, FALSE /* pad */);
+	list = strListReadFile(fp, NULL, INI_MAX_LINE_LEN);
 	if(list!=NULL) {
 		/* truncate the white-space off end of strings */
 		for(i=0; list[i]!=NULL; i++)
diff --git a/src/xpdev/str_list.c b/src/xpdev/str_list.c
index 74ccab6d1e..ebb0643546 100644
--- a/src/xpdev/str_list.c
+++ b/src/xpdev/str_list.c
@@ -321,7 +321,7 @@ void strListFree(str_list_t* list)
 	}
 }
 
-str_list_t strListReadFile(FILE* fp, str_list_t* lp, size_t max_line_len, BOOL pad)
+str_list_t strListReadFile(FILE* fp, str_list_t* lp, size_t max_line_len)
 {
 	char*		buf=NULL;
 	size_t		count;
@@ -343,11 +343,7 @@ str_list_t strListReadFile(FILE* fp, str_list_t* lp, size_t max_line_len, BOOL p
 		
 		if(fgets(buf,max_line_len+1,fp)==NULL)
 			break;
-		if(pad) {
-			str_list_append(lp, buf, count++);
-			buf=NULL;
-		} else
-			strListAppend(lp, buf, count++);
+		strListAppend(lp, buf, count++);
 	}
 
 	if(buf!=NULL)
diff --git a/src/xpdev/str_list.h b/src/xpdev/str_list.h
index 2fcb7d7f6d..cec80725ef 100644
--- a/src/xpdev/str_list.h
+++ b/src/xpdev/str_list.h
@@ -80,6 +80,10 @@ BOOL		strListDelete(str_list_t* list, size_t index);
 /* Replace a string at a specific index */
 char*		strListReplace(const str_list_t list, size_t index, const char* str);
 
+/* Convenience macros for pushing, popping strings (LIFO stack) */
+#define		strListPush(list, str)	strListAppend(list, str, STR_LIST_LAST_INDEX)
+#define		strListPop(list)		strListRemove(list, STR_LIST_LAST_INDEX)
+
 /* Add to an exiting or new string list by splitting specified string (str) */
 /* into multiple strings, separated by one of the delimit characters */
 str_list_t	strListSplit(str_list_t* list, char* str, const char* delimit);
@@ -107,7 +111,7 @@ void		strListSortAlphaCaseReverse(str_list_t list);
 
 /* Read lines from file appending each line to string list */
 /* Pass NULL list to have list allocated for you */
-str_list_t	strListReadFile(FILE* fp, str_list_t* list, size_t max_line_len, BOOL pad);
+str_list_t	strListReadFile(FILE* fp, str_list_t* list, size_t max_line_len);
 
 /* Write to file (fp) each string in the list, optionally separated by separator (e.g. "\n") */
 size_t		strListWriteFile(FILE* fp, const str_list_t list, const char* separator);
-- 
GitLab