diff options
author | Marc Laukien <marc@zeroc.com> | 2004-12-04 00:17:43 +0000 |
---|---|---|
committer | Marc Laukien <marc@zeroc.com> | 2004-12-04 00:17:43 +0000 |
commit | 9e78b114f037b641f6baeb2931e6030b6c86a5a9 (patch) | |
tree | fc8947f87bb1df44244451412262314296638945 /cpp/src/IcePatch2/Calc.cpp | |
parent | fix (diff) | |
download | ice-9e78b114f037b641f6baeb2931e6030b6c86a5a9.tar.bz2 ice-9e78b114f037b641f6baeb2931e6030b6c86a5a9.tar.xz ice-9e78b114f037b641f6baeb2931e6030b6c86a5a9.zip |
fixes
Diffstat (limited to 'cpp/src/IcePatch2/Calc.cpp')
-rw-r--r-- | cpp/src/IcePatch2/Calc.cpp | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/cpp/src/IcePatch2/Calc.cpp b/cpp/src/IcePatch2/Calc.cpp index 192e023347d..a236dde862e 100644 --- a/cpp/src/IcePatch2/Calc.cpp +++ b/cpp/src/IcePatch2/Calc.cpp @@ -68,7 +68,7 @@ main(int argc, char* argv[]) { if(dataDir.empty()) { - dataDir = argv[i]; + dataDir = normalize(argv[i]); } else { @@ -88,19 +88,22 @@ main(int argc, char* argv[]) try { + if(dataDir[0] != '/') + { #ifdef _WIN32 - char cwd[_MAX_PATH]; - if(_getcwd(cwd, _MAX_PATH) == NULL) + char cwd[_MAX_PATH]; + if(_getcwd(cwd, _MAX_PATH) == NULL) #else - char cwd[PATH_MAX]; - if(getcwd(cwd, PATH_MAX) == NULL) + char cwd[PATH_MAX]; + if(getcwd(cwd, PATH_MAX) == NULL) #endif - { - throw "cannot get the current directory:\n" + lastError(); + { + throw "cannot get the current directory:\n" + lastError(); + } + + dataDir = string(cwd) + '/' + dataDir; } - dataDir = normalize(string(cwd) + '/' + dataDir); - FileInfoSeq infoSeq; getFileInfoSeq(dataDir, infoSeq, true, compress, verbose); saveFileInfoSeq(dataDir, infoSeq); |