From 5771789bb255a76153a6b59853e244d7c91fbde2 Mon Sep 17 00:00:00 2001 From: "dongsug.song" Date: Fri, 12 May 2017 17:13:18 +0900 Subject: [PATCH] SVACE issue fix Change-Id: Id1d0b720d30ea03774d266b0467f9ae7c9fb356a Signed-off-by: dongsug.song --- dali-csharp-binder/src/event-thread-callback-wrap.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/dali-csharp-binder/src/event-thread-callback-wrap.cpp b/dali-csharp-binder/src/event-thread-callback-wrap.cpp index ced564b..dc6a729 100755 --- a/dali-csharp-binder/src/event-thread-callback-wrap.cpp +++ b/dali-csharp-binder/src/event-thread-callback-wrap.cpp @@ -32,24 +32,30 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_EventThreadCallback(SWIG_CallbackM void * jresult ; void (*arg1)(void) = (void (*)(void)) 0 ; Dali::EventThreadCallback *result = 0 ; + Dali::CallbackBase * callbackBase = 0 ; arg1 = (void (*)(void))callbackOnMakeCallback; + callbackBase = (Dali::CallbackBase *)Dali::MakeCallback(arg1); + { try { - result = (Dali::EventThreadCallback *)new Dali::EventThreadCallback((Dali::CallbackBase *)Dali::MakeCallback(arg1)); + result = (Dali::EventThreadCallback *)new Dali::EventThreadCallback(callbackBase); } catch (std::out_of_range& e) { { delete result; + delete callbackBase; SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; }; } catch (std::exception& e) { { delete result; + delete callbackBase; SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); return 0; }; } catch (...) { { delete result; + delete callbackBase; SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0; }; } -- 2.7.4