From f9f3c09136ca0e3c816d8fc86529229193dd2bd9 Mon Sep 17 00:00:00 2001 From: Nick Carducci Date: Wed, 22 Jun 2022 09:10:32 -0400 Subject: [PATCH] Remove str-to-func eval of named function factory return the object key [name] as caller.name of the new function --- src/embind/embind.js | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/src/embind/embind.js b/src/embind/embind.js index 59bbb7a490c3d..df98fd6a42819 100644 --- a/src/embind/embind.js +++ b/src/embind/embind.js @@ -199,21 +199,11 @@ var LibraryEmbind = { $createNamedFunction__deps: ['$makeLegalFunctionName'], $createNamedFunction: function(name, body) { name = makeLegalFunctionName(name); -#if DYNAMIC_EXECUTION == 0 - return function() { - "use strict"; - return body.apply(this, arguments); - }; -#else - /*jshint evil:true*/ - return new Function( - "body", - "return function " + name + "() {\n" + - " \"use strict\";" + - " return body.apply(this, arguments);\n" + - "};\n" - )(body); -#endif + return { + [name]: function () { + return body.apply(body, arguments); + } + }[name]; }, embind_repr: function(v) {