Mercurial > vim
diff src/misc1.c @ 3578:c0c935956ac3 v7.3.549
updated for version 7.3.549
Problem: In 'cinoptions' "0s" is interpreted as one shiftwidth. (David
Pineau)
Solution: Use the zero as zero. (Lech Lorens)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Wed, 13 Jun 2012 13:40:48 +0200 |
parents | 5c1aaf9b4b1b |
children | 443c50cd3e88 |
line wrap: on
line diff
--- a/src/misc1.c +++ b/src/misc1.c @@ -6635,6 +6635,7 @@ get_c_indent() int whilelevel; linenr_T lnum; char_u *options; + char_u *digits; int fraction = 0; /* init for GCC */ int divider; int n; @@ -6650,6 +6651,7 @@ get_c_indent() l = options++; if (*options == '-') ++options; + digits = options; /* remember where the digits start */ n = getdigits(&options); divider = 0; if (*options == '.') /* ".5s" means a fraction */ @@ -6666,7 +6668,7 @@ get_c_indent() } if (*options == 's') /* "2s" means two times 'shiftwidth' */ { - if (n == 0 && fraction == 0) + if (options == digits) n = curbuf->b_p_sw; /* just "s" is one 'shiftwidth' */ else {