fix(node:path): toNamespacedPath bugfix (#11406)

This commit is contained in:
Dylan Conway
2024-05-27 15:36:54 -07:00
committed by GitHub
parent 856654a065
commit 06231b51bd
2 changed files with 4 additions and 2 deletions

View File

@@ -4766,7 +4766,7 @@ pub const Path = struct {
buf[3] = CHAR_BACKWARD_SLASH;
return MaybeSlice(T){ .result = buf[0..bufSize] };
}
return MaybeSlice(T){ .result = path };
return MaybeSlice(T){ .result = resolvedPath };
}
pub inline fn toNamespacedPathWindowsJS_T(comptime T: type, globalObject: *JSC.JSGlobalObject, path: []const T, buf: []T, buf2: []T) JSC.JSValue {

View File

@@ -61,7 +61,9 @@ describe("path.toNamespacedPath", () => {
assert.strictEqual(path.win32.toNamespacedPath("C:/foo"), "\\\\?\\C:\\foo");
assert.strictEqual(path.win32.toNamespacedPath("\\\\foo\\bar"), "\\\\?\\UNC\\foo\\bar\\");
assert.strictEqual(path.win32.toNamespacedPath("//foo//bar"), "\\\\?\\UNC\\foo\\bar\\");
assert.strictEqual(path.win32.toNamespacedPath("\\\\?\\foo"), "\\\\?\\foo");
assert.strictEqual(path.win32.toNamespacedPath("\\\\?\\foo\\"), "\\\\?\\foo\\");
assert.strictEqual(path.win32.toNamespacedPath("\\\\?\\foo"), "\\\\?\\foo\\");
assert.strictEqual(path.win32.toNamespacedPath("\\\\?\\c:\\Windows/System"), "\\\\?\\c:\\Windows\\System");
assert.strictEqual(path.win32.toNamespacedPath(null), null);
assert.strictEqual(path.win32.toNamespacedPath(true), true);
assert.strictEqual(path.win32.toNamespacedPath(1), 1);