51 lines
1.7 KiB
Diff
51 lines
1.7 KiB
Diff
From 87821c34287af363d40624f75f82ef267828d815 Mon Sep 17 00:00:00 2001
|
|
From: Mingchuan Wu <wumingchuan1992@foxmail.com>
|
|
Date: Mon, 3 Apr 2023 19:29:16 +0800
|
|
Subject: [PATCH] [PluginClient] Fix the bug during multi-process compilation.
|
|
|
|
|
|
diff --git a/lib/PluginClient/PluginClient.cpp b/lib/PluginClient/PluginClient.cpp
|
|
index c354d7e..c9f3cb7 100644
|
|
--- a/lib/PluginClient/PluginClient.cpp
|
|
+++ b/lib/PluginClient/PluginClient.cpp
|
|
@@ -28,7 +28,7 @@
|
|
namespace PinClient {
|
|
using namespace mlir::Plugin;
|
|
using namespace mlir;
|
|
-static PluginClient g_plugin;
|
|
+static PluginClient *g_plugin;
|
|
|
|
std::map<InjectPoint, plugin_event> g_injectPoint {
|
|
{HANDLE_PARSE_TYPE, PLUGIN_FINISH_TYPE},
|
|
@@ -47,7 +47,10 @@ std::map<InjectPoint, plugin_event> g_injectPoint {
|
|
|
|
PluginClient *PluginClient::GetInstance()
|
|
{
|
|
- return &g_plugin;
|
|
+ if (g_plugin == nullptr) {
|
|
+ g_plugin = new PluginClient();
|
|
+ }
|
|
+ return g_plugin;
|
|
}
|
|
|
|
int PluginClient::GetEvent(InjectPoint inject, plugin_event *event)
|
|
diff --git a/lib/PluginClient/PluginInputCheck.cpp b/lib/PluginClient/PluginInputCheck.cpp
|
|
index 36ebd8c..f2505ca 100755
|
|
--- a/lib/PluginClient/PluginInputCheck.cpp
|
|
+++ b/lib/PluginClient/PluginInputCheck.cpp
|
|
@@ -43,6 +43,11 @@ bool PluginInputCheck::ReadConfigfile(Json::Value& root)
|
|
Json::Reader reader;
|
|
std::ifstream ifs(configFilePath.c_str());
|
|
if (!ifs.is_open()) {
|
|
+ if (serverPath == "") {
|
|
+ LOGW("open %s fail and server path is NULL! should specify server path first!\n", configFilePath.c_str());
|
|
+ } else {
|
|
+ LOGW("open %s fail! use default sha256file:%s\n", configFilePath.c_str(), shaPath.c_str());
|
|
+ }
|
|
return false;
|
|
}
|
|
|
|
--
|
|
2.33.0
|
|
|