Callback fix on on truncated messages
authorDarren <darren@darrenwhitlen.com>
Mon, 21 Jan 2013 18:31:51 +0000 (18:31 +0000)
committerDarren <darren@darrenwhitlen.com>
Mon, 21 Jan 2013 18:31:51 +0000 (18:31 +0000)
server/clientcommands.js

index 4463d8fdc6d0a087b45a4a025687c2f963ed1b88..b7e8de23a1f521d979b8caf8bbd6216a8cff39a9 100644 (file)
@@ -46,8 +46,13 @@ var listeners = {
         // be sent from the IRCd to the target without being truncated.\r
 \r
         var blocks = truncateString(args.msg, 350);\r
-        blocks.forEach(function (block) {\r
-            irc_connection.write('PRIVMSG ' + args.target + ' :' + block);\r
+        blocks.forEach(function (block, idx) {\r
+            // Apply the callback on the last message only\r
+            var cb = (idx === blocks.length - 1) ?\r
+                callback :\r
+                undefined;\r
+\r
+            irc_connection.write('PRIVMSG ' + args.target + ' :' + block, cb);\r
         });\r
     },\r
     \r
@@ -120,8 +125,13 @@ var listeners = {
         // be sent from the IRCd to the target without being truncated.\r
 \r
         var blocks = truncateString(args.msg, 350);\r
-        blocks.forEach(function (block) {\r
-            irc_connection.write('NOTICE ' + args.target + ' :' + block);\r
+        blocks.forEach(function (block, idx) {\r
+            // Apply the callback on the last message only\r
+            var cb = (idx === blocks.length - 1) ?\r
+                callback :\r
+                undefined;\r
+\r
+            irc_connection.write('NOTICE ' + args.target + ' :' + block, cb);\r
         });\r
     },\r
 \r