# HG changeset patch # User Bram Moolenaar # Date 1354714982 -3600 # Node ID aab4b29520e79134e33f2c641f1d960de2dcdc1e # Parent 538ff809ae53b35c18a2a3b3763a397f3f4a785d updated for version 7.3.745 Problem: Automatically setting 'ttymouse' doesn't work. Solution: Reset the "option was set" flag when using the default. diff --git a/src/option.c b/src/option.c --- a/src/option.c +++ b/src/option.c @@ -11179,6 +11179,19 @@ option_was_set(name) } /* + * Reset the flag indicating option "name" was set. + */ + void +reset_option_was_set(name) + char_u *name; +{ + int idx = findoption(name); + + if (idx >= 0) + options[idx].flags &= ~P_WAS_SET; +} + +/* * compatible_set() - Called when 'compatible' has been set or unset. * * When 'compatible' set: Set all relevant options (those that have the P_VIM) diff --git a/src/proto/option.pro b/src/proto/option.pro --- a/src/proto/option.pro +++ b/src/proto/option.pro @@ -52,6 +52,7 @@ int shortmess __ARGS((int x)); void vimrc_found __ARGS((char_u *fname, char_u *envname)); void change_compatible __ARGS((int on)); int option_was_set __ARGS((char_u *name)); +void reset_option_was_set __ARGS((char_u *name)); int can_bs __ARGS((int what)); void save_file_ff __ARGS((buf_T *buf)); int file_ff_differs __ARGS((buf_T *buf, int ignore_empty)); diff --git a/src/term.c b/src/term.c --- a/src/term.c +++ b/src/term.c @@ -1864,7 +1864,12 @@ set_termname(term) } # endif if (p != NULL) + { set_option_value((char_u *)"ttym", 0L, p, 0); + /* Reset the WAS_SET flag, 'ttymouse' can be set to "sgr" or + * "xterm2" in check_termcode(). */ + reset_option_was_set((char_u *)"ttym"); + } if (p == NULL # ifdef FEAT_GUI || gui.in_use diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -726,6 +726,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 745, +/**/ 744, /**/ 743,