catch up with zipimport changes to std getpathp.c
diff --git a/PC/os2emx/getpathp.c b/PC/os2emx/getpathp.c
index 5cb8278..ab31c65 100644
--- a/PC/os2emx/getpathp.c
+++ b/PC/os2emx/getpathp.c
@@ -250,6 +250,8 @@
 	size_t bufsz;
 	char *pythonhome = Py_GetPythonHome();
 	char *envpath = getenv("PYTHONPATH");
+	char zip_path[MAXPATHLEN+1];
+	size_t len;
 
 	get_progpath();
 	/* progpath guaranteed \0 terminated in MAXPATH+1 bytes. */
@@ -267,12 +269,26 @@
 	if (envpath && *envpath == '\0')
 		envpath = NULL;
 
+	/* Calculate zip archive path */
+	strncpy(zip_path, progpath, MAXPATHLEN);
+	zip_path[MAXPATHLEN] = '\0';
+	len = strlen(zip_path);
+	if (len > 4) {
+		zip_path[len-3] = 'z';  /* change ending to "zip" */
+		zip_path[len-2] = 'i';
+		zip_path[len-1] = 'p';
+	}
+	else {
+		zip_path[0] = 0;
+	}
+
 	/* We need to construct a path from the following parts.
 	   (1) the PYTHONPATH environment variable, if set;
-	   (2) the PYTHONPATH config macro, with the leading "."
+	   (2) the zip archive file path;
+	   (3) the PYTHONPATH config macro, with the leading "."
 	       of each component replaced with pythonhome, if set;
-	   (3) the directory containing the executable (argv0_path).
-	   The length calculation calculates #2 first.
+	   (4) the directory containing the executable (argv0_path).
+	   The length calculation calculates #3 first.
 	*/
 
 	/* Calculate size of return buffer */
@@ -289,6 +305,7 @@
 		bufsz = 0;
 	bufsz += strlen(PYTHONPATH) + 1;
 	bufsz += strlen(argv0_path) + 1;
+	bufsz += strlen(zip_path) + 1;
 	if (envpath != NULL)
 		bufsz += strlen(envpath) + 1;
 
@@ -312,6 +329,11 @@
 		buf = strchr(buf, '\0');
 		*buf++ = DELIM;
 	}
+	if (zip_path[0]) {
+		strcpy(buf, zip_path);
+		buf = strchr(buf, '\0');
+		*buf++ = DELIM;
+	}
 
 	if (pythonhome == NULL) {
 		strcpy(buf, PYTHONPATH);