Skip to content

Commit 6c75e44

Browse files
Version 5.3.7: Fixed V8ScriptEngine compiled script evaluation result marshaling (Issue ClearFoundry#16), added a test for the fix, cleared PYTHONPATH in V8Update. Tested with V8 3.21.2.
1 parent 21f490f commit 6c75e44

10 files changed

Lines changed: 28 additions & 17 deletions

File tree

ClearScript/Exports/VersionSymbols.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,5 +63,5 @@
6363

6464
#pragma once
6565

66-
#define CLEARSCRIPT_VERSION_STRING "5.3.6.0"
67-
#define CLEARSCRIPT_VERSION_COMMA_SEPARATED 5,3,6,0
66+
#define CLEARSCRIPT_VERSION_STRING "5.3.7.0"
67+
#define CLEARSCRIPT_VERSION_COMMA_SEPARATED 5,3,7,0

ClearScript/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,5 +73,5 @@
7373
[assembly: InternalsVisibleTo("ClearScriptTest")]
7474

7575
[assembly: ComVisible(false)]
76-
[assembly: AssemblyVersion("5.3.6.0")]
77-
[assembly: AssemblyFileVersion("5.3.6.0")]
76+
[assembly: AssemblyVersion("5.3.7.0")]
77+
[assembly: AssemblyFileVersion("5.3.7.0")]

ClearScript/V8/V8/V8Patch.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Index: src/utils.h
22
===================================================================
3-
--- src/utils.h (revision 16178)
3+
--- src/utils.h (revision 16272)
44
+++ src/utils.h (working copy)
55
@@ -109,7 +109,7 @@
66
// These are kind of 2's complement reciprocal of the divisors.
@@ -13,7 +13,7 @@ Index: src/utils.h
1313
// lithium-codegen-arm.cc : LCodeGen::TryEmitSignedIntegerDivisionByConstant().
1414
Index: tools/gyp/v8.gyp
1515
===================================================================
16-
--- tools/gyp/v8.gyp (revision 16178)
16+
--- tools/gyp/v8.gyp (revision 16272)
1717
+++ tools/gyp/v8.gyp (working copy)
1818
@@ -33,6 +33,7 @@
1919
'targets': [

ClearScript/V8/V8ScriptEngine.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -364,7 +364,7 @@ public object Evaluate(V8Script script)
364364
MiscHelpers.VerifyNonNullArgument(script, "script");
365365
VerifyNotDisposed();
366366

367-
return ScriptInvoke(() =>
367+
return MarshalToHost(ScriptInvoke(() =>
368368
{
369369
var stateObjects = new object[2];
370370
using (var timer = new Timer(OnContinuationTimer, stateObjects, Timeout.Infinite, Timeout.Infinite))
@@ -374,7 +374,7 @@ public object Evaluate(V8Script script)
374374
timer.Change(continuationInterval, Timeout.Infinite);
375375
return proxy.Execute(script);
376376
}
377-
});
377+
}), false);
378378
}
379379

380380
// ReSharper restore ParameterHidesMember

ClearScriptBenchmarks/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,5 +69,5 @@
6969
[assembly: AssemblyCopyright("(c) Microsoft Corporation")]
7070

7171
[assembly: ComVisible(false)]
72-
[assembly: AssemblyVersion("5.3.6.0")]
73-
[assembly: AssemblyFileVersion("5.3.6.0")]
72+
[assembly: AssemblyVersion("5.3.7.0")]
73+
[assembly: AssemblyFileVersion("5.3.7.0")]

ClearScriptConsole/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,5 +69,5 @@
6969
[assembly: AssemblyCopyright("(c) Microsoft Corporation")]
7070

7171
[assembly: ComVisible(false)]
72-
[assembly: AssemblyVersion("5.3.6.0")]
73-
[assembly: AssemblyFileVersion("5.3.6.0")]
72+
[assembly: AssemblyVersion("5.3.7.0")]
73+
[assembly: AssemblyFileVersion("5.3.7.0")]

ClearScriptTest/BugFixTest.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,6 +244,16 @@ public void BugFix_AutoInt64FromDouble()
244244
Assert.AreEqual((long)int.MaxValue * 123 + 1, engine.Evaluate("Int32.MaxValue * 123 + 1"));
245245
}
246246

247+
[TestMethod, TestCategory("BugFix")]
248+
public void BugFix_CompiledScriptResult()
249+
{
250+
engine.Script.host = new HostFunctions();
251+
using (var script = ((V8ScriptEngine)engine).Compile("host"))
252+
{
253+
Assert.IsInstanceOfType(((V8ScriptEngine)engine).Evaluate(script), typeof(HostFunctions));
254+
}
255+
}
256+
247257
// ReSharper restore InconsistentNaming
248258

249259
#endregion

ClearScriptTest/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,5 +69,5 @@
6969
[assembly: AssemblyCopyright("(c) Microsoft Corporation")]
7070

7171
[assembly: ComVisible(false)]
72-
[assembly: AssemblyVersion("5.3.6.0")]
73-
[assembly: AssemblyFileVersion("5.3.6.0")]
72+
[assembly: AssemblyVersion("5.3.7.0")]
73+
[assembly: AssemblyFileVersion("5.3.7.0")]

V8Update.cmd

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ setlocal
55
:: process arguments
66
::-----------------------------------------------------------------------------
77

8-
set testedRevision=16178
9-
set testedVersion=3.20.16
8+
set testedRevision=16272
9+
set testedVersion=3.21.2
1010

1111
:ProcessArgs
1212

@@ -161,6 +161,7 @@ cd ..
161161

162162
set GYP_MSVS_VERSION=2012
163163
set PYTHONHOME=
164+
set PYTHONPATH=
164165

165166
:Copy32Bit
166167
echo Building 32-bit V8 ...

Version.tt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<# var version = new Version(5, 3, 6, 0); #>
1+
<# var version = new Version(5, 3, 7, 0); #>

0 commit comments

Comments
 (0)