subconverter/scripts/patches/0001-quickjs-libc-add-realpath-for-Windows.patch
2021-06-12 14:45:32 +08:00

59 lines
1.4 KiB
Diff

--- quickjs-libc.c 2021-06-11 22:42:15.729357600 +0800
+++ patched.c 2021-06-11 22:44:01.426073100 +0800
@@ -511,6 +511,18 @@
}
#endif /* !_WIN32 */
+#if defined(_WIN32)
+static char *realpath(const char *path, char *buf)
+{
+ if (!_fullpath(buf, path, PATH_MAX)) {
+ errno = ENOENT;
+ return NULL;
+ } else {
+ return buf;
+ }
+}
+#endif
+
int js_module_set_import_meta(JSContext *ctx, JSValueConst func_val,
JS_BOOL use_realpath, JS_BOOL is_main)
{
@@ -530,7 +542,7 @@
return -1;
if (!strchr(module_name, ':')) {
strcpy(buf, "file://");
-#if !defined(_WIN32)
+//#if !defined(_WIN32)
/* realpath() cannot be used with modules compiled with qjsc
because the corresponding module source code is not
necessarily present */
@@ -542,7 +554,7 @@
return -1;
}
} else
-#endif
+//#endif
{
pstrcat(buf, sizeof(buf), module_name);
}
@@ -2638,18 +2650,6 @@
return JS_NewInt32(ctx, ret);
}
-#if defined(_WIN32)
-static char *realpath(const char *path, char *buf)
-{
- if (!_fullpath(buf, path, PATH_MAX)) {
- errno = ENOENT;
- return NULL;
- } else {
- return buf;
- }
-}
-#endif
-
/* return [path, errorcode] */
static JSValue js_os_realpath(JSContext *ctx, JSValueConst this_val,
int argc, JSValueConst *argv)