From: Bram Moolenaar Date: Wed, 5 Sep 2012 12:18:45 +0000 (+0200) Subject: updated for version 7.3.649 X-Git-Tag: v7.3.649 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7c82130a76898999bcebf28c71f0897644822fab;p=vim updated for version 7.3.649 Problem: When 'clipboard' is set to "unnamed" small deletes end up in the numbered registers. (Ingo Karkat) Solution: Use the original register name to decide whether to put a delete in a numbered register. (Christian Brabandt) --- diff --git a/src/ops.c b/src/ops.c index 561046d37..f08e576cf 100644 --- a/src/ops.c +++ b/src/ops.c @@ -1623,6 +1623,7 @@ op_delete(oap) #endif linenr_T old_lcount = curbuf->b_ml.ml_line_count; int did_yank = FALSE; + int orig_regname = oap->regname; if (curbuf->b_ml.ml_flags & ML_EMPTY) /* nothing to do */ return OK; @@ -1715,8 +1716,10 @@ op_delete(oap) /* * Put deleted text into register 1 and shift number registers if the * delete contains a line break, or when a regname has been specified. + * Use the register name from before adjust_clip_reg() may have + * changed it. */ - if (oap->regname != 0 || oap->motion_type == MLINE + if (orig_regname != 0 || oap->motion_type == MLINE || oap->line_count > 1 || oap->use_reg_one) { y_current = &y_regs[9]; diff --git a/src/version.c b/src/version.c index 577eddeaf..4b4890c7e 100644 --- a/src/version.c +++ b/src/version.c @@ -719,6 +719,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 649, /**/ 648, /**/