[pacman-dev] [PATCH v2 1/7] move strtim to util-common

Andrew Gregory andrew.gregory.8 at gmail.com
Mon Sep 14 22:37:38 UTC 2015


Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
---
 src/common/util-common.c | 39 +++++++++++++++++++++++++++++++++++++++
 src/common/util-common.h |  2 ++
 src/pacman/ini.c         |  2 +-
 src/pacman/util.c        | 39 ---------------------------------------
 src/pacman/util.h        |  1 -
 src/util/pactree.c       | 36 ------------------------------------
 6 files changed, 42 insertions(+), 77 deletions(-)

diff --git a/src/common/util-common.c b/src/common/util-common.c
index e834168..542dcfd 100644
--- a/src/common/util-common.c
+++ b/src/common/util-common.c
@@ -17,6 +17,7 @@
  *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
+#include <ctype.h>
 #include <errno.h>
 #include <stdlib.h>
 #include <string.h>
@@ -127,6 +128,44 @@ char *safe_fgets(char *s, int size, FILE *stream)
 	return ret;
 }
 
+/* Trim whitespace and newlines from a string
+ */
+size_t strtrim(char *str)
+{
+	char *end, *pch = str;
+
+	if(str == NULL || *str == '\0') {
+		/* string is empty, so we're done. */
+		return 0;
+	}
+
+	while(isspace((unsigned char)*pch)) {
+		pch++;
+	}
+	if(pch != str) {
+		size_t len = strlen(pch);
+		if(len) {
+			memmove(str, pch, len + 1);
+			pch = str;
+		} else {
+			*str = '\0';
+		}
+	}
+
+	/* check if there wasn't anything but whitespace in the string. */
+	if(*str == '\0') {
+		return 0;
+	}
+
+	end = (str + strlen(str) - 1);
+	while(isspace((unsigned char)*end)) {
+		end--;
+	}
+	*++end = '\0';
+
+	return end - pch;
+}
+
 #ifndef HAVE_STRNLEN
 /* A quick and dirty implementation derived from glibc */
 /** Determines the length of a fixed-size string.
diff --git a/src/common/util-common.h b/src/common/util-common.h
index a2093be..af2ebda 100644
--- a/src/common/util-common.h
+++ b/src/common/util-common.h
@@ -30,6 +30,8 @@ int llstat(char *path, struct stat *buf);
 
 char *safe_fgets(char *s, int size, FILE *stream);
 
+size_t strtrim(char *str);
+
 #ifndef HAVE_STRNDUP
 char *strndup(const char *s, size_t n);
 #endif
diff --git a/src/pacman/ini.c b/src/pacman/ini.c
index fed0b18..da30af1 100644
--- a/src/pacman/ini.c
+++ b/src/pacman/ini.c
@@ -24,7 +24,7 @@
 #include <alpm.h>
 
 #include "ini.h"
-#include "util.h"
+#include "util-common.h"
 
 /**
  * @brief Parse a pacman-style INI config file.
diff --git a/src/pacman/util.c b/src/pacman/util.c
index 3d71d8b..1542f8a 100644
--- a/src/pacman/util.c
+++ b/src/pacman/util.c
@@ -29,7 +29,6 @@
 #include <stdint.h> /* intmax_t */
 #include <string.h>
 #include <errno.h>
-#include <ctype.h>
 #include <dirent.h>
 #include <unistd.h>
 #include <limits.h>
@@ -353,44 +352,6 @@ void indentprint(const char *str, unsigned short indent, unsigned short cols)
 	free(wcstr);
 }
 
-/* Trim whitespace and newlines from a string
- */
-size_t strtrim(char *str)
-{
-	char *end, *pch = str;
-
-	if(str == NULL || *str == '\0') {
-		/* string is empty, so we're done. */
-		return 0;
-	}
-
-	while(isspace((unsigned char)*pch)) {
-		pch++;
-	}
-	if(pch != str) {
-		size_t len = strlen(pch);
-		if(len) {
-			memmove(str, pch, len + 1);
-			pch = str;
-		} else {
-			*str = '\0';
-		}
-	}
-
-	/* check if there wasn't anything but whitespace in the string. */
-	if(*str == '\0') {
-		return 0;
-	}
-
-	end = (str + strlen(str) - 1);
-	while(isspace((unsigned char)*end)) {
-		end--;
-	}
-	*++end = '\0';
-
-	return end - pch;
-}
-
 /* Replace all occurrences of 'needle' with 'replace' in 'str', returning
  * a new string (must be free'd) */
 char *strreplace(const char *str, const char *needle, const char *replace)
diff --git a/src/pacman/util.h b/src/pacman/util.h
index c82d816..744c13c 100644
--- a/src/pacman/util.h
+++ b/src/pacman/util.h
@@ -54,7 +54,6 @@ unsigned short getcols(void);
 void columns_cache_reset(void);
 int rmrf(const char *path);
 void indentprint(const char *str, unsigned short indent, unsigned short cols);
-size_t strtrim(char *str);
 char *strreplace(const char *str, const char *needle, const char *replace);
 void string_display(const char *title, const char *string, unsigned short cols);
 double humanize_size(off_t bytes, const char target_unit, int precision,
diff --git a/src/util/pactree.c b/src/util/pactree.c
index 11ad7ca..6969995 100644
--- a/src/util/pactree.c
+++ b/src/util/pactree.c
@@ -123,42 +123,6 @@ int searchsyncs = 0;
 const char *dbpath = DBPATH;
 const char *configfile = CONFFILE;
 
-static size_t strtrim(char *str)
-{
-	char *end, *pch = str;
-
-	if(str == NULL || *str == '\0') {
-		/* string is empty, so we're done. */
-		return 0;
-	}
-
-	while(isspace((unsigned char)*pch)) {
-		pch++;
-	}
-	if(pch != str) {
-		size_t len = strlen(pch);
-		if(len) {
-			memmove(str, pch, len + 1);
-			pch = str;
-		} else {
-			*str = '\0';
-		}
-	}
-
-	/* check if there wasn't anything but whitespace in the string. */
-	if(*str == '\0') {
-		return 0;
-	}
-
-	end = (str + strlen(str) - 1);
-	while(isspace((unsigned char)*end)) {
-		end--;
-	}
-	*++end = '\0';
-
-	return end - pch;
-}
-
 static int register_syncs(void)
 {
 	FILE *fp;
-- 
2.5.2


More information about the pacman-dev mailing list