diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c
index 01bc357..5f58fed 100644
--- a/src/ex_cmds2.c
+++ b/src/ex_cmds2.c
@@ -1419,7 +1419,7 @@
 	    bevalexpr_due_set = FALSE;
 	    if (balloonEval == NULL)
 	    {
-		balloonEval = (BalloonEval *)alloc(sizeof(BalloonEval));
+		balloonEval = (BalloonEval *)alloc_clear(sizeof(BalloonEval));
 		balloonEvalForTerm = TRUE;
 	    }
 	    if (balloonEval != NULL)
diff --git a/src/gui.c b/src/gui.c
index 87ea5ce..f51b81f 100644
--- a/src/gui.c
+++ b/src/gui.c
@@ -745,7 +745,12 @@
 	/* Always create the Balloon Evaluation area, but disable it when
 	 * 'ballooneval' is off. */
 	if (balloonEval != NULL)
+	{
+# ifdef FEAT_VARTABS
+	    vim_free(balloonEval->vts);
+# endif
 	    vim_free(balloonEval);
+	}
 	balloonEvalForTerm = FALSE;
 # ifdef FEAT_GUI_GTK
 	balloonEval = gui_mch_create_beval_area(gui.drawarea, NULL,
diff --git a/src/gui_beval.c b/src/gui_beval.c
index 7e46250..49694cf 100644
--- a/src/gui_beval.c
+++ b/src/gui_beval.c
@@ -111,28 +111,19 @@
 	return NULL;
     }
 
-    beval = (BalloonEval *)alloc(sizeof(BalloonEval));
+    beval = (BalloonEval *)alloc_clear(sizeof(BalloonEval));
     if (beval != NULL)
     {
 #ifdef FEAT_GUI_GTK
 	beval->target = GTK_WIDGET(target);
-	beval->balloonShell = NULL;
-	beval->timerID = 0;
 #else
 	beval->target = (Widget)target;
-	beval->balloonShell = NULL;
-	beval->timerID = (XtIntervalId)NULL;
 	beval->appContext = XtWidgetToApplicationContext((Widget)target);
 #endif
 	beval->showState = ShS_NEUTRAL;
-	beval->x = 0;
-	beval->y = 0;
 	beval->msg = mesg;
 	beval->msgCB = mesgCB;
 	beval->clientData = clientData;
-#ifdef FEAT_VARTABS
-	beval->vts = NULL;
-#endif
 
 	/*
 	 * Set up event handler which will keep its eyes on the pointer,
diff --git a/src/gui_w32.c b/src/gui_w32.c
index 8553811..147d98b 100644
--- a/src/gui_w32.c
+++ b/src/gui_w32.c
@@ -8922,28 +8922,21 @@
 	return NULL;
     }
 
-    beval = (BalloonEval *)alloc(sizeof(BalloonEval));
+    beval = (BalloonEval *)alloc_clear(sizeof(BalloonEval));
     if (beval != NULL)
     {
 	beval->target = s_textArea;
-	beval->balloon = NULL;
 
 	beval->showState = ShS_NEUTRAL;
-	beval->x = 0;
-	beval->y = 0;
 	beval->msg = mesg;
 	beval->msgCB = mesgCB;
 	beval->clientData = clientData;
-#ifdef FEAT_VARTABS
-	beval->vts = NULL;
-#endif
 
 	InitCommonControls();
 	cur_beval = beval;
 
 	if (p_beval)
 	    gui_mch_enable_beval_area(beval);
-
     }
     return beval;
 }
diff --git a/src/version.c b/src/version.c
index aa8a1de..5aacf2f 100644
--- a/src/version.c
+++ b/src/version.c
@@ -790,6 +790,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    121,
+/**/
     120,
 /**/
     119,
