X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSIGNALSComponent%2FSIGNALSComponent_CheckOfUndefined.cxx;h=0f97f6bd3ba2ea47111f66dfb07f77ad44b02010;hb=c8b736c5c4f3a60ebca7bd3950fbe4efb7db453e;hp=d3542b22b24f0d0c797232fabf9cdfa1c9caea2e;hpb=f0480a664feded8f0c8714c5e5666553a99047b3;p=samples%2Fcomponent.git diff --git a/src/SIGNALSComponent/SIGNALSComponent_CheckOfUndefined.cxx b/src/SIGNALSComponent/SIGNALSComponent_CheckOfUndefined.cxx index d3542b2..0f97f6b 100644 --- a/src/SIGNALSComponent/SIGNALSComponent_CheckOfUndefined.cxx +++ b/src/SIGNALSComponent/SIGNALSComponent_CheckOfUndefined.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -65,6 +65,15 @@ using namespace std; extern "C" void HandleServerSideSignals(CORBA::ORB_ptr theORB); + +#if PY_VERSION_HEX < 0x03050000 +static wchar_t* +Py_DecodeLocale(const char *arg, size_t *size) +{ + return _Py_char2wchar(arg, size); +} +#endif + int main(int argc, char* argv[]) { #ifdef HAVE_MPI2 @@ -95,8 +104,12 @@ int main(int argc, char* argv[]) } else { + wchar_t **changed_argv = new wchar_t*[argc]; + for (int i = 0; i < argc; i++) { + changed_argv[i] = Py_DecodeLocale(argv[i], NULL); + } Py_Initialize() ; - PySys_SetArgv( argc , argv ) ; + PySys_SetArgv( argc , changed_argv ) ; } char *containerName = "";