updated for version 7.4.334
Problem:    Unitialized variables, causing some problems.
Solution:   Initialize the variables. (Dominique Pelle)
diff --git a/src/screen.c b/src/screen.c
index e0fbbb4..872ef08 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -7363,7 +7363,7 @@
     match_T	    *shl;	/* points to search_hl or a match */
     linenr_T	    lnum;
     colnr_T	    mincol;	/* minimal column for a match */
-    matchitem_T	    *cur;	/* to retrieve match postions if any */
+    matchitem_T	    *cur;	/* to retrieve match positions if any */
 {
     linenr_T	l;
     colnr_T	matchcol;
@@ -7458,9 +7458,9 @@
 	    }
 	}
 	else if (cur != NULL)
-	{
 	    nmatched = next_search_hl_pos(shl, lnum, &(cur->pos), matchcol);
-	}
+	else
+	    nmatched = 0;
 	if (nmatched == 0)
 	{
 	    shl->lnum = 0;		/* no match found */
diff --git a/src/version.c b/src/version.c
index 300dedb..bf8567a 100644
--- a/src/version.c
+++ b/src/version.c
@@ -735,6 +735,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    334,
+/**/
     333,
 /**/
     332,
diff --git a/src/window.c b/src/window.c
index f76812a..ae82fe7 100644
--- a/src/window.c
+++ b/src/window.c
@@ -6809,7 +6809,7 @@
     }
 
     /* Build new match. */
-    m = (matchitem_T *)alloc(sizeof(matchitem_T));
+    m = (matchitem_T *)alloc_clear(sizeof(matchitem_T));
     m->id = id;
     m->priority = prio;
     m->pattern = pat == NULL ? NULL : vim_strsave(pat);
@@ -6835,7 +6835,7 @@
 	    int		len = 1;
 	    list_T	*subl;
 	    listitem_T	*subli;
-	    int		error;
+	    int		error = FALSE;
 
 	    if (li == NULL)
 	    {