diff options
author | Gluzskiy Alexandr <sss@sss.chaoslab.ru> | 2013-01-06 14:57:54 +0200 |
---|---|---|
committer | Gluzskiy Alexandr <sss@sss.chaoslab.ru> | 2013-01-06 14:57:54 +0200 |
commit | 29dc7fef90e299bb9abebbdbd6a96430ecfdad25 (patch) | |
tree | bd87811ec6d1649b99a46c5f8ebffec87c690c68 /src/gpg_wrapper.cpp | |
parent | 81bac0208e177b647682b4d115fe47547cd43ab6 (diff) |
merged with miranda_ng main repo
Diffstat (limited to 'src/gpg_wrapper.cpp')
-rwxr-xr-x | src/gpg_wrapper.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/gpg_wrapper.cpp b/src/gpg_wrapper.cpp index d743af4..b2c6585 100755 --- a/src/gpg_wrapper.cpp +++ b/src/gpg_wrapper.cpp @@ -80,7 +80,7 @@ pxResult pxExecute(wstring *acommandline, char *ainput, string *aoutput, LPDWORD if(errno == ENOENT) { mir_free(bin_path); - debuglog<<time_str()<<": GPG executable not found\n"; + debuglog<<std::string(time_str()+": GPG executable not found"); *result = pxNotFound; return pxNotFound; } @@ -100,7 +100,7 @@ pxResult pxExecute(wstring *acommandline, char *ainput, string *aoutput, LPDWORD mir_free(home_dir); } - debuglog<<time_str()<<": gpg in: "<<commandline<<"\n"; + debuglog<<std::string(time_str()+": gpg in: "+toUTF8(commandline)); success = CreateProcess(NULL, (TCHAR*)commandline.c_str(), NULL, NULL, TRUE, CREATE_NEW_CONSOLE | CREATE_UNICODE_ENVIRONMENT, (void*)_T("LANGUAGE=en@quot\0LC_ALL=English\0"), NULL, &sinfo, &pri); @@ -142,7 +142,7 @@ pxResult pxExecute(wstring *acommandline, char *ainput, string *aoutput, LPDWORD fix_line_term(*aoutput); - debuglog<<time_str()<<": gpg out: "<<aoutput->c_str(); + debuglog<<std::string(time_str()+": gpg out: "+*aoutput); WaitForSingleObject(pri.hProcess,INFINITE); @@ -155,6 +155,11 @@ pxResult pxExecute(wstring *acommandline, char *ainput, string *aoutput, LPDWORD *result = pxSuccess; // gpg_mutex.unlock(); + if(*aexitcode) + { + debuglog<<std::string(time_str()+": warning: wrong gpg exit status, gpg output: "+*aoutput); + return pxSuccessExitCodeInvalid; + } return pxSuccess; } |