Skip to content

Commit 1edfe13

Browse files
committed
fix(repl): prevent multiple concurrent REPL executions
1 parent a169d86 commit 1edfe13

1 file changed

Lines changed: 9 additions & 1 deletion

File tree

  • packages/repl/src/robotcode/repl

packages/repl/src/robotcode/repl/run.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ def __init__(self, app: Application, interpreter: BaseInterpreter) -> None:
3434
ReplListener.instance = self
3535
self.app = app
3636
self.interpreter = interpreter
37+
self._in_repl = False
3738

3839
def start_keyword(
3940
self,
@@ -43,7 +44,14 @@ def start_keyword(
4344
if name != "robotcode.repl.Repl.Repl":
4445
return
4546

46-
self.interpreter.run()
47+
if self._in_repl:
48+
return
49+
50+
self._in_repl = True
51+
try:
52+
self.interpreter.run()
53+
finally:
54+
self._in_repl = False
4755

4856

4957
def run_repl(

0 commit comments

Comments
 (0)