diff options
Diffstat (limited to 'protocols/SkypeWeb/src/skype_messages.cpp')
-rw-r--r-- | protocols/SkypeWeb/src/skype_messages.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/protocols/SkypeWeb/src/skype_messages.cpp b/protocols/SkypeWeb/src/skype_messages.cpp index 297439305d..db01c0308e 100644 --- a/protocols/SkypeWeb/src/skype_messages.cpp +++ b/protocols/SkypeWeb/src/skype_messages.cpp @@ -90,7 +90,15 @@ int CSkypeProto::OnPreCreateMessage(WPARAM, LPARAM lParam) bool CSkypeProto::ParseMessage(const JSONNode &node, DB::EventInfo &dbei)
{
int nEmoteOffset = node["skypeemoteoffset"].as_int();
- CMStringW wszContent = node["content"].as_mstring();
+
+ auto &pContent = node["content"];
+ if (!pContent) {
+ if (dbei)
+ db_event_delete(dbei.getEvent());
+ return false;
+ }
+
+ CMStringW wszContent = pContent.as_mstring();
std::string strMessageType = node["messagetype"].as_string();
if (strMessageType == "RichText/Media_GenericFile" || strMessageType == "RichText/Media_Video" || strMessageType == "RichText/UriObject" ) {
|