updated for version 7.4.669
Problem:    When netbeans is active the sign column always shows up.
Solution:   Only show the sign column once a sign has been added. (Xavier de
            Gaye)
diff --git a/src/buffer.c b/src/buffer.c
index edb38d6..6dfe007 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -5473,6 +5473,10 @@
 
 	    /* first sign in signlist */
 	    buf->b_signlist = newsign;
+#ifdef FEAT_NETBEANS_INTG
+	    if (netbeans_active())
+		buf->b_has_sign_column = TRUE;
+#endif
 	}
 	else
 	    prev->next = newsign;
diff --git a/src/edit.c b/src/edit.c
index 610d0a3..9f7f1d6 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -6687,7 +6687,7 @@
 #ifdef FEAT_SIGNS
 	if (curwin->w_buffer->b_signlist != NULL
 # ifdef FEAT_NETBEANS_INTG
-			    || netbeans_active()
+			  || curwin->w_buffer->b_has_sign_column
 # endif
 		    )
 	    textwidth -= 1;
diff --git a/src/move.c b/src/move.c
index e84f3d5..0269412 100644
--- a/src/move.c
+++ b/src/move.c
@@ -905,7 +905,7 @@
 	    + (
 # ifdef FEAT_NETBEANS_INTG
 		/* show glyph gutter in netbeans */
-		netbeans_active() ||
+		wp->w_buffer->b_has_sign_column ||
 # endif
 		wp->w_buffer->b_signlist != NULL ? 2 : 0)
 #endif
diff --git a/src/netbeans.c b/src/netbeans.c
index e9f7910..68ca301 100644
--- a/src/netbeans.c
+++ b/src/netbeans.c
@@ -144,6 +144,11 @@
     static void
 nb_close_socket(void)
 {
+    buf_T	*buf;
+
+    for (buf = firstbuf; buf != NULL; buf = buf->b_next)
+	buf->b_has_sign_column = FALSE;
+
 #ifdef FEAT_GUI_X11
     if (inputHandler != (XtInputId)NULL)
     {
diff --git a/src/screen.c b/src/screen.c
index fd15ad1..4e1fb36 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -2214,7 +2214,7 @@
 {
     return (wp->w_buffer->b_signlist != NULL
 # ifdef FEAT_NETBEANS_INTG
-			    || netbeans_active()
+				|| wp->w_buffer->b_has_sign_column
 # endif
 		    );
 }
diff --git a/src/structs.h b/src/structs.h
index 448697a..3b24eec 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -1805,6 +1805,11 @@
 
 #ifdef FEAT_SIGNS
     signlist_T	*b_signlist;	/* list of signs to draw */
+# ifdef FEAT_NETBEANS_INTG
+    int		b_has_sign_column; /* Flag that is set when a first sign is
+				    * added and remains set until the end of
+				    * the netbeans session. */
+# endif
 #endif
 
 #ifdef FEAT_NETBEANS_INTG
diff --git a/src/version.c b/src/version.c
index c5e8a15..f7eae85 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    669,
+/**/
     668,
 /**/
     667,