Blame SOURCES/0065-lib-add-strremovech-str-ch.patch

28bab8
From efcf993b68fdad24f60e3f4bfbe0a94f8ef666fe Mon Sep 17 00:00:00 2001
28bab8
From: Jakub Filak <jfilak@redhat.com>
28bab8
Date: Fri, 12 Sep 2014 14:37:45 +0200
28bab8
Subject: [LIBREPORT PATCH 65/93] lib: add strremovech(str, ch)
28bab8
28bab8
Related to rhbz#1140224
28bab8
28bab8
Signed-off-by: Jakub Filak <jfilak@redhat.com>
28bab8
---
28bab8
 src/include/internal_libreport.h |  2 ++
28bab8
 src/lib/strbuf.c                 | 16 ++++++++++++++++
28bab8
 2 files changed, 18 insertions(+)
28bab8
28bab8
diff --git a/src/include/internal_libreport.h b/src/include/internal_libreport.h
28bab8
index 9ff89b2..52f466f 100644
28bab8
--- a/src/include/internal_libreport.h
28bab8
+++ b/src/include/internal_libreport.h
28bab8
@@ -111,6 +111,8 @@ int suffixcmp(const char *str, const char *suffix);
28bab8
 char *strtrim(char *str);
28bab8
 #define strtrimch libreport_strtrimch
28bab8
 char *strtrimch(char *str, int ch);
28bab8
+#define strremovech libreport_strremovech
28bab8
+char *strremovech(char *str, int ch);
28bab8
 #define append_to_malloced_string libreport_append_to_malloced_string
28bab8
 char *append_to_malloced_string(char *mstr, const char *append);
28bab8
 #define skip_whitespace libreport_skip_whitespace
28bab8
diff --git a/src/lib/strbuf.c b/src/lib/strbuf.c
28bab8
index 8bad558..ef8bda8 100644
28bab8
--- a/src/lib/strbuf.c
28bab8
+++ b/src/lib/strbuf.c
28bab8
@@ -86,6 +86,22 @@ char *strtrimch(char *str, int ch)
28bab8
     return str;
28bab8
 }
28bab8
 
28bab8
+/*
28bab8
+ * Removes character from a string.
28bab8
+ * Modifies the string in-place. Returns the updated string.
28bab8
+ */
28bab8
+char *strremovech(char *str, int ch)
28bab8
+{
28bab8
+    char *ret = str;
28bab8
+    char *res = str;
28bab8
+    for ( ; *str != '\0'; ++str)
28bab8
+        if (*str != ch)
28bab8
+            *(res++) = *str;
28bab8
+
28bab8
+    *res = '\0';
28bab8
+    return ret;
28bab8
+}
28bab8
+
28bab8
 
28bab8
 struct strbuf *strbuf_new(void)
28bab8
 {
28bab8
-- 
28bab8
1.8.3.1
28bab8