From 32ce339c9b32d5f65dbe53f9d1cf657cab71c766 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Wed, 11 Aug 2004 10:04:21 +0000
Subject: [PATCH] Created iniRenameSection().

---
 src/xpdev/ini_file.c | 16 ++++++++++++++++
 src/xpdev/ini_file.h |  1 +
 2 files changed, 17 insertions(+)

diff --git a/src/xpdev/ini_file.c b/src/xpdev/ini_file.c
index b3a82ed59b..f1ea6e3347 100644
--- a/src/xpdev/ini_file.c
+++ b/src/xpdev/ini_file.c
@@ -272,6 +272,22 @@ BOOL iniRemoveSection(str_list_t* list, const char* section)
 	return(TRUE);
 }
 
+BOOL iniRenameSection(str_list_t* list, const char* section, const char* newname)
+{
+	char	str[INI_MAX_LINE_LEN];
+	size_t	i;
+
+	if(section==ROOT_SECTION)
+		return(FALSE);
+
+	i=find_section_index(*list,section);
+	if((*list)[i]==NULL)	/* not found */
+		return(FALSE);
+
+	sprintf(str,"[%s]",newname);
+	return(strListReplace(*list, i, str)!=NULL);
+}
+
 size_t iniAddSection(str_list_t* list, const char* section
 					,ini_style_t* style)
 {
diff --git a/src/xpdev/ini_file.h b/src/xpdev/ini_file.h
index a12958590b..bc2d999e85 100644
--- a/src/xpdev/ini_file.h
+++ b/src/xpdev/ini_file.h
@@ -126,6 +126,7 @@ BOOL		iniValueExists(str_list_t*, const char* section, const char* key);
 BOOL		iniRemoveKey(str_list_t*, const char* section, const char* key);
 BOOL		iniRemoveValue(str_list_t*, const char* section, const char* key);
 BOOL		iniRemoveSection(str_list_t*, const char* section);
+BOOL		iniRenameSection(str_list_t*, const char* section, const char* newname);
 
 #if defined(__cplusplus)
 }
-- 
GitLab