diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 58ea7c8..fb084d3 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -1346,6 +1346,18 @@
 	restore_dbg_stuff(&debug_saved);
 
     msg_list = saved_msg_list;
+
+    // Cleanup if "cs_emsg_silent_list" remains.
+    if (cstack.cs_emsg_silent_list != NULL)
+    {
+	eslist_T *elem, *temp;
+
+	for (elem = cstack.cs_emsg_silent_list; elem != NULL; elem = temp)
+	{
+	    temp = elem->next;
+	    vim_free(elem);
+	}
+    }
 #endif // FEAT_EVAL
 
     /*
diff --git a/src/ex_getln.c b/src/ex_getln.c
index ca164cd..7193a2a 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -4188,6 +4188,7 @@
     if (win_split((int)p_cwh, WSP_BOT) == FAIL)
     {
 	beep_flush();
+	ga_clear(&winsizes);
 	return K_IGNORE;
     }
     cmdwin_type = get_cmdline_type();
diff --git a/src/menu.c b/src/menu.c
index 3a9d2e4..0c88879 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -2882,10 +2882,16 @@
 	if (bit < MENU_MODES) // just in case, avoid Coverity warning
 	{
 	    if (menu->strings[bit] != NULL)
+	    {
+		char_u *tofree = NULL;
+
 		status = dict_add_string(dict, "rhs",
 			*menu->strings[bit] == NUL
-				? vim_strsave((char_u *)"<Nop>")
-				: str2special_save(menu->strings[bit], FALSE));
+				? (char_u *)"<Nop>"
+				: (tofree = str2special_save(
+						  menu->strings[bit], FALSE)));
+		vim_free(tofree);
+	    }
 	    if (status == OK)
 		status = dict_add_bool(dict, "noremenu",
 					     menu->noremap[bit] == REMAP_NONE);
diff --git a/src/message.c b/src/message.c
index 0119145..fbddfad 100644
--- a/src/message.c
+++ b/src/message.c
@@ -865,6 +865,7 @@
     char_u *copy = vim_strnsave((char_u *)name, len);
 
     semsg(msg, copy == NULL ? "NULL" : (char *)copy);
+    vim_free(copy);
 }
 
 /*
diff --git a/src/scriptfile.c b/src/scriptfile.c
index 9c644e2..838d5f6 100644
--- a/src/scriptfile.c
+++ b/src/scriptfile.c
@@ -1133,7 +1133,8 @@
     {
 	// Already loaded and no need to load again, return here.
 	*ret_sid = sid;
-	return OK;
+	retval = OK;
+	goto theend;
     }
 #endif
 
diff --git a/src/userfunc.c b/src/userfunc.c
index c6c6cec..32b9fb5 100644
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -942,6 +942,8 @@
     ga_clear_strings(&(fp->uf_lines));
     VIM_CLEAR(fp->uf_name_exp);
     VIM_CLEAR(fp->uf_arg_types);
+    VIM_CLEAR(fp->uf_def_arg_idx);
+    VIM_CLEAR(fp->uf_va_name);
     ga_clear(&fp->uf_type_list);
 #ifdef FEAT_PROFILE
     VIM_CLEAR(fp->uf_tml_count);
@@ -3086,11 +3088,11 @@
 
 erret:
     ga_clear_strings(&newargs);
-    ga_clear_strings(&argtypes);
     ga_clear_strings(&default_args);
 errret_2:
     ga_clear_strings(&newlines);
 ret_free:
+    ga_clear_strings(&argtypes);
     vim_free(skip_until);
     vim_free(line_to_free);
     vim_free(fudi.fd_newkey);
diff --git a/src/version.c b/src/version.c
index 25b8188..686e045 100644
--- a/src/version.c
+++ b/src/version.c
@@ -739,6 +739,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    399,
+/**/
     398,
 /**/
     397,
