updated for version 7.0-028
diff --git a/src/os_os2_cfg.h b/src/os_os2_cfg.h
index ce3b4bb..62527a9 100644
--- a/src/os_os2_cfg.h
+++ b/src/os_os2_cfg.h
@@ -183,6 +183,9 @@
 /* Define if you have the ANSI C header files. */
 /* #undef STDC_HEADERS */
 
+/* added by David Sanders */
+#define HAVE_STDARG_H 1
+
 /* instead, we check a few STDC things ourselves */
 #define HAVE_STDLIB_H	1
 #undef HAVE_STRING_H	/* On EMX it is better to use strings.h */
diff --git a/src/os_unix.c b/src/os_unix.c
index b375468..86f52c5 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -4971,7 +4971,8 @@
 		    if (((*file)[*num_file] = alloc(len + 2)) != NULL)
 		    {
 			STRCPY((*file)[*num_file], p);
-			if (!after_pathsep((*file)[*num_file] + len))
+			if (!after_pathsep((*file)[*num_file],
+						    (*file)[*num_file] + len))
 			{
 			    (*file)[*num_file][len] = psepc;
 			    (*file)[*num_file][len + 1] = NUL;
diff --git a/src/version.c b/src/version.c
index be2baf4..0b0703c 100644
--- a/src/version.c
+++ b/src/version.c
@@ -667,6 +667,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    28,
+/**/
     27,
 /**/
     26,
diff --git a/src/vim.h b/src/vim.h
index 3ee12bf..a72e655 100644
--- a/src/vim.h
+++ b/src/vim.h
@@ -1983,7 +1983,7 @@
 /* values for vim_handle_signal() that are not a signal */
 #define SIGNAL_BLOCK	-1
 #define SIGNAL_UNBLOCK  -2
-#if !defined(UNIX) && !defined(VMS)
+#if !defined(UNIX) && !defined(VMS) && !defined(OS2)
 # define vim_handle_signal(x) 0
 #endif