support reference API directory to support PlatformNotSupport Exception 71/130071/1 accepted/tizen/unified/20170523.050826 submit/tizen/20170522.013643 tizen_4.0.m1_release
authorCho Woong Suk <ws77.cho@samsung.com>
Fri, 19 May 2017 04:53:50 +0000 (13:53 +0900)
committerCho Woong Suk <ws77.cho@samsung.com>
Fri, 19 May 2017 04:53:50 +0000 (13:53 +0900)
Change-Id: Ib4e389fcffea849cc2235a42b844e643c2e4b92a

NativeLauncher/installer-plugin/common.cc
NativeLauncher/launcher/dotnet/dotnet_launcher.cc
NativeLauncher/launcher/dotnet/dotnet_launcher.h

index 9cd2109..fe89609 100644 (file)
@@ -169,6 +169,12 @@ static void crossgen(const char* dllPath, const char* appPath)
                tpaDir.push_back(__RUNTIME_DIR);
                tpaDir.push_back(__DEVICE_API_DIR);
 
+               // get reference API directory ([DEVICE_API_DIR]/ref)
+               int len = strlen(__DEVICE_API_DIR);
+               char* refAPIDir = (char*)calloc(len + 4, 1);
+               snprintf(refAPIDir, len + 4, "%s%s", __DEVICE_API_DIR, "/ref");
+               tpaDir.push_back(refAPIDir);
+
                std::string tpa;
                assembliesInDirectory(tpaDir, tpa);
 
index c0b5300..d01c155 100644 (file)
@@ -116,6 +116,9 @@ int CoreRuntime::initialize(bool standalone)
                __runtimeDirectory = absolutePath(__runtimeDirectory);
        }
 
+       // set Reference API directory
+       __refAPIDirectory = __deviceAPIDirectory + "/ref";
+
 #ifdef USE_MANAGED_LAUNCHER
        if (__launcherAssembly.empty()) {
                _ERR("Empty Launcher Assembly");
@@ -279,6 +282,7 @@ int CoreRuntime::launch(const char* appId, const char* root, const char* path, i
        searchDirectories.push_back(appLib);
        searchDirectories.push_back(__runtimeDirectory);
        searchDirectories.push_back(__deviceAPIDirectory);
+       searchDirectories.push_back(__refAPIDirectory);
 #ifdef USE_MANAGED_LAUNCHER
        searchDirectories.push_back(baseName(__launcherAssembly));
 #endif
index fb44a47..1e9bee7 100644 (file)
@@ -78,6 +78,7 @@ class CoreRuntime : public tizen::runtime::LauncherInterface
                std::string __runtimeDirectory;
                std::string __launcherAssembly;
                std::string __nativeLibDirectory;
+               std::string __refAPIDirectory;
                void* __coreclrLib;
                void* __hostHandle;
                unsigned int __domainId;