Skip to content

Commit 0bf50b0

Browse files
committed
1 parent cee35ad commit 0bf50b0

2 files changed

Lines changed: 52 additions & 0 deletions

File tree

patches/node/.patches

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,4 @@ fix_-wincompatible-pointer-types-discards-qualifiers_error.patch
2929
fix_add_v8_enable_reverse_jsargs_defines_in_common_gypi.patch
3030
fix_allow_preventing_initializeinspector_in_env.patch
3131
src_allow_embedders_to_provide_a_custom_pageallocator_to.patch
32+
remove_makeexternal_case_for_uncached_internal_strings.patch
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
2+
From: Shelley Vohr <[email protected]>
3+
Date: Tue, 8 Dec 2020 19:55:41 -0800
4+
Subject: Remove MakeExternal case for uncached internal strings
5+
6+
https://chromium-review.googlesource.com/c/v8/v8/+/2565511
7+
8+
V8 removed a case where we can make an uncached internal string
9+
through MakeExternal - to fix this we make the strings bigger so as to
10+
make then internal & external & not uncached (i.e. cached).
11+
12+
diff --git a/test/parallel/test-fs-write.js b/test/parallel/test-fs-write.js
13+
index a6724eac300d16a36ca0e64788516adb9d6f6536..e152383b56c6f2791852d5f9fb151693c2d962a6 100644
14+
--- a/test/parallel/test-fs-write.js
15+
+++ b/test/parallel/test-fs-write.js
16+
@@ -40,7 +40,7 @@ const constants = fs.constants;
17+
common.allowGlobals(externalizeString, isOneByteString, x);
18+
19+
{
20+
- const expected = 'ümlaut eins'; // Must be a unique string.
21+
+ const expected = 'ümlaut sechzig'; // Must be a unique string.
22+
externalizeString(expected);
23+
assert.strictEqual(isOneByteString(expected), true);
24+
const fd = fs.openSync(fn, 'w');
25+
@@ -50,7 +50,7 @@ common.allowGlobals(externalizeString, isOneByteString, x);
26+
}
27+
28+
{
29+
- const expected = 'ümlaut zwei'; // Must be a unique string.
30+
+ const expected = 'ümlaut neunzig'; // Must be a unique string.
31+
externalizeString(expected);
32+
assert.strictEqual(isOneByteString(expected), true);
33+
const fd = fs.openSync(fn, 'w');
34+
@@ -60,7 +60,7 @@ common.allowGlobals(externalizeString, isOneByteString, x);
35+
}
36+
37+
{
38+
- const expected = '中文 1'; // Must be a unique string.
39+
+ const expected = 'Zhōngwén 1'; // Must be a unique string.
40+
externalizeString(expected);
41+
assert.strictEqual(isOneByteString(expected), false);
42+
const fd = fs.openSync(fn, 'w');
43+
@@ -70,7 +70,7 @@ common.allowGlobals(externalizeString, isOneByteString, x);
44+
}
45+
46+
{
47+
- const expected = '中文 2'; // Must be a unique string.
48+
+ const expected = 'Zhōngwén 2'; // Must be a unique string.
49+
externalizeString(expected);
50+
assert.strictEqual(isOneByteString(expected), false);
51+
const fd = fs.openSync(fn, 'w');

0 commit comments

Comments
 (0)