[Libwebsockets] recent changes breaking DomTerm

Andy Green andy at warmcat.com
Thu Jan 25 03:14:05 CET 2018



On 25/01/18 10:09, Per Bothner wrote:
> On 01/24/2018 05:05 PM, Andy Green wrote:
>> Basically the back-to-back detect stuff doesn't deal with clearing its 
>> detect bit for RAW traffic correctly.  I pushed a one-line patch on 
>> master that should fix it.
> 
> I didn't notice your last sentence.
> I did a pull, and now the "resource loading"  (the http part) seem to be 
> working
> (at least for an initial test).

Good... the first failure here is

[2018/01/25 10:07:40:5483] ERR:
[2018/01/25 10:07:40:5484] ERR: 0000: 82 7E 01 A5 1B 5D 37 37 37 3B 6E 
6F 74 69 66 79    .~...]777;notify
[2018/01/25 10:07:40:5484] ERR: 0010: 3B 43 6F 6D 6D 61 6E 64 20 63 6F 
6D 70 6C 65 74    ;Command complet
[2018/01/25 10:07:40:5484] ERR: 0020: 65 64 3B 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ed;2~2~2~2~2~2~2
[2018/01/25 10:07:40:5484] ERR: 0030: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5484] ERR: 0040: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5484] ERR: 0050: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5484] ERR: 0060: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5484] ERR: 0070: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5484] ERR: 0080: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5484] ERR: 0090: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5484] ERR: 00A0: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5484] ERR: 00B0: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 00C0: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 00D0: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 00E0: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 00F0: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 0100: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 0110: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 0120: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 0130: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 0140: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 0150: 7E 32 7E 32 7E 32 7E 32 7E 32 7E 
32 7E 32 7E 32    ~2~2~2~2~2~2~2~2
[2018/01/25 10:07:40:5485] ERR: 0160: 7E 32 7E 07 1B 5D 30 3B 61 67 72 
65 65 6E 40 62    ~2~..]0;agreen at b
[2018/01/25 10:07:40:5485] ERR: 0170: 75 69 6C 64 3A 2F 70 72 6F 6A 65 
63 74 73 2F 44    uild:/projects/D
[2018/01/25 10:07:40:5486] ERR: 0180: 6F 6D 54 65 72 6D 07 1B 5D 37 3B 
66 69 6C 65 3A    omTerm..]7;file:
[2018/01/25 10:07:40:5486] ERR: 0190: 2F 2F 62 75 69 6C 64 2F 70 72 6F 
6A 65 63 74 73    //build/projects
[2018/01/25 10:07:40:5486] ERR: 01A0: 2F 44 6F 6D 54 65 72 6D 07 
                 /DomTerm.
[2018/01/25 10:07:40:5486] ERR:
[2018/01/25 10:07:40:5486] ERR: ** 0x618c10: vh: default, prot: domterm, 
Illegal back-to-back write of 425 detected...

which is the ws stuff.

> I'll check for back-to-back lws_write calls in the websockets part.

I think you'll find resolving the if (a) lws_write(); if (b) 
lws_write(); ... pattern at the WRITABLE callback into one concatenated 
write will be the end of it.

-Andy



More information about the Libwebsockets mailing list