diff options
Diffstat (limited to 'protocols/SkypeWeb/src')
| -rw-r--r-- | protocols/SkypeWeb/src/skype_poll_processing.cpp | 6 | ||||
| -rw-r--r-- | protocols/SkypeWeb/src/skype_utils.cpp | 11 | 
2 files changed, 13 insertions, 4 deletions
diff --git a/protocols/SkypeWeb/src/skype_poll_processing.cpp b/protocols/SkypeWeb/src/skype_poll_processing.cpp index d357c5b5ee..23008451b7 100644 --- a/protocols/SkypeWeb/src/skype_poll_processing.cpp +++ b/protocols/SkypeWeb/src/skype_poll_processing.cpp @@ -80,9 +80,9 @@ void CSkypeProto::ProcessNewMessageRes(JSONNODE *node)  	ptrA conversationLink(mir_t2a(ptrT(json_as_string(json_get(node, "conversationLink")))));
  	time_t timeStamp = IsoToUnixTime(composeTime);//time(NULL); // it should be rewritten
 -	PROTORECVEVENT recv = { 0 }; -	recv.flags = PREF_UTF; -	recv.timestamp = timeStamp; +	PROTORECVEVENT recv = { 0 };
 +	recv.flags = PREF_UTF;
 +	recv.timestamp = timeStamp;
  	recv.szMessage = content;
  	debugLogA("Incoming message from %s", ContactUrlToName(from));
  	if(IsMe(ContactUrlToName(from)))
 diff --git a/protocols/SkypeWeb/src/skype_utils.cpp b/protocols/SkypeWeb/src/skype_utils.cpp index a85f9c9eec..428f778d5b 100644 --- a/protocols/SkypeWeb/src/skype_utils.cpp +++ b/protocols/SkypeWeb/src/skype_utils.cpp @@ -8,7 +8,16 @@ time_t __stdcall CSkypeProto::IsoToUnixTime(const TCHAR *stamp)  	if (stamp == NULL)
  		return 0;
 -	const TCHAR *p = stamp;
 +	TCHAR *p = NEWTSTR_ALLOCA(stamp);
 +
 +	// skip '-' chars
 +	int si = 0, sj = 0;
 +	while (true) {
 +		if (p[si] == _T('-'))
 +			si++;
 +		else if (!(p[sj++] = p[si++]))
 +			break;
 +	}
  	// Get the date part
  	for (i = 0; *p != '\0' && i < 8 && isdigit(*p); p++, i++)
  | 
