bl.unpackTo( scr,
[
// [snip]
'S max_installed_maps',
'L root_visual',
'C root_depth',
// ^^^^ this should not be here: the next thing after root_visual should be backing_stores
'C backing_stores',
'C root_depth', /// <-- root depth is duplicated here, and no save_unders is considered
'C num_depths'
],
function () {
var depths = {};
From the X11 protocol spec, it should be:
So:
your first root_depth should be dropped ✂️
your second root_depth is fine 👍
and it should be followed by save_unders 🆕
I'm currently implementing a teeny X11 server and I'm using your client to test it and insert debug statements. I was comparing your "unpack" to my "pack" to see if they line up and just happened to notice this discrepancy! 😄
I think it doesn't actually cause a bug or anything because the values coincidentally line up or aren't used. I'll let you know if I find anything else.
In handshake.js L85 there is this benign issue:
From the X11 protocol spec, it should be:
So:
root_depth
should be dropped ✂️root_depth
is fine 👍save_unders
🆕I'm currently implementing a teeny X11 server and I'm using your client to test it and insert debug statements. I was comparing your "unpack" to my "pack" to see if they line up and just happened to notice this discrepancy! 😄
I think it doesn't actually cause a bug or anything because the values coincidentally line up or aren't used. I'll let you know if I find anything else.