Skip to content

Commit 2cacc06

Browse files
committed
In JavaScriptEngineSwitcher.Jint the implementation of script interruption has been refactored
1 parent eca7f4b commit 2cacc06

File tree

4 files changed

+6
-42
lines changed

4 files changed

+6
-42
lines changed

src/JavaScriptEngineSwitcher.Jint/CustomCancellationConstraint.cs

Lines changed: 0 additions & 36 deletions
This file was deleted.

src/JavaScriptEngineSwitcher.Jint/JavaScriptEngineSwitcher.Jint.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<Description>JavaScriptEngineSwitcher.Jint contains adapter `JintJsEngine` (wrapper for the Jint JavaScript Engine (http://github.com/sebastienros/jint) version 3.0.0 Beta 2041).</Description>
2222
<PackageTags>$(PackageCommonTags);Jint</PackageTags>
2323
<PackageIconFullPath>../../Icons/JavaScriptEngineSwitcher_Jint_Logo128x128.png</PackageIconFullPath>
24-
<PackageReleaseNotes>Jint was updated to version 3.0.0 Beta 2041.</PackageReleaseNotes>
24+
<PackageReleaseNotes>Implementation of script interruption has been refactored.</PackageReleaseNotes>
2525
</PropertyGroup>
2626

2727
<ItemGroup>

src/JavaScriptEngineSwitcher.Jint/JintJsEngine.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
using Jint;
55
using IOriginalPrimitiveInstance = Jint.Native.IPrimitiveInstance;
6+
using OriginalCancellationConstraint = Jint.Constraints.CancellationConstraint;
67
using OriginalDebuggerEventHandler = Jint.Runtime.Debugger.DebugHandler.DebugEventHandler;
78
using OriginalDebuggerStatementHandlingMode = Jint.Runtime.Debugger.DebuggerStatementHandling;
89
using OriginalEngine = Jint.Engine;
@@ -64,7 +65,7 @@ public sealed class JintJsEngine : JsEngineBase
6465
/// <summary>
6566
/// Constraint for canceling of script execution
6667
/// </summary>
67-
private CustomCancellationConstraint _cancellationConstraint;
68+
private OriginalCancellationConstraint _cancellationConstraint;
6869

6970
/// <summary>
7071
/// Debugger break callback
@@ -102,7 +103,6 @@ public JintJsEngine()
102103
public JintJsEngine(JintSettings settings)
103104
{
104105
_cancellationTokenSource = new CancellationTokenSource();
105-
_cancellationConstraint = new CustomCancellationConstraint(_cancellationTokenSource.Token);
106106

107107
JintSettings jintSettings = settings ?? new JintSettings();
108108
_debuggerBreakCallback = jintSettings.DebuggerBreakCallback;
@@ -114,8 +114,7 @@ public JintJsEngine(JintSettings settings)
114114
{
115115
_jsEngine = new OriginalEngine(options => {
116116
options
117-
.WithoutConstraint(c => c is CustomCancellationConstraint)
118-
.Constraint(_cancellationConstraint)
117+
.CancellationToken(_cancellationTokenSource.Token)
119118
.DebuggerStatementHandling(debuggerStatementHandlingMode)
120119
.DebugMode(jintSettings.EnableDebugging)
121120
.LimitMemory(jintSettings.MemoryLimit)
@@ -134,6 +133,7 @@ public JintJsEngine(JintSettings settings)
134133

135134
options.AddObjectConverter(new UndefinedConverter());
136135
});
136+
_cancellationConstraint = _jsEngine.FindConstraint<OriginalCancellationConstraint>();
137137
if (_debuggerBreakCallback != null)
138138
{
139139
_jsEngine.DebugHandler.Break += _debuggerBreakCallback;

src/JavaScriptEngineSwitcher.Jint/readme.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
=============
1919
RELEASE NOTES
2020
=============
21-
Jint was updated to version 3.0.0 Beta 2041.
21+
Implementation of script interruption has been refactored.
2222

2323
=============
2424
DOCUMENTATION

0 commit comments

Comments
 (0)