Add a warning to catch possible refcounting bugs.
[bluesky.git] / bluesky / util.c
index 54c3c36..2e6f0aa 100644 (file)
@@ -52,7 +52,7 @@ BlueSkyRCStr *bluesky_string_new(gpointer data, gsize len)
 }
 
 /* Create a new BlueSkyRCStr from a GString.  The GString is destroyed. */
-BlueSkyRCStr *bluesky_string_new_from_string(GString *s)
+BlueSkyRCStr *bluesky_string_new_from_gstring(GString *s)
 {
     gsize len = s->len;
     return bluesky_string_new(g_string_free(s, FALSE), len);
@@ -108,5 +108,8 @@ void bluesky_string_resize(BlueSkyRCStr *string, gsize len)
     if (string->len == len)
         return;
 
+    g_warn_if_fail(string->refcount == 1);
+
     string->data = g_realloc(string->data, len);
+    string->len = len;
 }