}
else if (VIsual_active)
{
- /* Save the current VIsual area for '< and '> marks, and "gv" */
- curbuf->b_visual.vi_start = VIsual;
- curbuf->b_visual.vi_end = curwin->w_cursor;
- curbuf->b_visual.vi_mode = VIsual_mode;
- curbuf->b_visual.vi_curswant = curwin->w_curswant;
+ if (!gui_yank)
+ {
+ /* Save the current VIsual area for '< and '> marks, and "gv" */
+ curbuf->b_visual.vi_start = VIsual;
+ curbuf->b_visual.vi_end = curwin->w_cursor;
+ curbuf->b_visual.vi_mode = VIsual_mode;
+ curbuf->b_visual.vi_curswant = curwin->w_curswant;
# ifdef FEAT_EVAL
- curbuf->b_visual_mode_eval = VIsual_mode;
+ curbuf->b_visual_mode_eval = VIsual_mode;
# endif
+ }
/* In Select mode, a linewise selection is operated upon like a
* characterwise selection. */