From: dongsug.song Date: Mon, 23 Sep 2019 04:00:25 +0000 (+0900) Subject: Revert "Ensure all Application::New methods: Use pointers to the static argC & argV... X-Git-Tag: accepted/tizen/unified/20190924.071800~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3e6c8760dffe2ed72a4d8debc1a1d24dc08ae2ef;p=platform%2Fcore%2Fuifw%2Fdali-csharp-binder.git Revert "Ensure all Application::New methods: Use pointers to the static argC & argV variables rather than local" This reverts commit c13f77c172aa1f5623141472e5123f920d6065f2. Change-Id: I393ef79303cf3d48753ce1d8fcaa00b886f32d4e --- diff --git a/dali-csharp-binder/src/application.cpp b/dali-csharp-binder/src/application.cpp index 4f26efe..a959f16 100755 --- a/dali-csharp-binder/src/application.cpp +++ b/dali-csharp-binder/src/application.cpp @@ -1,4 +1,4 @@ -/** Copyright (c) 2019 Samsung Electronics Co., Ltd. +/** Copyright (c) 2017 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,12 +28,10 @@ typedef char * (SWIGSTDCALL* SWIG_CSharpStringHelperCallback)(const char *); extern SWIG_CSharpStringHelperCallback SWIG_csharp_string_callback; -namespace -{ + // keep argcs and argv so they're always available to DALi -int gArgC = 0; -char** gArgV = nullptr; -} // unnamed namespace +int argC = 1; +char **argV = NULL; SWIGINTERN bool Dali_Signal_Sl_void_Sp_Dali_DeviceStatus_Battery_Status_SP__Sg__Empty(Dali::Signal< void (Dali::DeviceStatus::Battery::Status) > const *self){ return self->Empty(); @@ -140,22 +138,25 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__SWIG_0() { SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__SWIG_1(int jarg1) { void * jresult ; + int arg1 = 1; + char ***arg2; Dali::Application result; { std::string app_name = "dali-csharp-app"; int stringLength = app_name.length(); - gArgC = 1; - gArgV = new char*[gArgC + 1]; - gArgV[0] = new char[stringLength + 1]; + argV = new char*[arg1 + 1]; + argV[0] = new char[stringLength + 1]; + + strncpy(argV[0], app_name.c_str(), stringLength); + argV[0][stringLength] = '\0'; + argV[1] = NULL; - strncpy(gArgV[0], app_name.c_str(), stringLength); - gArgV[0][stringLength] = '\0'; - gArgV[1] = NULL; + arg2 = &argV; } { try { - result = Dali::Application::New( &gArgC, &gArgV ); + result = Dali::Application::New(&arg1, arg2); } catch (std::out_of_range& e) { { SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; @@ -182,32 +183,35 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__SWIG_1(int jarg1) { SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__SWIG_2(int jarg1, char * jarg3) { void * jresult ; + int arg1 = 1; + char ***arg2; std::string *arg3 = 0; Dali::Application result; { std::string app_name = "dali-csharp-app"; int stringLength = app_name.length(); - gArgC = 1; - gArgV = new char*[gArgC + 1]; - gArgV[0] = new char[stringLength + 1]; + argV = new char*[arg1 + 1]; + argV[0] = new char[stringLength + 1]; + + strncpy(argV[0], app_name.c_str(), stringLength); + argV[0][stringLength] = '\0'; + argV[1] = NULL; + + arg2 = &argV; - strncpy(gArgV[0], app_name.c_str(), stringLength); - gArgV[0][stringLength] = '\0'; - gArgV[1] = NULL; } if (!jarg3) { SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0); - delete []gArgV[0]; - delete []gArgV; - gArgV = nullptr; + delete []argV[0]; + delete []argV; return 0; } std::string arg3_str(jarg3); arg3 = &arg3_str; { try { - result = Dali::Application::New( &gArgC, &gArgV, (std::string const &)*arg3 ); + result = Dali::Application::New(&arg1, arg2,(std::string const &)*arg3); } catch (std::out_of_range& e) { { SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; @@ -237,32 +241,36 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__SWIG_2(int jarg1, cha SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__SWIG_3(int jarg1, char * jarg3, int jarg4) { void * jresult ; + int arg1 = 1; + char ***arg2; + std::string *arg3 = 0; Dali::Application::WINDOW_MODE arg4; Dali::Application result; { std::string app_name = "dali-csharp-app"; int stringLength = app_name.length(); - gArgC = 1; - gArgV = new char*[gArgC + 1]; - gArgV[0] = new char[stringLength + 1]; + argV = new char*[arg1 + 1]; + argV[0] = new char[stringLength + 1]; + + strncpy(argV[0], app_name.c_str(), stringLength); + argV[0][stringLength] = '\0'; + argV[1] = NULL; - strncpy(gArgV[0], app_name.c_str(), stringLength); - gArgV[0][stringLength] = '\0'; - gArgV[1] = NULL; + arg2 = &argV; } if (!jarg3) { SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0); - delete []gArgV[0]; - delete []gArgV; - gArgV = nullptr; + delete []argV[0]; + delete []argV; return 0; } - std::string arg3(jarg3); + std::string arg3_str(jarg3); + arg3 = &arg3_str; arg4 = (Dali::Application::WINDOW_MODE)jarg4; { try { - result = Dali::Application::New( &gArgC, &gArgV, arg3, arg4 ); + result = Dali::Application::New(&arg1, arg2,(std::string const &)*arg3,arg4); } catch (std::out_of_range& e) { { SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; @@ -294,6 +302,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__MANUAL_4(int jarg1, c void * jresult ; int *arg1 = (int *) 0 ; char ***arg2 ; + std::string *arg3 = 0 ; Dali::Application::WINDOW_MODE arg4 ; Dali::Application result; { @@ -303,7 +312,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__MANUAL_4(int jarg1, c char *retPtr = NULL; char *nextPtr; - gArgV = new char*[jarg1 + 1]; + argV = new char*[jarg1 + 1]; for(retPtr = strtok_r(jarg2, " ", &nextPtr); retPtr != NULL && index < jarg1; @@ -311,31 +320,32 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__MANUAL_4(int jarg1, c { length = 0; length = strlen(retPtr); - gArgV[ index ] = new char[ length + 1 ]; - strncpy( gArgV[ index ], retPtr, length ); - gArgV[ index ][ length ] = '\0'; + argV[ index ] = new char[ length + 1 ]; + strncpy( argV[ index ], retPtr, length ); + argV[ index ][ length ] = '\0'; index++; } while( index < jarg1 ) { //if jarg1 - index >1, maybe cause error. - gArgV[index] = NULL; + argV[index] = NULL; index++; } - gArgV[jarg1] = NULL; - gArgC = jarg1; + argV[jarg1] = NULL; + argC = jarg1; - arg1 = &gArgC; - arg2 = &gArgV; + arg1 = &argC; + arg2 = &argV; } - std::string arg3(jarg3); + std::string arg3_str(jarg3); + arg3 = &arg3_str; arg4 = (Dali::Application::WINDOW_MODE)jarg4; { try { - result = Dali::Application::New( arg1, arg2, arg3, arg4); + result = Dali::Application::New(arg1,arg2,(std::string const &)*arg3,arg4); } catch (std::out_of_range& e) { { SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; @@ -472,14 +482,14 @@ SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Application(void * jarg1) { { try { delete arg1; - if( gArgV ) + if( argV ) { // free string data - for( int i=0; i < gArgC+1; i++) + for( int i=0; i < argC+1; i++) { - delete [] gArgV[i]; + delete [] argV[i]; } - delete [] gArgV; + delete [] argV; } } catch (std::out_of_range& e) { { @@ -2273,6 +2283,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__SWIG_4(int jarg1, cha void * jresult ; int *arg1 = (int *) 0 ; char ***arg2 ; + std::string *arg3 = 0 ; Dali::Application::WINDOW_MODE arg4 ; Dali::PositionSize arg5 ; Dali::PositionSize *argp5 ; @@ -2288,7 +2299,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__SWIG_4(int jarg1, cha SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "array is null", 0); return 0; } - gArgV = array; + argV = array; // allocate the string data for( int i=0; i < numStrings; i++) @@ -2305,14 +2316,15 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__SWIG_4(int jarg1, cha } array[0][temp.copy(array[0], strlen(array[0])-1)] = '\0'; - arg1 = &gArgC; - arg2 = &gArgV; + arg1 = &argC; + arg2 = &argV; } if (!jarg3) { SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null string", 0); return 0; } - std::string arg3(jarg3); + std::string arg3_str(jarg3); + arg3 = &arg3_str; arg4 = (Dali::Application::WINDOW_MODE)jarg4; argp5 = (Dali::PositionSize *)jarg5; if (!argp5) { @@ -2322,7 +2334,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New__SWIG_4(int jarg1, cha arg5 = *argp5; { try { - result = Dali::Application::New( arg1, arg2, arg3, arg4, arg5 ); + result = Dali::Application::New(arg1,arg2,(std::string const &)*arg3,arg4,arg5); } catch (std::out_of_range& e) { { SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0; @@ -2352,6 +2364,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New_WithWindowSizePosition void * jresult ; int *arg1 = (int *) 0 ; char ***arg2 ; + std::string *arg3 = 0 ; Dali::Application::WINDOW_MODE arg4 ; Dali::PositionSize arg5 ; Dali::PositionSize *argp5 ; @@ -2362,7 +2375,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New_WithWindowSizePosition char *retPtr = NULL; char *nextPtr; - gArgV = new char*[jarg1 + 1]; + argV = new char*[jarg1 + 1]; for(retPtr = strtok_r(jarg2, " ", &nextPtr); retPtr != NULL && index < jarg1; @@ -2370,27 +2383,28 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New_WithWindowSizePosition { length = 0; length = strlen(retPtr); - gArgV[ index ] = new char[ length + 1 ]; - strncpy( gArgV[ index ], retPtr, length ); - gArgV[ index ][ length ] = '\0'; + argV[ index ] = new char[ length + 1 ]; + strncpy( argV[ index ], retPtr, length ); + argV[ index ][ length ] = '\0'; index++; } while( index < jarg1 ) { //if jarg1 - index >1, maybe cause error. - gArgV[index] = NULL; + argV[index] = NULL; index++; } - gArgV[jarg1] = NULL; - gArgC = jarg1; + argV[jarg1] = NULL; + argC = jarg1; - arg1 = &gArgC; - arg2 = &gArgV; + arg1 = &argC; + arg2 = &argV; } - std::string arg3(jarg3); + std::string arg3_str(jarg3); + arg3 = &arg3_str; arg4 = (Dali::Application::WINDOW_MODE)jarg4; argp5 = (Dali::PositionSize *)jarg5; if (!argp5) { @@ -2400,7 +2414,7 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_Application_New_WithWindowSizePosition arg5 = *argp5; { try { - result = Dali::Application::New( arg1, arg2, arg3, arg4, arg5 ); + result = Dali::Application::New(arg1,arg2,(std::string const &)*arg3,arg4,arg5); } catch (std::out_of_range& e) { { SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); return 0;