From a0da9c61117bcafec5db18768f4b258cfd7ed8a0 Mon Sep 17 00:00:00 2001 From: Gabriel Almeida Date: Tue, 18 Apr 2023 21:27:47 -0300 Subject: [PATCH] refactor(validate.py): filter function objects by filename to ensure they are from the evaluated string --- src/backend/langflow/utils/validate.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/backend/langflow/utils/validate.py b/src/backend/langflow/utils/validate.py index af5ddea3c..d1353bd77 100644 --- a/src/backend/langflow/utils/validate.py +++ b/src/backend/langflow/utils/validate.py @@ -59,7 +59,12 @@ def eval_function(function_string: str): # Execute the code string in the new namespace exec(function_string, namespace) function_object = next( - (obj for name, obj in namespace.items() if isinstance(obj, types.FunctionType)), + ( + obj + for name, obj in namespace.items() + if isinstance(obj, types.FunctionType) + and obj.__code__.co_filename == "" + ), None, ) if function_object is None: