Mercurial > vim
comparison src/eval.c @ 3499:454646820185 v7.3.512
updated for version 7.3.512
Problem: undofile() returns a useless name when passed an empty string.
Solution: Return an empty string. (Christian Brabandt)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Mon, 30 Apr 2012 17:35:48 +0200 |
parents | 2722f11ddc99 |
children | 02440d1fcc9a |
comparison
equal
deleted
inserted
replaced
3498:d36e92c7c98a | 3499:454646820185 |
---|---|
18257 typval_T *rettv; | 18257 typval_T *rettv; |
18258 { | 18258 { |
18259 rettv->v_type = VAR_STRING; | 18259 rettv->v_type = VAR_STRING; |
18260 #ifdef FEAT_PERSISTENT_UNDO | 18260 #ifdef FEAT_PERSISTENT_UNDO |
18261 { | 18261 { |
18262 char_u *ffname = FullName_save(get_tv_string(&argvars[0]), FALSE); | 18262 char_u *fname = get_tv_string(&argvars[0]); |
18263 | 18263 |
18264 if (ffname != NULL) | 18264 if (*fname == NUL) |
18265 rettv->vval.v_string = u_get_undo_file_name(ffname, FALSE); | 18265 { |
18266 vim_free(ffname); | 18266 /* If there is no file name there will be no undo file. */ |
18267 rettv->vval.v_string = NULL; | |
18268 } | |
18269 else | |
18270 { | |
18271 char_u *ffname = FullName_save(fname, FALSE); | |
18272 | |
18273 if (ffname != NULL) | |
18274 rettv->vval.v_string = u_get_undo_file_name(ffname, FALSE); | |
18275 vim_free(ffname); | |
18276 } | |
18267 } | 18277 } |
18268 #else | 18278 #else |
18269 rettv->vval.v_string = NULL; | 18279 rettv->vval.v_string = NULL; |
18270 #endif | 18280 #endif |
18271 } | 18281 } |