summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--girepository/gitypelib.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/girepository/gitypelib.c b/girepository/gitypelib.c
index 10bb98e0..f7d07e3f 100644
--- a/girepository/gitypelib.c
+++ b/girepository/gitypelib.c
@@ -252,11 +252,16 @@ strsplit_iter_next (StrSplitIter *iter,
if (!s)
return FALSE;
next = strstr (s, iter->separator);
- iter->s = next;
if (next)
- len = next - s;
+ {
+ iter->s = next + 1;
+ len = next - s;
+ }
else
- len = strlen (s);
+ {
+ iter->s = NULL;
+ len = strlen (s);
+ }
g_string_overwrite_len (&iter->buf, 0, s, (gssize)len);
*out_val = iter->buf.str;
return TRUE;