Merge remote-tracking branch 'origin/master' into windows
[scilab.git] / scilab / modules / dynamic_link / sci_gateway / cpp / sci_link.cpp
index 1112a20..022d322 100644 (file)
@@ -38,11 +38,11 @@ types::Double* getLibraryIDs(void);
 /*-----------------------------------------------------------------------------------*/
 types::Function::ReturnValue sci_link(types::typed_list &in, int _iRetCount, types::typed_list &out)
 {
-    int iSizeSubNames       = 0;
-    wchar_t** pwstSubNames  = NULL;
-    wchar_t* pwstLibName    = NULL;
-    BOOL bFortran           = TRUE;
-    int iIDSharedLib        = -1;
+    int iSizeSubNames = 0;
+    char** pstSubNames = NULL;
+    char* pstLibName = NULL;
+    BOOL bFortran = TRUE;
+    int iIDSharedLib = -1;
 
     if (in.size() > 3)
     {
@@ -52,7 +52,7 @@ types::Function::ReturnValue sci_link(types::typed_list &in, int _iRetCount, typ
 
     if (in.size() == 0)
     {
-        std::vector<std::wstring> FunctionsList = ConfigVariable::getEntryPointNameList();
+        std::vector<std::string> FunctionsList = ConfigVariable::getEntryPointNameList();
         if (FunctionsList.size() == 0)
         {
             out.push_back(types::Double::Empty());
@@ -62,7 +62,7 @@ types::Function::ReturnValue sci_link(types::typed_list &in, int _iRetCount, typ
         types::String* pSFunctionNames = new types::String(1, (int)FunctionsList.size());
         for (int i = 0 ; i < FunctionsList.size(); i++)
         {
-            pSFunctionNames->set(FunctionsList.size() - i - 1, FunctionsList[i].c_str());
+            pSFunctionNames->set((int)FunctionsList.size() - i - 1, FunctionsList[i].c_str());
         }
 
         out.push_back(pSFunctionNames);
@@ -79,17 +79,17 @@ types::Function::ReturnValue sci_link(types::typed_list &in, int _iRetCount, typ
         }
 
         types::String* pSFlag = in[2]->getAs<types::String>();
-        wchar_t* pwstFlag = pSFlag->get(0);
-        if (wcscmp(pwstFlag, L"f") == 0 || wcscmp(pwstFlag, L"c") == 0)
+        char* pstflag = pSFlag->get(0);
+        if (strcmp(pstflag, "f") == 0 || strcmp(pstflag, "c") == 0)
         {
-            if (wcscmp(pwstFlag, L"c") == 0)
+            if (strcmp(pstflag, "c") == 0)
             {
                 bFortran = FALSE;
             }
         }
         else
         {
-            Scierror(999, _("%ls Wrong value for input argument #%d: '%s' or '%s' expected.\n"), "link", 3, "f", "c");
+            Scierror(999, _("%s Wrong value for input argument #%d: '%s' or '%s' expected.\n"), "link", 3, "f", "c");
             return types::Function::Error;
         }
 
@@ -106,7 +106,7 @@ types::Function::ReturnValue sci_link(types::typed_list &in, int _iRetCount, typ
 
         types::String* pSSubNames = in[1]->getAs<types::String>();
         iSizeSubNames = pSSubNames->getSize();
-        pwstSubNames = pSSubNames->get();
+        pstSubNames = pSSubNames->get();
     }
 
     if (in.size() >= 1)
@@ -131,7 +131,7 @@ types::Function::ReturnValue sci_link(types::typed_list &in, int _iRetCount, typ
                 return types::Function::Error;
             }
 
-            if (wcscmp(pS->get(0), L"show") == 0)
+            if (strcmp(pS->get(0), "show") == 0)
             {
                 //show option
                 displayDynLibInfo();
@@ -140,7 +140,7 @@ types::Function::ReturnValue sci_link(types::typed_list &in, int _iRetCount, typ
             }
 
             //library name
-            pwstLibName = pS->get(0);
+            pstLibName = pS->get(0);
         }
         else
         {
@@ -150,11 +150,11 @@ types::Function::ReturnValue sci_link(types::typed_list &in, int _iRetCount, typ
     }
 
     int iErr    = 0;
-    int iRetID  = scilabLink(iIDSharedLib, pwstLibName, pwstSubNames, iSizeSubNames, bFortran, &iErr);
+    int iRetID  = scilabLink(iIDSharedLib, pstLibName, (const char**)pstSubNames, iSizeSubNames, bFortran, &iErr);
 
     if (iErr)
     {
-        dl_genErrorMessage(L"link", iErr, pwstLibName);
+        dl_genErrorMessage("link", iErr, pstLibName);
 
         /* release lib if it is a new link */
         if ((iIDSharedLib == -1) && (iRetID != -1))
@@ -213,7 +213,7 @@ void displayDynLibInfo(void)
     {
         if (getIlibVerboseLevel() != ILIB_VERBOSE_NO_OUTPUT)
         {
-            sciprint(_("Entry point %ls in shared library %d.\n"), (*it)->pwstEntryPointName, (*it)->iLibIndex);
+            sciprint(_("Entry point %s in shared library %d.\n"), (*it)->pstEntryPointName, (*it)->iLibIndex);
         }
     }
 }