summaryrefslogtreecommitdiff
path: root/utilities.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'utilities.cpp')
-rw-r--r--utilities.cpp27
1 files changed, 26 insertions, 1 deletions
diff --git a/utilities.cpp b/utilities.cpp
index c78bc4a..9c07b89 100644
--- a/utilities.cpp
+++ b/utilities.cpp
@@ -409,6 +409,14 @@ static JABBER_HANDLER_FUNC SendHandler(IJabberInterface *ji, HXML node, void *pU
f<<tmp;
mir_free(tmp);
f.close();
+ if(_waccess(path_out.c_str(), 0) == -1)
+ {
+ if(errno == ENOENT)
+ {
+ debuglog<<"info: Failed to write prescense in file\n";
+ return FALSE;
+ }
+ }
{
extern TCHAR *password;
string out;
@@ -487,8 +495,13 @@ static JABBER_HANDLER_FUNC SendHandler(IJabberInterface *ji, HXML node, void *pU
tmp[size]= '\0';
data.append(tmp);
delete [] tmp;
+ DeleteFile(path_out.c_str());
+ }
+ if(data.empty())
+ {
+ debuglog<<"info: Failed to read prescense sign from file\n";
+ return FALSE;
}
- DeleteFile(path_out.c_str());
if(data.find(_T("-----BEGIN PGP MESSAGE-----")) != wstring::npos && data.find(_T("-----END PGP MESSAGE-----")) != wstring::npos)
{
wstring::size_type p1 = data.find(_T("-----BEGIN PGP MESSAGE-----")) + _tcslen(_T("-----BEGIN PGP MESSAGE-----"));
@@ -504,6 +517,18 @@ static JABBER_HANDLER_FUNC SendHandler(IJabberInterface *ji, HXML node, void *pU
else
p1 += 2;
}
+ if(data.find(_T("Comment: "), p1) != wstring::npos)
+ {
+ p1 = data.find(_T("Comment: "), p1);
+ p1 = data.find(_T("\n"), p1);
+ if(data.find(_T("Comment: "), p1) != wstring::npos)
+ {
+ p1 = data.find(_T("Comment: "), p1);
+ p1 = data.find(_T("\n"), p1)+2;
+ }
+ else
+ p1 += 2;
+ }
else
p1+=2;
wstring::size_type p2 = data.find(_T("-----END PGP MESSAGE-----"));