patch 8.1.0589: compilation error in gvimext.cpp

Problem:    Compilation error in gvimext.cpp.
Solution:   Return a value.  Also fix using uninitialized variable.
diff --git a/src/GvimExt/gvimext.cpp b/src/GvimExt/gvimext.cpp
index 62d925b..30b2ddd 100644
--- a/src/GvimExt/gvimext.cpp
+++ b/src/GvimExt/gvimext.cpp
@@ -1025,7 +1025,7 @@
     cmdlen = BUFSIZE;
     cmdStrW  = (wchar_t *) malloc(cmdlen * sizeof(wchar_t));
     if (cmdStrW == NULL)
-	return;
+	return E_FAIL;
     getGvimInvocationW(cmdStrW);
 
     if (useDiff)
@@ -1043,7 +1043,10 @@
 	    cmdlen = len + BUFSIZE;
 	    wchar_t *cmdStrW_new = (wchar_t *)realloc(cmdStrW, cmdlen * sizeof(wchar_t));
 	    if (cmdStrW_new == NULL)
-		goto theend;
+	    {
+		free(cmdStrW);
+		return E_FAIL;
+	    }
 	    cmdStrW = cmdStrW_new;
 	}
 	wcscat(cmdStrW, L" \"");
diff --git a/src/dosinst.c b/src/dosinst.c
index f73576f..9ecb0f4 100644
--- a/src/dosinst.c
+++ b/src/dosinst.c
@@ -2459,7 +2459,7 @@
 	}
 	else if (strcmp(argv[i], "-create-directories") == 0)
 	{
-	    int vimfiles_dir_choice;
+	    int vimfiles_dir_choice = (int)vimfiles_dir_none;
 
 	    init_directories_choice();
 	    if (argv[i + 1][0] != '-')
diff --git a/src/version.c b/src/version.c
index 3c9eb0d..f868e6a 100644
--- a/src/version.c
+++ b/src/version.c
@@ -800,6 +800,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    589,
+/**/
     588,
 /**/
     587,