# HG changeset patch # User Bram Moolenaar # Date 1389699216 -3600 # Node ID 1098b7b6e147cdd324ac665340540922c2cdceb3 # Parent a056715b3e81ab44bcd43b2b254390b965cf9cbf updated for version 7.4.145 Problem: getregtype() does not return zero for unknown register. Solution: Adjust documention: return empty string for unknown register. Check the register name to be valid. (Yukihiro Nakadaira) diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -3460,7 +3460,7 @@ getregtype([{regname}]) *getregtype( "v" for |characterwise| text "V" for |linewise| text "{width}" for |blockwise-visual| text - 0 for an empty or unknown register + "" for an empty or unknown register is one character with value 0x16. If {regname} is not specified, |v:register| is used. diff --git a/src/ops.c b/src/ops.c --- a/src/ops.c +++ b/src/ops.c @@ -6240,7 +6240,9 @@ get_reg_type(regname, reglen) regname = may_get_selection(regname); #endif - /* Should we check for a valid name? */ + if (regname != NUL && !valid_yank_reg(regname, FALSE)) + return MAUTO; + get_yank_register(regname, FALSE); if (y_current->y_array != NULL) diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -739,6 +739,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 145, +/**/ 144, /**/ 143,