Warn if no callback. Call callback correctly. (g_io_win32_create_watch):
[platform/upstream/glib.git] / gstring.c
index cd5f13b..ff6fc7c 100644 (file)
--- a/gstring.c
+++ b/gstring.c
@@ -243,7 +243,7 @@ g_string_new (const gchar *init)
 {
   GString *string;
 
-  string = g_string_sized_new (2);
+  string = g_string_sized_new (init ? strlen (init) + 2 : 2);
 
   if (init)
     g_string_append (string, init);
@@ -251,6 +251,25 @@ g_string_new (const gchar *init)
   return string;
 }
 
+GString*
+g_string_new_len (const gchar *init,
+                  gint         len)
+{
+  GString *string;
+
+  if (len < 0)
+    return g_string_new (init);
+  else
+    {
+      string = g_string_sized_new (len);
+      
+      if (init)
+        g_string_append_len (string, init, len);
+      
+      return string;
+    }
+}
+
 gchar*
 g_string_free (GString *string,
               gboolean free_segment)