summarylogtreecommitdiffstats
path: root/codelite-fsw-symlink.patch
blob: c010c0bd9658331d87d4f28af64f94e53a2fcbf0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
diff --git CodeLite/clFilesCollector.cpp CodeLite/clFilesCollector.cpp
index 6bbdc24c5..462fcdc13 100644
--- CodeLite/clFilesCollector.cpp
+++ CodeLite/clFilesCollector.cpp
@@ -9,6 +9,12 @@
 #include <wx/filename.h>
 #include <wx/tokenzr.h>
 
+
+static wxString RealPath(const wxString& fullpath)
+{
+    return fullpath;
+}
+
 clFilesScanner::clFilesScanner() {}
 
 clFilesScanner::~clFilesScanner() {}
@@ -102,12 +108,12 @@ size_t clFilesScanner::Scan(const wxString& rootFolder, std::vector<wxString>& f
 #if defined(__FreeBSD__)
                     ((FileUtils::IsSymlink(fullpath) && excludeFolders.count(FileUtils::RealPath(fullpath)))
 #else
-                    (excludeFolders.count(FileUtils::RealPath(fullpath))
+                    (excludeFolders.count(RealPath(fullpath))
 #endif
                      || IsRelPathContainedInSpec(rootFolder, fullpath, excludeFolders)));
             if(isDirectory && !isExcludeDir) {
                 // Traverse into this folder
-                wxString realPath = FileUtils::RealPath(fullpath);
+                wxString realPath = RealPath(fullpath);
                 if(Visited.insert(realPath).second) {
                     Q.push(fullpath);
                 }
@@ -138,8 +144,8 @@ size_t clFilesScanner::Scan(const wxString& rootFolder, const wxString& filespec
     std::queue<wxString> Q;
     std::unordered_set<wxString> Visited;
 
-    Q.push(FileUtils::RealPath(rootFolder));
-    Visited.insert(FileUtils::RealPath(rootFolder));
+    Q.push(RealPath(rootFolder));
+    Visited.insert(RealPath(rootFolder));
 
     size_t nCount = 0;
     while(!Q.empty()) {
@@ -163,7 +169,7 @@ size_t clFilesScanner::Scan(const wxString& rootFolder, const wxString& filespec
             if(isDirectory /* a folder */ &&
                !FileUtils::WildMatch(excludeFoldersSpecArr, filename) /* does not match the exclude folder spec */) {
                 // Traverse into this folder
-                wxString real_path = FileUtils::RealPath(fullpath);
+                wxString real_path = RealPath(fullpath);
                 if(Visited.count(real_path) == 0) {
                     Visited.insert(real_path);
                     Q.push(fullpath);
@@ -244,8 +250,8 @@ void clFilesScanner::ScanWithCallbacks(const wxString& rootFolder, std::function
     std::vector<wxString> Q;
     std::unordered_set<wxString> Visited;
 
-    Q.push_back(FileUtils::RealPath(rootFolder));
-    Visited.insert(FileUtils::RealPath(rootFolder));
+    Q.push_back(RealPath(rootFolder));
+    Visited.insert(RealPath(rootFolder));
 
     while(!Q.empty()) {
         wxString dirpath = Q.front();
@@ -284,7 +290,7 @@ void clFilesScanner::ScanWithCallbacks(const wxString& rootFolder, std::function
 
                 if(on_folder_cb(fullpath)) {
                     // Traverse into this folder
-                    wxString real_path = FileUtils::RealPath(fullpath);
+                    wxString real_path = RealPath(fullpath);
                     if(Visited.insert(real_path).second) {
                         Q.push_back(fullpath);
                     }
@@ -298,4 +304,4 @@ void clFilesScanner::ScanWithCallbacks(const wxString& rootFolder, std::function
         // notify about this batch of files
         on_file_cb(files);
     }
-}
\ No newline at end of file
+}
diff --git LiteEditor/mainbook.cpp LiteEditor/mainbook.cpp
index 9798c7189..71ed6bed9 100644
--- LiteEditor/mainbook.cpp
+++ LiteEditor/mainbook.cpp
@@ -440,7 +440,7 @@ int MainBook::FindEditorIndexByFullPath(const wxString& fullpath)
 
 #ifdef __WXGTK__
     // On gtk either fileName or the editor filepath (or both) may be (or their paths contain) symlinks
-    wxString fileNameDest = CLRealPath(fullpath);
+    wxString fileNameDest = FileUtils::RealPath(fullpath);
 #endif
 
     for(size_t i = 0; i < m_book->GetPageCount(); i++) {
@@ -474,7 +474,7 @@ int MainBook::FindEditorIndexByFullPath(const wxString& fullpath)
 
 #if defined(__WXGTK__)
                 // Try again, dereferencing the editor fpath
-                wxString editorDest = CLRealPath(unixStyleFile);
+                wxString editorDest = FileUtils::RealPath(unixStyleFile);
                 if(editorDest.Cmp(fullpath) == 0 || editorDest.Cmp(fileNameDest) == 0) {
                     return i;
                 }
diff --git Plugin/globals.cpp Plugin/globals.cpp
index 68e87c0b1..2800d4b44 100644
--- Plugin/globals.cpp
+++ Plugin/globals.cpp
@@ -1220,7 +1220,7 @@ wxFileName wxReadLink(const wxFileName& filename)
     if(wxIsFileSymlink(filename)) {
 #if defined(__WXGTK__)
         // Use 'realpath' on Linux, otherwise this breaks on relative symlinks, and (untested) on symlinks-to-symlinks
-        return wxFileName(CLRealPath(filename.GetFullPath()));
+        return wxFileName(FileUtils::RealPath(filename.GetFullPath()));
 
 #else  // OSX
         wxFileName realFileName;
@@ -1243,7 +1243,7 @@ wxFileName wxReadLink(const wxFileName& filename)
 wxString CLRealPath(const wxString& filepath) // This is readlink on steroids: it also makes-absolute, and dereferences
                                               // any symlinked dirs in the path
 {
-    return FileUtils::RealPath(filepath);
+    return filepath;
 }
 
 int wxStringToInt(const wxString& str, int defval, int minval, int maxval)