From 2a9ced258e6bbeea7e461f13ac6c01928809b871 Mon Sep 17 00:00:00 2001 From: Tilman Sauerbeck Date: Thu, 28 Dec 2006 17:28:15 +0100 Subject: [PATCH] Work with non NUL-terminated comments, too. --- ext/comments.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ext/comments.c b/ext/comments.c index 03a237b..03ba680 100644 --- a/ext/comments.c +++ b/ext/comments.c @@ -41,14 +41,17 @@ comments_init (VALUE self, vcedit_state *state) for (i = 0; i < vc->comments; i++) { VALUE k, v, pair; char *ptr, *content = vc->user_comments[i]; + int k_len, v_len; ptr = strchr (content, '='); assert (ptr); - k = rb_str_new (content, ptr - content); + k_len = ptr - content; + k = rb_str_new (content, k_len); OBJ_FREEZE (k); - v = rb_str_new2 (ptr + 1); + v_len = vc->comment_lengths[i] - k_len - 1; + v = rb_str_new (ptr + 1, v_len); pair = rb_ary_new3 (2, k, v); OBJ_FREEZE (pair); -- 2.30.2