changeset 13754:0d199e59a988 v8.0.1749

patch 8.0.1749: VMS: 100% CPU use, redefining mch_open() fails commit https://github.com/vim/vim/commit/6537c421bb626ee92a2487a543e6287d33461bd0 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Apr 23 20:46:16 2018 +0200 patch 8.0.1749: VMS: 100% CPU use, redefining mch_open() fails Problem: VMS: 100% CPU use, redefining mch_open() and mch_fopen() fails. Solution: Do not wait indefinitely in RealWaitForChar(). (Neil Rieck) Do not redefine mch_open() and mch_fopen() on VMS. (Zoltan Arpadffy)
author Christian Brabandt <cb@256bit.org>
date Mon, 23 Apr 2018 21:00:07 +0200
parents 5bc0ef8e60a1
children 5f94d5556dae
files src/os_vms.c src/version.c src/vim.h
diffstat 3 files changed, 6 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/os_vms.c
+++ b/src/os_vms.c
@@ -784,7 +784,7 @@ RealWaitForChar(
 	    return 0;
 	} else if (msec < 0) {
 	    /* no time-out; wait on indefinitely */
-	    continue;
+	    return 1; /* fakeout to force a wait in vms_read() */
 	} else {
 	    /* time-out needs to be checked */
 	    status = sys$gettim(&time_curr);
--- a/src/version.c
+++ b/src/version.c
@@ -762,6 +762,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1749,
+/**/
     1748,
 /**/
     1747,
--- a/src/vim.h
+++ b/src/vim.h
@@ -2154,8 +2154,9 @@ typedef enum {
 # define number_width(x) 7
 #endif
 
-/* This must come after including proto.h */
-#if !(defined(FEAT_MBYTE) && defined(WIN3264))
+/* This must come after including proto.h.
+ * For VMS this is defined in macros.h. */
+#if !(defined(FEAT_MBYTE) && defined(WIN3264)) && !defined(VMS)
 # define mch_open(n, m, p)	open((n), (m), (p))
 # define mch_fopen(n, p)	fopen((n), (p))
 #endif