To: vim_dev@googlegroups.com
Subject: Patch 7.3.810
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
------------

Patch 7.3.810
Problem:    'relativenumber is reset unexpectedly. (François Ingelrest)
Solution:   After an option was reset also reset the global value. Add a test.
	    (Christian Brabandt)
Files:	    src/option.c, src/testdir/Make_amiga.mak,
	    src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
	    src/testdir/Make_os2.mak, src/testdir/Make_vms.mms,
	    src/testdir/Makefile, src/testdir/test89.in,
	    src/testdir/test89.ok


*** ../vim-7.3.809/src/option.c	2013-01-17 17:37:31.000000000 +0100
--- src/option.c	2013-02-13 15:40:12.000000000 +0100
***************
*** 7109,7115 ****
      return errmsg;
  }
  
! #ifdef FEAT_SYN_HL
  /*
   * Simple int comparison function for use with qsort()
   */
--- 7109,7115 ----
      return errmsg;
  }
  
! #if defined(FEAT_SYN_HL) || defined(PROTO)
  /*
   * Simple int comparison function for use with qsort()
   */
***************
*** 7630,7646 ****
      }
  #endif
  
!     /* 'list', 'number' */
!     else if ((int *)varp == &curwin->w_p_list
! 	  || (int *)varp == &curwin->w_p_nu
  	  || (int *)varp == &curwin->w_p_rnu)
      {
  	/* If 'number' is set, reset 'relativenumber'. */
  	/* If 'relativenumber' is set, reset 'number'. */
  	if ((int *)varp == &curwin->w_p_nu && curwin->w_p_nu)
  	    curwin->w_p_rnu = FALSE;
  	if ((int *)varp == &curwin->w_p_rnu && curwin->w_p_rnu)
  	    curwin->w_p_nu = FALSE;
      }
  
      else if ((int *)varp == &curbuf->b_p_ro)
--- 7630,7651 ----
      }
  #endif
  
!     /* 'number', 'relativenumber' */
!     else if ((int *)varp == &curwin->w_p_nu
  	  || (int *)varp == &curwin->w_p_rnu)
      {
  	/* If 'number' is set, reset 'relativenumber'. */
  	/* If 'relativenumber' is set, reset 'number'. */
  	if ((int *)varp == &curwin->w_p_nu && curwin->w_p_nu)
+ 	{
  	    curwin->w_p_rnu = FALSE;
+ 	    curwin->w_allbuf_opt.wo_rnu = FALSE;
+ 	}
  	if ((int *)varp == &curwin->w_p_rnu && curwin->w_p_rnu)
+ 	{
  	    curwin->w_p_nu = FALSE;
+ 	    curwin->w_allbuf_opt.wo_nu = FALSE;
+ 	}
      }
  
      else if ((int *)varp == &curbuf->b_p_ro)
*** ../vim-7.3.809/src/testdir/Make_amiga.mak	2012-12-05 16:10:21.000000000 +0100
--- src/testdir/Make_amiga.mak	2013-02-13 15:01:32.000000000 +0100
***************
*** 31,37 ****
  		test66.out test67.out test68.out test69.out test70.out \
  		test71.out test72.out test73.out test74.out test75.out \
  		test76.out test77.out test78.out test79.out test80.out \
! 		test81.out test82.out test83.out test84.out test88.out
  
  .SUFFIXES: .in .out
  
--- 31,38 ----
  		test66.out test67.out test68.out test69.out test70.out \
  		test71.out test72.out test73.out test74.out test75.out \
  		test76.out test77.out test78.out test79.out test80.out \
! 		test81.out test82.out test83.out test84.out test88.out \
! 		test89.out
  
  .SUFFIXES: .in .out
  
***************
*** 136,138 ****
--- 137,140 ----
  test83.out: test83.in
  test84.out: test84.in
  test88.out: test88.in
+ test89.out: test89.in
*** ../vim-7.3.809/src/testdir/Make_dos.mak	2012-12-05 16:10:21.000000000 +0100
--- src/testdir/Make_dos.mak	2013-02-13 15:00:59.000000000 +0100
***************
*** 30,36 ****
  		test68.out test69.out test71.out test72.out test73.out \
  		test74.out test75.out test76.out test77.out test78.out \
  		test79.out test80.out test81.out test82.out test83.out \
! 		test84.out test85.out test86.out test87.out test88.out
  
  SCRIPTS32 =	test50.out test70.out
  
--- 30,37 ----
  		test68.out test69.out test71.out test72.out test73.out \
  		test74.out test75.out test76.out test77.out test78.out \
  		test79.out test80.out test81.out test82.out test83.out \
! 		test84.out test85.out test86.out test87.out test88.out \
! 		test89.out
  
  SCRIPTS32 =	test50.out test70.out
  
*** ../vim-7.3.809/src/testdir/Make_ming.mak	2012-12-05 16:10:21.000000000 +0100
--- src/testdir/Make_ming.mak	2013-02-13 15:01:16.000000000 +0100
***************
*** 50,56 ****
  		test68.out test69.out test71.out test72.out test73.out \
  		test74.out test75.out test76.out test77.out test78.out \
  		test79.out test80.out test81.out test82.out test83.out \
! 		test84.out test85.out test86.out test87.out test88.out
  
  SCRIPTS32 =	test50.out test70.out
  
--- 50,57 ----
  		test68.out test69.out test71.out test72.out test73.out \
  		test74.out test75.out test76.out test77.out test78.out \
  		test79.out test80.out test81.out test82.out test83.out \
! 		test84.out test85.out test86.out test87.out test88.out \
! 		test89.out
  
  SCRIPTS32 =	test50.out test70.out
  
*** ../vim-7.3.809/src/testdir/Make_os2.mak	2012-12-05 16:10:21.000000000 +0100
--- src/testdir/Make_os2.mak	2013-02-13 15:00:59.000000000 +0100
***************
*** 31,37 ****
  		test66.out test67.out test68.out test69.out test70.out \
  		test71.out test72.out test73.out test74.out test75.out \
  		test76.out test77.out test78.out test79.out test80.out \
! 		test81.out test82.out test83.out test84.out test88.out
  
  .SUFFIXES: .in .out
  
--- 31,38 ----
  		test66.out test67.out test68.out test69.out test70.out \
  		test71.out test72.out test73.out test74.out test75.out \
  		test76.out test77.out test78.out test79.out test80.out \
! 		test81.out test82.out test83.out test84.out test88.out \
! 		test89.out
  
  .SUFFIXES: .in .out
  
*** ../vim-7.3.809/src/testdir/Make_vms.mms	2012-12-05 16:10:21.000000000 +0100
--- src/testdir/Make_vms.mms	2013-02-13 15:00:59.000000000 +0100
***************
*** 76,82 ****
  	 test66.out test67.out test68.out test69.out \
  	 test71.out test72.out test74.out test75.out test76.out \
  	 test77.out test78.out test79.out test80.out test81.out \
! 	 test82.out test83.out test84.out test88.out
  
  # Known problems:
  # Test 30: a problem around mac format - unknown reason
--- 76,82 ----
  	 test66.out test67.out test68.out test69.out \
  	 test71.out test72.out test74.out test75.out test76.out \
  	 test77.out test78.out test79.out test80.out test81.out \
! 	 test82.out test83.out test84.out test88.out test89.out
  
  # Known problems:
  # Test 30: a problem around mac format - unknown reason
*** ../vim-7.3.809/src/testdir/Makefile	2012-12-05 18:21:28.000000000 +0100
--- src/testdir/Makefile	2013-02-13 15:00:59.000000000 +0100
***************
*** 27,33 ****
  		test69.out test70.out test71.out test72.out test73.out \
  		test74.out test75.out test76.out test77.out test78.out \
  		test79.out test80.out test81.out test82.out test83.out \
! 		test84.out test85.out test86.out test87.out test88.out
  
  SCRIPTS_GUI = test16.out
  
--- 27,34 ----
  		test69.out test70.out test71.out test72.out test73.out \
  		test74.out test75.out test76.out test77.out test78.out \
  		test79.out test80.out test81.out test82.out test83.out \
! 		test84.out test85.out test86.out test87.out test88.out \
! 		test89.out
  
  SCRIPTS_GUI = test16.out
  
*** ../vim-7.3.809/src/testdir/test89.in	2013-02-13 15:43:44.000000000 +0100
--- src/testdir/test89.in	2013-02-13 15:07:28.000000000 +0100
***************
*** 0 ****
--- 1,15 ----
+ Some tests for setting 'number' and 'relativenumber'
+ 
+ STARTTEST
+ :set hidden nocp nu rnu
+ :redir @a | set nu? rnu? | redir END
+ :e! xx
+ :redir @b | set nu? rnu? | redir END
+ :e! #
+ :$put ='results:'
+ :$put a
+ :$put b
+ :/^results/,$w! test.out
+ :q!
+ ENDTEST
+ 
*** ../vim-7.3.809/src/testdir/test89.ok	2013-02-13 15:43:44.000000000 +0100
--- src/testdir/test89.ok	2013-02-13 15:08:05.000000000 +0100
***************
*** 0 ****
--- 1,7 ----
+ results:
+ 
+ nonumber
+   relativenumber
+ 
+ nonumber
+   relativenumber
*** ../vim-7.3.809/src/version.c	2013-02-13 14:36:39.000000000 +0100
--- src/version.c	2013-02-13 15:42:18.000000000 +0100
***************
*** 727,728 ****
--- 727,730 ----
  {   /* Add new patch number below this line */
+ /**/
+     810,
  /**/

-- 
A law to reduce crime states: "It is mandatory for a motorist with criminal
intentions to stop at the city limits and telephone the chief of police as he
is entering the town.
		[real standing law in Washington, United States of America]

 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///
