Bug-fix: fix target dll searching logic
[platform/core/dotnet/launcher.git] / NativeLauncher / inc / path_manager.h
index 38ca327..b3bc88e 100644 (file)
@@ -75,6 +75,13 @@ public:
        void addPlatformAssembliesPaths(const std::string& paths, bool isHighPriority = false);
 
        /**
+        * @brief Add native dll searching paths.
+        * @param[in] paths the paths to be added
+        * @param[in] isHighPriority if true, paths are added in front of the current list, otherwise added at the end of the list
+        */
+       void addNativeDllSearchingPaths(const std::string& paths, bool isHighPriority = false);
+
+       /**
         * @brief Set application root path.
         *        All application related paths ("bin", "lib", ".tac_symlink", ".native_image") are generated based on it.
         *        A temporary path (/proc/self/fd/[fd]) is used if this function is never called.
@@ -126,6 +133,12 @@ public:
        const std::string& getAppNIPaths();
 
        /**
+        * @brief Set addtional dll searching path for App.
+        * @param[in] paths path
+        */
+       void setExtraDllPaths(const char* paths);
+
+       /**
         * @brief Get the list of directories where the native libraries of this application exist
         * @return the list(":" seperated) of paths the loader should probe when looking for native libraries
         */
@@ -152,6 +165,7 @@ private:
        std::string appNIPaths;
        std::string nativeDllSearchingPaths;
        std::string appTacPath;
+       std::string extraDllPaths;
        int rootFD;
        int niRootFD;
 };