summaryrefslogtreecommitdiff
path: root/cli/tools/repl/session.rs
diff options
context:
space:
mode:
authorsafaa-mojahed <42294003+safaa-mojahed@users.noreply.github.com>2024-06-18 04:34:25 +0300
committerGitHub <noreply@github.com>2024-06-17 21:34:25 -0400
commit4b83ce8acabaf868d47bf764fce18ce5450fd314 (patch)
tree9099e57abc1a0564462ec3d8864a22fae4adc6fb /cli/tools/repl/session.rs
parent6819c3d7f6b1f4314e3b88072c3ca2ef8f3bb358 (diff)
fix(repl): prevent panic when deleting globalThis.closed property (#24014)
Diffstat (limited to 'cli/tools/repl/session.rs')
-rw-r--r--cli/tools/repl/session.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/cli/tools/repl/session.rs b/cli/tools/repl/session.rs
index b122713c0..f8c670a7f 100644
--- a/cli/tools/repl/session.rs
+++ b/cli/tools/repl/session.rs
@@ -99,6 +99,9 @@ Object.defineProperty(globalThis, "{0}", {{
lastThrownError: undefined,
inspectArgs: Deno[Deno.internal].inspectArgs,
noColor: Deno.noColor,
+ get closed() {{
+ return typeof globalThis.closed === 'undefined' ? false : globalThis.closed;
+ }}
}},
}});
Object.defineProperty(globalThis, "_", {{
@@ -299,8 +302,9 @@ impl ReplSession {
}
pub async fn closing(&mut self) -> Result<bool, AnyError> {
+ let expression = format!(r#"{}.closed"#, *REPL_INTERNALS_NAME);
let closed = self
- .evaluate_expression("(this.closed)")
+ .evaluate_expression(&expression)
.await?
.result
.value