Skip to content

Commit 30efed3

Browse files
committed
Fixed SMTP mail sender.
1 parent ef66fde commit 30efed3

4 files changed

Lines changed: 19 additions & 8 deletions

File tree

changes.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
- fixed: problem with `websocket.destroy()`
4444
- fixed: `F.cors()`
4545
- fixed: WebSocket initialization (critical)
46+
- fixed: Mail sender (problem with ZOHO SMTP)
4647

4748
- renamed: event `route-add` to `route`
4849
- renamed: `F.versionNode` to `F.version_node`

index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -424,7 +424,7 @@ function Framework() {
424424

425425
this.id = null;
426426
this.version = 2000;
427-
this.version_header = '2.0.0-20';
427+
this.version_header = '2.0.0-21';
428428
this.version_node = process.version.toString().replace('v', '').replace(/\./g, '').parseFloat();
429429

430430
this.config = {

mail.js

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -482,6 +482,7 @@ Message.prototype._send = function(socket, options, autosend) {
482482
var err = null;
483483
var ending = null;
484484
var isTLS = false;
485+
var response = '';
485486

486487
var write = function(line) {
487488
if (self.closed)
@@ -607,15 +608,23 @@ Message.prototype._send = function(socket, options, autosend) {
607608
if (self.closed)
608609
return;
609610

610-
var response = data.toString().split(CRLF);
611-
var length = response.length;
611+
data = data.toString();
612612

613-
for (var i = 0; i < length; i++) {
613+
if (!data.endsWith(CRLF)) {
614+
response += data;
615+
return;
616+
}
614617

615-
var line = response[i];
616-
if (line === '')
617-
continue;
618+
var res = (response + data).split(CRLF);
618619

620+
if (response)
621+
response = '';
622+
623+
var length = res.length;
624+
for (var i = 0; i < length; i++) {
625+
var line = res[i];
626+
if (!line)
627+
continue;
619628
if (socket)
620629
socket.emit('line', line);
621630
}
@@ -628,6 +637,7 @@ Message.prototype._send = function(socket, options, autosend) {
628637
console.log('<---', line);
629638

630639
var code = +line.match(/\d+/)[0];
640+
631641
if (code === 250 && !isAuthorization) {
632642
if ((line.indexOf('AUTH LOGIN PLAIN') !== -1 || line.indexOf('AUTH PLAIN LOGIN') !== -1) || (options.user && options.password)) {
633643
authType = 'plain';

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
"name": "Сковорода Никита Андреевич",
6767
"email": "chalkerx@gmail.com"
6868
}],
69-
"version": "2.0.0-20",
69+
"version": "2.0.0-21",
7070
"homepage": "http://www.totaljs.com",
7171
"bugs": {
7272
"url": "https://github.com/totaljs/framework/issues",

0 commit comments

Comments
 (0)