From d272a634925ce3f0a2be5fe2afe111f76717f28c Mon Sep 17 00:00:00 2001
From: barisusakli <barisusakli@gmail.com>
Date: Wed, 17 Aug 2016 14:12:35 +0300
Subject: [PATCH] fix messaging.parse to be err first

---
 src/messaging.js | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/messaging.js b/src/messaging.js
index 62dd569015..1ce4160d62 100644
--- a/src/messaging.js
+++ b/src/messaging.js
@@ -128,7 +128,10 @@ var async = require('async'),
 				});
 
 				async.map(messages, function(message, next) {
-					Messaging.parse(message.content, message.fromuid, uid, roomId, isNew, function(result) {
+					Messaging.parse(message.content, message.fromuid, uid, roomId, isNew, function(err, result) {
+						if (err) {
+							return next(err);
+						}
 						message.content = result;
 						message.cleanedContent = S(result).stripTags().decodeHTMLEntities().s;
 						next(null, message);
@@ -195,7 +198,7 @@ var async = require('async'),
 	Messaging.parse = function (message, fromuid, uid, roomId, isNew, callback) {
 		plugins.fireHook('filter:parse.raw', message, function(err, parsed) {
 			if (err) {
-				return callback(message);
+				return callback(err);
 			}
 
 			var messageData = {
@@ -209,7 +212,7 @@ var async = require('async'),
 			};
 
 			plugins.fireHook('filter:messaging.parse', messageData, function(err, messageData) {
-				callback(messageData.parsedMessage);
+				callback(err, messageData ? messageData.parsedMessage : '');
 			});
 		});
 	};