changeset 2990:ad404f2a4bfa v7.3.267

updated for version 7.3.267 Problem: Ruby on Mac OS X 10.7 may crash. Solution: Avoid alloc(0). (Bjorn Winckler)
author Bram Moolenaar <bram@vim.org>
date Thu, 04 Aug 2011 19:34:59 +0200
parents 124a81f12ca4
children df5d4bbe02ff
files src/if_ruby.c src/version.c
diffstat 2 files changed, 15 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/if_ruby.c
+++ b/src/if_ruby.c
@@ -761,11 +761,19 @@ static VALUE vim_message(VALUE self UNUS
     char *buff, *p;
 
     str = rb_obj_as_string(str);
-    buff = ALLOCA_N(char, RSTRING_LEN(str));
-    strcpy(buff, RSTRING_PTR(str));
-    p = strchr(buff, '\n');
-    if (p) *p = '\0';
-    MSG(buff);
+    if (RSTRING_LEN(str) > 0)
+    {
+	/* Only do this when the string isn't empty, alloc(0) causes trouble. */
+	buff = ALLOCA_N(char, RSTRING_LEN(str));
+	strcpy(buff, RSTRING_PTR(str));
+	p = strchr(buff, '\n');
+	if (p) *p = '\0';
+	MSG(buff);
+    }
+    else
+    {
+	MSG("");
+    }
     return Qnil;
 }
 
--- a/src/version.c
+++ b/src/version.c
@@ -710,6 +710,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    267,
+/**/
     266,
 /**/
     265,