From f70a1bfc721336d4fc7dfb711c2f518a6b18cf16 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 30 Sep 2020 17:27:54 +0100 Subject: gentoo resync : 30.09.2020 --- dev-lang/gdl/files/0.9.6-fun-fix.patch | 56 ---------------------------------- 1 file changed, 56 deletions(-) delete mode 100644 dev-lang/gdl/files/0.9.6-fun-fix.patch (limited to 'dev-lang/gdl/files/0.9.6-fun-fix.patch') diff --git a/dev-lang/gdl/files/0.9.6-fun-fix.patch b/dev-lang/gdl/files/0.9.6-fun-fix.patch deleted file mode 100644 index a3a4118ceb0a..000000000000 --- a/dev-lang/gdl/files/0.9.6-fun-fix.patch +++ /dev/null @@ -1,56 +0,0 @@ -Author: Vitaliy Tomin -Description: Fix direct calling of direct function calls from Python -Bug: https://sourceforge.net/p/gnudatalanguage/bugs/678 ---- a/src/pythongdl.cpp -+++ b/src/pythongdl.cpp -@@ -392,25 +392,31 @@ - - BaseGDL* retValGDL = NULL; - Guard retValGDL_guard; -- if( functionCall) -- { -- if( libCall) -- retValGDL = static_cast(static_cast(e)-> -- GetPro())->Fun()( static_cast(e)); -- else -- retValGDL = interpreter->call_fun(static_cast -- (static_cast(e) -- ->GetPro())->GetTree()); -- retValGDL_guard.Reset( retValGDL); -- } -- else -- { -- if( libCall) -- static_cast(e->GetPro())->Pro()(static_cast(e)); // throws -- else -- interpreter->call_pro(static_cast -- (e->GetPro())->GetTree()); //throws -- } -+ -+ if (functionCall) { -+ DLibFun* sub_fun_chk = dynamic_cast(static_cast(e)->GetPro()); -+ if (sub_fun_chk) { -+ //handle direct call function first -+ if (sub_fun_chk->DirectCall()) { -+ BaseGDL* directCallParameter = e->GetParDefined(0); -+ retValGDL = static_cast(sub_fun_chk)->FunDirect()(directCallParameter, true /*isReference*/); -+ } -+ } else if (libCall) -+ retValGDL = static_cast(static_cast(e)->GetPro()) -+ ->Fun()(static_cast(e)); -+ else -+ retValGDL = interpreter->call_fun( -+ static_cast(static_cast(e)->GetPro()) -+ ->GetTree()); -+ retValGDL_guard.Reset(retValGDL); -+ } else { -+ if (libCall) -+ static_cast(e->GetPro()) -+ ->Pro()(static_cast(e)); // throws -+ else -+ interpreter->call_pro( -+ static_cast(e->GetPro())->GetTree()); // throws -+ } - - // copy back args and keywords - success = CopyArgToPython( parRef, kwRef, *e, argTuple, kwDict); -- cgit v1.2.3