diff options
author | Dwayne Boone <dwayne@zeroc.com> | 2009-06-04 10:31:47 -0230 |
---|---|---|
committer | Dwayne Boone <dwayne@zeroc.com> | 2009-06-04 10:31:47 -0230 |
commit | d3589e1b52669915eb50b2f406eda58c52a853db (patch) | |
tree | 1737601c9a56567219ae1f58e2743f17e39b85ad /cpp/src/Slice/Preprocessor.cpp | |
parent | Lots of javadoc comments. (diff) | |
download | ice-d3589e1b52669915eb50b2f406eda58c52a853db.tar.bz2 ice-d3589e1b52669915eb50b2f406eda58c52a853db.tar.xz ice-d3589e1b52669915eb50b2f406eda58c52a853db.zip |
Added workaround for mcpp bug
Diffstat (limited to 'cpp/src/Slice/Preprocessor.cpp')
-rw-r--r-- | cpp/src/Slice/Preprocessor.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/cpp/src/Slice/Preprocessor.cpp b/cpp/src/Slice/Preprocessor.cpp index 36e51ffa16d..832f0ae5756 100644 --- a/cpp/src/Slice/Preprocessor.cpp +++ b/cpp/src/Slice/Preprocessor.cpp @@ -87,7 +87,16 @@ Slice::Preprocessor::normalizeIncludePath(const string& path) { string result = path; - replace(result.begin(), result.end(), '\\', '/'); +#ifdef _WIN32 + // + // MCPP does not handle "-IC:/" well as an include path. + // + if(path.size() != 3 || !(path[0] >= 'A' && path[0] <= 'Z') || (path[0] >= 'a' && path[0] <= 'z') || + path[1] != ':' || path[2] != '\\') +#endif + { + replace(result.begin(), result.end(), '\\', '/'); + } string::size_type startReplace = 0; #ifdef _WIN32 |