]> granicus.if.org Git - vim/commitdiff
updated for version 7.2-011 v7.2.011
authorBram Moolenaar <Bram@vim.org>
Sun, 7 Sep 2008 11:55:43 +0000 (11:55 +0000)
committerBram Moolenaar <Bram@vim.org>
Sun, 7 Sep 2008 11:55:43 +0000 (11:55 +0000)
src/eval.c
src/version.c

index 351f24c37dc28a1e4a52d798de1c0e64bfce8c27..9c8515e039d367bf727a41cca1d49e41453d233b 100644 (file)
@@ -1256,23 +1256,26 @@ skip_expr(pp)
 
 /*
  * Top level evaluation function, returning a string.
+ * When "convert" is TRUE convert a List into a sequence of lines and convert
+ * a Float to a String.
  * Return pointer to allocated memory, or NULL for failure.
  */
     char_u *
-eval_to_string(arg, nextcmd, dolist)
+eval_to_string(arg, nextcmd, convert)
     char_u     *arg;
     char_u     **nextcmd;
-    int                dolist;         /* turn List into sequence of lines */
+    int                convert;
 {
     typval_T   tv;
     char_u     *retval;
     garray_T   ga;
+    char_u     numbuf[NUMBUFLEN];
 
     if (eval0(arg, &tv, nextcmd, TRUE) == FAIL)
        retval = NULL;
     else
     {
-       if (dolist && tv.v_type == VAR_LIST)
+       if (convert && tv.v_type == VAR_LIST)
        {
            ga_init2(&ga, (int)sizeof(char), 80);
            if (tv.vval.v_list != NULL)
@@ -1280,6 +1283,13 @@ eval_to_string(arg, nextcmd, dolist)
            ga_append(&ga, NUL);
            retval = (char_u *)ga.ga_data;
        }
+#ifdef FEAT_FLOAT
+       else if (convert && tv.v_type == VAR_FLOAT)
+       {
+           vim_snprintf((char *)numbuf, NUMBUFLEN, "%g", tv.vval.v_float);
+           retval = vim_strsave(numbuf);
+       }
+#endif
        else
            retval = vim_strsave(get_tv_string(&tv));
        clear_tv(&tv);
index 2ed32719205b26518d33c15d42fcdce57bb08ad0..cd13eb2c0de4ab1642969f7ecc9ed5e439f5725e 100644 (file)
@@ -676,6 +676,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    11,
 /**/
     10,
 /**/