I swear I'll get it right someday.
authorElliot Lee <sopwith@src.gnome.org>
Tue, 20 Oct 1998 22:28:17 +0000 (22:28 +0000)
committerElliot Lee <sopwith@src.gnome.org>
Tue, 20 Oct 1998 22:28:17 +0000 (22:28 +0000)
I swear I'll get it right someday.

glib.h
glib/glib.h
glib/gstrfuncs.c
gstrfuncs.c

diff --git a/glib.h b/glib.h
index d3ff8904e246c6082271059fbd0a0377b14816ed..8ce902f3b774586230630612040803d58776763f 100644 (file)
--- a/glib.h
+++ b/glib.h
@@ -1379,7 +1379,8 @@ gchar *  g_str_chomp            (gchar *astring,
 gchar ** g_str_split            (const gchar *string,
                                 const gchar *delim,
                                 gint max_tokens);
-gchar*  g_strconcatv           (const gchar **strarray);
+gchar*  g_strconcatv           (const gchar *separator,
+                                const gchar **strarray);
 #define  g_str_joinv g_strconcatv
 void     g_str_array_free       (gchar **strarray);
 
index d3ff8904e246c6082271059fbd0a0377b14816ed..8ce902f3b774586230630612040803d58776763f 100644 (file)
@@ -1379,7 +1379,8 @@ gchar *  g_str_chomp            (gchar *astring,
 gchar ** g_str_split            (const gchar *string,
                                 const gchar *delim,
                                 gint max_tokens);
-gchar*  g_strconcatv           (const gchar **strarray);
+gchar*  g_strconcatv           (const gchar *separator,
+                                const gchar **strarray);
 #define  g_str_joinv g_strconcatv
 void     g_str_array_free       (gchar **strarray);
 
index 60fd28b490bc74e86f06a29d3472e124854c9158..31283ce878781ed4124c9d47648defa618b32b44 100644 (file)
@@ -1039,12 +1039,11 @@ g_str_split(const gchar *string, const gchar *delim, gint max_tokens)
 gchar *
 g_str_chug(gchar *astring, gboolean in_place)
 {
-  int i;
   gchar *retval, *start;
 
   g_return_val_if_fail(astring != NULL, NULL);
 
-  for(start = retval; *start && isspace(*start); start++)
+  for(start = astring; *start && isspace(*start); start++)
     /* */;
 
   if(in_place) {
@@ -1094,25 +1093,30 @@ g_str_array_free(gchar **strarray)
   g_free(strarray);
 }
 
-gchar*
-g_strconcatv (const gchar **strarray)
+gchar*  g_strconcatv           (const gchar *separator,
+                                const gchar **strarray)
 {
-  guint          l;
-  va_list args;
-  gchar          *s;
+  guint          l, sepl;
   gchar          *concat;
   int i;
   
   g_return_val_if_fail (strarray != NULL, NULL);
 
-  for(i = 0, l = 1; strarray[i]; i++)
+  l = strlen(strarray[0]) + 1;
+  sepl = strlen(separator);
+  for(i = 1; strarray[i]; i++) {
+    l += sepl;
     l += strlen(strarray[i]);
+  }
   
   concat = g_new (gchar, l);
   *concat = '\0';
 
-  for(i = 0; strarray[i]; i++)
+  strcat (concat, strarray[0]);
+  for(i = 1; strarray[i]; i++) {
+    strcat (concat, separator);
     strcat (concat, strarray[i]);
+  }
 
   return concat;
 }
index 60fd28b490bc74e86f06a29d3472e124854c9158..31283ce878781ed4124c9d47648defa618b32b44 100644 (file)
@@ -1039,12 +1039,11 @@ g_str_split(const gchar *string, const gchar *delim, gint max_tokens)
 gchar *
 g_str_chug(gchar *astring, gboolean in_place)
 {
-  int i;
   gchar *retval, *start;
 
   g_return_val_if_fail(astring != NULL, NULL);
 
-  for(start = retval; *start && isspace(*start); start++)
+  for(start = astring; *start && isspace(*start); start++)
     /* */;
 
   if(in_place) {
@@ -1094,25 +1093,30 @@ g_str_array_free(gchar **strarray)
   g_free(strarray);
 }
 
-gchar*
-g_strconcatv (const gchar **strarray)
+gchar*  g_strconcatv           (const gchar *separator,
+                                const gchar **strarray)
 {
-  guint          l;
-  va_list args;
-  gchar          *s;
+  guint          l, sepl;
   gchar          *concat;
   int i;
   
   g_return_val_if_fail (strarray != NULL, NULL);
 
-  for(i = 0, l = 1; strarray[i]; i++)
+  l = strlen(strarray[0]) + 1;
+  sepl = strlen(separator);
+  for(i = 1; strarray[i]; i++) {
+    l += sepl;
     l += strlen(strarray[i]);
+  }
   
   concat = g_new (gchar, l);
   *concat = '\0';
 
-  for(i = 0; strarray[i]; i++)
+  strcat (concat, strarray[0]);
+  for(i = 1; strarray[i]; i++) {
+    strcat (concat, separator);
     strcat (concat, strarray[i]);
+  }
 
   return concat;
 }