summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-i18n/mozc/files/mozc-2.23.2815.102-server_path_check.patch')
-rw-r--r--app-i18n/mozc/files/mozc-2.23.2815.102-server_path_check.patch95
1 files changed, 0 insertions, 95 deletions
diff --git a/app-i18n/mozc/files/mozc-2.23.2815.102-server_path_check.patch b/app-i18n/mozc/files/mozc-2.23.2815.102-server_path_check.patch
deleted file mode 100644
index dd606e27fb56..000000000000
--- a/app-i18n/mozc/files/mozc-2.23.2815.102-server_path_check.patch
+++ /dev/null
@@ -1,95 +0,0 @@
-https://github.com/google/mozc/issues/471
-
---- /src/ipc/ipc_path_manager.cc
-+++ /src/ipc/ipc_path_manager.cc
-@@ -332,9 +332,21 @@
- return false;
- }
-
-+ // Expand symbolic links in the expected server path to avoid false negatives
-+ // during comparisons of the expected server path and the actual server path.
-+ string real_server_path = server_path;
-+#ifndef OS_WIN
-+ char real_server_path_[PATH_MAX];
-+ if (realpath(server_path.c_str(), real_server_path_) == NULL) {
-+ LOG(ERROR) << "realpath failed: " << strerror(errno);
-+ return false;
-+ }
-+ real_server_path = real_server_path_;
-+#endif
-+
- // compare path name
- if (pid == server_pid_) {
-- return (server_path == server_path_);
-+ return (real_server_path == server_path_);
- }
-
- server_pid_ = 0;
-@@ -344,17 +356,17 @@
- {
- std::wstring expected_server_ntpath;
- const std::map<string, std::wstring>::const_iterator it =
-- expected_server_ntpath_cache_.find(server_path);
-+ expected_server_ntpath_cache_.find(real_server_path);
- if (it != expected_server_ntpath_cache_.end()) {
- expected_server_ntpath = it->second;
- } else {
- std::wstring wide_server_path;
-- Util::UTF8ToWide(server_path, &wide_server_path);
-+ Util::UTF8ToWide(real_server_path, &wide_server_path);
- if (WinUtil::GetNtPath(wide_server_path, &expected_server_ntpath)) {
-- // Caches the relationship from |server_path| to
-- // |expected_server_ntpath| in case |server_path| is renamed later.
-+ // Caches the relationship from |real_server_path| to
-+ // |expected_server_ntpath| in case |real_server_path| is renamed later.
- // (This can happen during the updating).
-- expected_server_ntpath_cache_[server_path] = expected_server_ntpath;
-+ expected_server_ntpath_cache_[real_server_path] = expected_server_ntpath;
- }
- }
-
-@@ -371,9 +383,9 @@
- return false;
- }
-
-- // Here we can safely assume that |server_path| (expected one) should be
-+ // Here we can safely assume that |real_server_path| (expected one) should be
- // the same to |server_path_| (actual one).
-- server_path_ = server_path;
-+ server_path_ = real_server_path;
- server_pid_ = pid;
- }
- #endif // OS_WIN
-@@ -399,7 +411,7 @@
- #ifdef OS_LINUX
- // load from /proc/<pid>/exe
- char proc[128];
-- char filename[512];
-+ char filename[PATH_MAX];
- snprintf(proc, sizeof(proc) - 1, "/proc/%u/exe", pid);
- const ssize_t size = readlink(proc, filename, sizeof(filename) - 1);
- if (size == -1) {
-@@ -412,18 +424,18 @@
- server_pid_ = pid;
- #endif // OS_LINUX
-
-- VLOG(1) << "server path: " << server_path << " " << server_path_;
-- if (server_path == server_path_) {
-+ VLOG(1) << "server path: " << real_server_path << " " << server_path_;
-+ if (real_server_path == server_path_) {
- return true;
- }
-
- #ifdef OS_LINUX
-- if ((server_path + " (deleted)") == server_path_) {
-- LOG(WARNING) << server_path << " on disk is modified";
-+ if ((real_server_path + " (deleted)") == server_path_) {
-+ LOG(WARNING) << real_server_path << " on disk is modified";
- // If a user updates the server binary on disk during the server is running,
- // "readlink /proc/<pid>/exe" returns a path with the " (deleted)" suffix.
- // We allow the special case.
-- server_path_ = server_path;
-+ server_path_ = real_server_path;
- return true;
- }
- #endif // OS_LINUX