PY-57485 Execute expression if not coroutine

Needed for saving new variables from execute expression command

GitOrigin-RevId: 8394ebea45dd14b27de7fd6dc085d908a8980299
This commit is contained in:
Egor Eliseev
2022-11-25 16:13:06 +02:00
committed by intellij-monorepo-bot
parent 2e04f3fc5a
commit 4e777d7b67

View File

@@ -1,6 +1,7 @@
# Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
from _pydevd_bundle.pydevd_constants import IS_ASYNCIO_DEBUGGER_ENV, IS_ASYNCIO_REPL
from _pydevd_bundle.pydevd_exec2 import Exec
from _pydev_bundle.pydev_log import warn
eval_async_expression_in_context = None
@@ -89,6 +90,7 @@ if IS_ASYNCIO_DEBUGGER_ENV or IS_ASYNCIO_REPL:
return exception_handler(expression, locals)
result = exec_async_code(compiled, global_names)
if compilation_flag == EXEC_SYMBOL:
Exec(expression, global_names, frame.f_locals)
pydevd_save_locals.save_locals(frame)
return result
except (OverflowError, SyntaxError, ValueError):