updated for version 7.4.487
Problem:    ":sign jump" may use another window even though the file is
            already edited in the current window.
Solution:   First check if the file is in the current window. (James McCoy)
diff --git a/src/testdir/Make_amiga.mak b/src/testdir/Make_amiga.mak
index c0df2c1..58316fc 100644
--- a/src/testdir/Make_amiga.mak
+++ b/src/testdir/Make_amiga.mak
@@ -46,6 +46,7 @@
 		test_mapping.out \
 		test_options.out \
 		test_qf_title.out \
+		test_signs.out \
 		test_utf8.out
 
 .SUFFIXES: .in .out
@@ -179,4 +180,5 @@
 test_listlbr_utf8.out: test_listlbr_utf8.in
 test_options.out: test_options.in
 test_qf_title.out: test_qf_title.in
+test_signs.out: test_signs.in
 test_utf8.out: test_utf8.in
diff --git a/src/testdir/Make_dos.mak b/src/testdir/Make_dos.mak
index 9150043..abcabce 100644
--- a/src/testdir/Make_dos.mak
+++ b/src/testdir/Make_dos.mak
@@ -45,6 +45,7 @@
 		test_mapping.out \
 		test_options.out \
 		test_qf_title.out \
+		test_signs.out \
 		test_utf8.out
 
 SCRIPTS32 =	test50.out test70.out
diff --git a/src/testdir/Make_ming.mak b/src/testdir/Make_ming.mak
index 247c0f2..2a124b1 100644
--- a/src/testdir/Make_ming.mak
+++ b/src/testdir/Make_ming.mak
@@ -65,6 +65,7 @@
 		test_mapping.out \
 		test_options.out \
 		test_qf_title.out \
+		test_signs.out \
 		test_utf8.out
 
 SCRIPTS32 =	test50.out test70.out
diff --git a/src/testdir/Make_os2.mak b/src/testdir/Make_os2.mak
index cfade3f..5f3dc13 100644
--- a/src/testdir/Make_os2.mak
+++ b/src/testdir/Make_os2.mak
@@ -47,6 +47,7 @@
 		test_mapping.out \
 		test_options.out \
 		test_qf_title.out \
+		test_signs.out \
 		test_utf8.out
 
 .SUFFIXES: .in .out
diff --git a/src/testdir/Make_vms.mms b/src/testdir/Make_vms.mms
index 6483b7c..e105376 100644
--- a/src/testdir/Make_vms.mms
+++ b/src/testdir/Make_vms.mms
@@ -106,6 +106,7 @@
 	 test_mapping.out \
 	 test_options.out \
 	 test_qf_title.out \
+	 test_signs.out \
 	 test_utf8.out
 
 # Known problems:
diff --git a/src/testdir/Makefile b/src/testdir/Makefile
index 41f25cf..6b3bf9b 100644
--- a/src/testdir/Makefile
+++ b/src/testdir/Makefile
@@ -43,6 +43,7 @@
 		test_mapping.out \
 		test_options.out \
 		test_qf_title.out \
+		test_signs.out \
 		test_utf8.out
 
 SCRIPTS_GUI = test16.out
diff --git a/src/version.c b/src/version.c
index c470959..b6f750c 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    487,
+/**/
     486,
 /**/
     485,
diff --git a/src/window.c b/src/window.c
index fda9199..b975a61 100644
--- a/src/window.c
+++ b/src/window.c
@@ -4407,20 +4407,19 @@
 buf_jump_open_win(buf)
     buf_T	*buf;
 {
-# ifdef FEAT_WINDOWS
-    win_T	*wp;
+    win_T	*wp = NULL;
 
-    for (wp = firstwin; wp != NULL; wp = wp->w_next)
-	if (wp->w_buffer == buf)
-	    break;
+    if (curwin->w_buffer == buf)
+	wp = curwin;
+# ifdef FEAT_WINDOWS
+    else
+	for (wp = firstwin; wp != NULL; wp = wp->w_next)
+	    if (wp->w_buffer == buf)
+		break;
     if (wp != NULL)
 	win_enter(wp, FALSE);
-    return wp;
-# else
-    if (curwin->w_buffer == buf)
-	return curwin;
-    return NULL;
 # endif
+    return wp;
 }
 
 /*
@@ -4432,12 +4431,10 @@
 buf_jump_open_tab(buf)
     buf_T	*buf;
 {
+    win_T	*wp = buf_jump_open_win(buf);
 # ifdef FEAT_WINDOWS
-    win_T	*wp;
     tabpage_T	*tp;
 
-    /* First try the current tab page. */
-    wp = buf_jump_open_win(buf);
     if (wp != NULL)
 	return wp;
 
@@ -4455,13 +4452,8 @@
 		break;
 	    }
 	}
-
-    return wp;
-# else
-    if (curwin->w_buffer == buf)
-	return curwin;
-    return NULL;
 # endif
+    return wp;
 }
 #endif