diff options
author | Marc Laukien <marc@zeroc.com> | 2004-12-04 00:47:01 +0000 |
---|---|---|
committer | Marc Laukien <marc@zeroc.com> | 2004-12-04 00:47:01 +0000 |
commit | cb4469d100359a58a0116530ed5c93921d4a1d8b (patch) | |
tree | d38c2bd75d07c884cdde613c6c8682df35f11f67 /cpp/src | |
parent | tested Python 2.4 (diff) | |
download | ice-cb4469d100359a58a0116530ed5c93921d4a1d8b.tar.bz2 ice-cb4469d100359a58a0116530ed5c93921d4a1d8b.tar.xz ice-cb4469d100359a58a0116530ed5c93921d4a1d8b.zip |
fixes
Diffstat (limited to 'cpp/src')
-rw-r--r-- | cpp/src/IcePatch2/Calc.cpp | 6 | ||||
-rw-r--r-- | cpp/src/IcePatch2/Client.cpp | 5 | ||||
-rwxr-xr-x | cpp/src/IcePatch2/ClientUtil.cpp | 6 | ||||
-rw-r--r-- | cpp/src/IcePatch2/Server.cpp | 6 |
4 files changed, 16 insertions, 7 deletions
diff --git a/cpp/src/IcePatch2/Calc.cpp b/cpp/src/IcePatch2/Calc.cpp index a236dde862e..df8fe85fbe0 100644 --- a/cpp/src/IcePatch2/Calc.cpp +++ b/cpp/src/IcePatch2/Calc.cpp @@ -88,12 +88,14 @@ main(int argc, char* argv[]) try { - if(dataDir[0] != '/') - { #ifdef _WIN32 + if(dataDir[0] != '/' && !(dataDir.size() > 1 && isalpha(dataDir[0]) && dataDir[1] == ':')) + { char cwd[_MAX_PATH]; if(_getcwd(cwd, _MAX_PATH) == NULL) #else + if(dataDir[0] != '/') + { char cwd[PATH_MAX]; if(getcwd(cwd, PATH_MAX) == NULL) #endif diff --git a/cpp/src/IcePatch2/Client.cpp b/cpp/src/IcePatch2/Client.cpp index d3c8d4a8156..db24c1cc0ea 100644 --- a/cpp/src/IcePatch2/Client.cpp +++ b/cpp/src/IcePatch2/Client.cpp @@ -238,7 +238,10 @@ Client::run(int argc, char* argv[]) aborted = !patcher->patch(""); } - patcher->finish(); + if(!aborted) + { + patcher->finish(); + } } catch(const string& ex) { diff --git a/cpp/src/IcePatch2/ClientUtil.cpp b/cpp/src/IcePatch2/ClientUtil.cpp index 9670736406a..d24669c72c8 100755 --- a/cpp/src/IcePatch2/ClientUtil.cpp +++ b/cpp/src/IcePatch2/ClientUtil.cpp @@ -156,12 +156,14 @@ IcePatch2::Patcher::Patcher(const CommunicatorPtr& communicator, const PatcherFe const_cast<Int&>(_chunkSize) = 1; } - if(_dataDir[0] != '/') - { #ifdef _WIN32 + if(_dataDir[0] != '/' && !(_dataDir.size() > 1 && isalpha(_dataDir[0]) && _dataDir[1] == ':')) + { char cwd[_MAX_PATH]; if(_getcwd(cwd, _MAX_PATH) == NULL) #else + if(_dataDir[0] != '/') + { char cwd[PATH_MAX]; if(getcwd(cwd, PATH_MAX) == NULL) #endif diff --git a/cpp/src/IcePatch2/Server.cpp b/cpp/src/IcePatch2/Server.cpp index a39d6c8a8c6..7eca8549383 100644 --- a/cpp/src/IcePatch2/Server.cpp +++ b/cpp/src/IcePatch2/Server.cpp @@ -120,12 +120,14 @@ IcePatch2::PatcherService::start(int argc, char* argv[]) try { - if(dataDir[0] != '/') - { #ifdef _WIN32 + if(dataDir[0] != '/' && !(dataDir.size() > 1 && isalpha(dataDir[0]) && dataDir[1] == ':')) + { char cwd[_MAX_PATH]; if(_getcwd(cwd, _MAX_PATH) == NULL) #else + if(dataDir[0] != '/') + { char cwd[PATH_MAX]; if(getcwd(cwd, PATH_MAX) == NULL) #endif |