patch 9.0.1391: "clear" macros are not always used

Problem:    "clear" macros are not always used.
Solution:   Use ALLOC_ONE, VIM_CLEAR, CLEAR_POINTER and CLEAR_FIELD in more
            places. (Yegappan Lakshmanan, closes #12104)
diff --git a/src/popupwin.c b/src/popupwin.c
index c34ee9f..a0d33fd 100644
--- a/src/popupwin.c
+++ b/src/popupwin.c
@@ -3568,8 +3568,7 @@
 
     if (wp->w_popup_mask == NULL || width == 0 || height == 0)
     {
-	vim_free(wp->w_popup_mask_cells);
-	wp->w_popup_mask_cells = NULL;
+	VIM_CLEAR(wp->w_popup_mask_cells);
 	return;
     }
     if (wp->w_popup_mask_cells != NULL