Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

KITTY_ENABLE_WAYLAND=1 crashes with "Data too big for buffer" #1526

Closed
victortrac opened this issue Apr 6, 2019 · 5 comments
Closed

KITTY_ENABLE_WAYLAND=1 crashes with "Data too big for buffer" #1526

victortrac opened this issue Apr 6, 2019 · 5 comments

Comments

@victortrac
Copy link

When I run kitty with KITTY_ENABLE_WAYLAND=1 kitty, I can get it to crash with this:

echo 'Q2VydGlmaWNhdGU6CiAgICBEYXRhOgogICAgICAgIFZlcnNpb246IDMgKDB4MikKICAgICAgICBTZXJpYWwgTnVtYmVyOgogICAgICAgICAgICAwNDo2NzphMDphZTplZjpkYzo5NjowNzpkMDo3Zjo5YTowNzpjODo4Yzo3MTo0NDo5NDo3NAogICAgICAgIFNpZ25hdHVyZSBBbGdvcml0aG06IHNoYTI1NldpdGhSU0FFbmNyeXB0aW9uCiAgICAgICAgSXNzdWVyOiBDID0gVVMsIE8gPSBMZXQncyBFbmNyeXB0LCBDTiA9IExldCdzIEVuY3J5cHQgQXV0aG9yaXR5IFgzCiAgICAgICAgVmFsaWRpdHkKICAgICAgICAgICAgTm90IEJlZm9yZTogRmViIDE2IDAwOjU1OjExIDIwMTkgR01UCiAgICAgICAgICAgIE5vdCBBZnRlciA6IE1heSAxNyAwMDo1NToxMSAyMDE5IEdNVAogICAgICAgIFN1YmplY3Q6IENOID0gZ251cGcub3JnCiAgICAgICAgU3ViamVjdCBQdWJsaWMgS2V5IEluZm86CiAgICAgICAgICAgIFB1YmxpYyBLZXkgQWxnb3JpdGhtOiByc2FFbmNyeXB0aW9uCiAgICAgICAgICAgICAgICBSU0EgUHVibGljLUtleTogKDIwNDggYml0KQogICAgICAgICAgICAgICAgTW9kdWx1czoKICAgICAgICAgICAgICAgICAgICAwMDpiNjo1YTplMzo4ZDo0ODphODoyZDo1NDpkNTo5ODo0ODo3Zjo3Mzo1NDoKICAgICAgICAgICAgICAgICAgICBiMjpmZTo2ODo1NDowOTplNzozNzoxNTo5MzphODpiOTo1NTo4OTphNTplZjoKICAgICAgICAgICAgICAgICAgICA4ODplOToyMTo3NjowYTo0ZjpkYzphYjo1OTphMTo3OTo4Mzo5OTphZTo3MzoKICAgICAgICAgICAgICAgICAgICA1NzoyNjo3ZDo3NDphYzo0MjpmMDo2MDplNDo5ZDowNDo2MTo5NTo0ZTo0ZjoKICAgICAgICAgICAgICAgICAgICA3MTo3NDo3Mjo0MTphNjpjYTpiYzo5ODpiOTo2ODphMzo1Yzo4Yzo5MDpkZToKICAgICAgICAgICAgICAgICAgICAzYjowYjo5Yjo2NTpjZjo4NDozYjo2ZjpiNzo5Yzo0YjplNzpmYToxOTo1ODoKICAgICAgICAgICAgICAgICAgICBiYjowYzoyNjoxOTowOTo3ZDplMjo1OTo1MjoxZDpkOTo5NjphNjo2ZDplZjoKICAgICAgICAgICAgICAgICAgICAxYTo3MTo0ODpmZjpkNToxMDozNzpkOTo5ZjpjZTozOTpkMDpjMjozMzo2YToKICAgICAgICAgICAgICAgICAgICBhYzpjNzphNzpiODphZTo0Nzo5YTo3YzpmYjozYTo1ODpjYjo3Yjo1MzpjODoKICAgICAgICAgICAgICAgICAgICA2OTozMjo2NzozMTo1NjpiNzo4ZDowMzpmOTo0YjpkNToxMzowNjozOToyYzoKICAgICAgICAgICAgICAgICAgICA4OToyMzo2YzowMDo2YTo4YjowYjo5MTo1ZDpmMDozNDplMzpjNToxZjpjNDoKICAgICAgICAgICAgICAgICAgICBjZTo4MjplMTpmNDpmYToyMTo0MTplMDozODo2NDo4ZjowYTpjMTphNzphZjoKICAgICAgICAgICAgICAgICAgICBhOToyYToyYjowNzo1YTo2MTo3Yjo0Yjo4MjpkOToyYjpkNjo3NjowMTpkOToKICAgICAgICAgICAgICAgICAgICBiNDo1MDoyMzoxYTowZDoxZTpkNTozZDo3OTo5ZDpkZTowZTozNjo1NTphNToKICAgICAgICAgICAgICAgICAgICBhODo2ZTpiZDpiZDpiOToxNTozYjpiYjpkZjoyYzo5MDowNTo1NTphOTo2ZToKICAgICAgICAgICAgICAgICAgICBmYjpkOTo0ZDozYjplYTo5MTplNTo1MjoxOTpkNToxNjowNjpkMzpiZDphMjoKICAgICAgICAgICAgICAgICAgICA1MjphODpkMzpkYjpmMDoxODo3ODphMTphMDpkYTo2MTo1NDpmYzo5ZDoyYjoKICAgICAgICAgICAgICAgICAgICA1ODo0OQogICAgICAgICAgICAgICAgRXhwb25lbnQ6IDY1NTM3ICgweDEwMDAxKQogICAgICAgIFg1MDl2MyBleHRlbnNpb25zOgogICAgICAgICAgICBYNTA5djMgS2V5IFVzYWdlOiBjcml0aWNhbAogICAgICAgICAgICAgICAgRGlnaXRhbCBTaWduYXR1cmUsIEtleSBFbmNpcGhlcm1lbnQKICAgICAgICAgICAgWDUwOXYzIEV4dGVuZGVkIEtleSBVc2FnZTogCiAgICAgICAgICAgICAgICBUTFMgV2ViIFNlcnZlciBBdXRoZW50aWNhdGlvbiwgVExTIFdlYiBDbGllbnQgQXV0aGVudGljYXRpb24KICAgICAgICAgICAgWDUwOXYzIEJhc2ljIENvbnN0cmFpbnRzOiBjcml0aWNhbAogICAgICAgICAgICAgICAgQ0E6RkFMU0UKICAgICAgICAgICAgWDUwOXYzIFN1YmplY3QgS2V5IElkZW50aWZpZXI6IAogICAgICAgICAgICAgICAgMzM6NkE6RTA6MjA6M0M6QTU6MDI6MUU6RkY6MUE6NDI6QTE6OUM6MUE6MTc6RjM6MkQ6ODI6MEI6RDAKICAgICAgICAgICAgWDUwOXYzIEF1dGhvcml0eSBLZXkgSWRlbnRpZmllcjogCiAgICAgICAgICAgICAgICBrZXlpZDpBODo0QTo2QTo2MzowNDo3RDpERDpCQTpFNjpEMTozOTpCNzpBNjo0NTo2NTpFRjpGMzpBODpFQzpBMQoKICAgICAgICAgICAgQXV0aG9yaXR5IEluZm9ybWF0aW9uIEFjY2VzczogCiAgICAgICAgICAgICAgICBPQ1NQIC0gVVJJOmh0dHA6Ly9vY3NwLmludC14My5sZXRzZW5jcnlwdC5vcmcKICAgICAgICAgICAgICAgIENBIElzc3VlcnMgLSBVUkk6aHR0cDovL2NlcnQuaW50LXgzLmxldHNlbmNyeXB0Lm9yZy8KCiAgICAgICAgICAgIFg1MDl2MyBTdWJqZWN0IEFsdGVybmF0aXZlIE5hbWU6IAogICAgICAgICAgICAgICAgRE5TOmdudXBnLm9yZywgRE5TOnd3dy5nbnVwZy5vcmcKICAgICAgICAgICAgWDUwOXYzIENlcnRpZmljYXRlIFBvbGljaWVzOiAKICAgICAgICAgICAgICAgIFBvbGljeTogMi4yMy4xNDAuMS4yLjEKICAgICAgICAgICAgICAgIFBvbGljeTogMS4zLjYuMS40LjEuNDQ5NDcuMS4xLjEKICAgICAgICAgICAgICAgICAgQ1BTOiBodHRwOi8vY3BzLmxldHNlbmNyeXB0Lm9yZwoKICAgICAgICAgICAgQ1QgUHJlY2VydGlmaWNhdGUgU0NUczogCiAgICAgICAgICAgICAgICBTaWduZWQgQ2VydGlmaWNhdGUgVGltZXN0YW1wOgogICAgICAgICAgICAgICAgICAgIFZlcnNpb24gICA6IHYxICgweDApCiAgICAgICAgICAgICAgICAgICAgTG9nIElEICAgIDogNzQ6N0U6REE6ODM6MzE6QUQ6MzM6MTA6OTE6MjE6OUM6Q0U6MjU6NEY6NDI6NzA6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQzI6QkY6RkQ6NUU6NDI6MjA6MDg6QzY6Mzc6MzU6Nzk6RTY6MTA6N0I6Q0M6NTYKICAgICAgICAgICAgICAgICAgICBUaW1lc3RhbXAgOiBGZWIgMTYgMDE6NTU6MTEuNzMyIDIwMTkgR01UCiAgICAgICAgICAgICAgICAgICAgRXh0ZW5zaW9uczogbm9uZQogICAgICAgICAgICAgICAgICAgIFNpZ25hdHVyZSA6IGVjZHNhLXdpdGgtU0hBMjU2CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMzA6NDY6MDI6MjE6MDA6Qzg6MkQ6Nzc6RTQ6RUM6RUU6QUE6RTM6N0M6Mzk6Nzk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMEY6Qjk6RTU6QjI6RTc6RDQ6NTk6QzA6OTU6NzY6RjY6MUU6REM6MTk6RUQ6RDE6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgREM6NzA6QTg6MDc6REQ6MDI6MjE6MDA6OUE6Nzg6MUY6Qzg6QkI6NDU6Q0M6Qzk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNDg6RDI6NUQ6RTI6RTI6MDY6NkE6MTQ6RDY6Qjg6RjE6NTk6RDQ6NDA6OTg6ODM6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQTU6RUM6MUY6Qjc6NDI6QTM6QTY6MUMKICAgICAgICAgICAgICAgIFNpZ25lZCBDZXJ0aWZpY2F0ZSBUaW1lc3RhbXA6CiAgICAgICAgICAgICAgICAgICAgVmVyc2lvbiAgIDogdjEgKDB4MCkKICAgICAgICAgICAgICAgICAgICBMb2cgSUQgICAgOiA2MzpGMjpEQjpDRDpFODozQjpDQzoyQzpDRjowQjo3Mjo4NDoyNzo1Nzo2QjozMzoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBNDo4RDo2MTo3Nzo4RjpCRDo3NTpBNjozODpCMTpDNzo2ODo1NDo0QjpEODo4RAogICAgICAgICAgICAgICAgICAgIFRpbWVzdGFtcCA6IEZlYiAxNiAwMTo1NToxMS43NDEgMjAxOSBHTVQKICAgICAgICAgICAgICAgICAgICBFeHRlbnNpb25zOiBub25lCiAgICAgICAgICAgICAgICAgICAgU2lnbmF0dXJlIDogZWNkc2Etd2l0aC1TSEEyNTYKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMDo0NTowMjoyMTowMDpFNzo0OTo2MToxQTpBRDpDMDoyNDowMzpBQzpBMjpCRDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0Rjo0OTpGRjo2Qzo1Mjo2NDpFOTo0MzpDOTpENjo2Mjo5ODpEMjpDRjowMTowRjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBOTpDNzo4QTpENDo2QjowMjoyMDo1NjowMzoxQzo3QTo1NTo5QzpCRTo3RDpCNzoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyODo5ODoyRjoyRDpBRTozODo3ODpBMjoyMTpGRTpBQjpFODozQjoyMzpERDpFMjoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0NToxQzoxMTo0RTpBNjo5Qzo4MQogICAgU2lnbmF0dXJlIEFsZ29yaXRobTogc2hhMjU2V2l0aFJTQUVuY3J5cHRpb24KICAgICAgICAgNzk6ZDY6YmI6ZTY6OTQ6NjI6Yzk6NjU6NWE6N2U6Y2Q6ZDI6Nzg6YjM6ODM6NTU6MmU6ZmQ6CiAgICAgICAgIGE3OmRjOjdjOmYxOjg4Ojg0OjJiOjBjOjk1OjE0OmQzOjVlOjRlOjcwOmE0OmYzOjliOmM3OgogICAgICAgICA5Yjo2OToyYzpjNToyYTo0NTpiOTozNzpiYzo3MDpiNTozMjo2Mjo4ZDo2Yzo2ZTo4MTplZjoKICAgICAgICAgMDc6MGQ6MGM6ZTM6YjU6MmE6NDE6Nzk6MWM6NzI6NTA6ODY6NWE6Zjg6NzI6YTc6MzY6OGM6CiAgICAgICAgIGQyOmVkOmE2OmE0OjdlOjdjOmJiOjRiOjlhOjEzOjMwOjJlOjc4OmMyOmVlOjQzOmFjOjkzOgogICAgICAgICA5MjpkMDoxYjozYzozNzphYTo4ODo3ODo3ZDowNDo5OTo0YjoyYTo3YjpkNzowMTo1ZTo2YzoKICAgICAgICAgM2U6OWY6M2Y6MWE6ZTY6MzY6ZDg6YjM6MmU6Yzk6MjQ6OTg6NjQ6YWQ6NmM6Yjc6YTQ6MjU6CiAgICAgICAgIDdiOmFiOjE3OjU5OmU3Ojg3OjVkOjAzOjI2OjJiOmEzOmI2OjZjOjg3OmE3OjQ1OjVmOmMxOgogICAgICAgICA2Mjo5YTo1MjpiOTpiMDo1NDowMjpmMDphNzozZDowYTplNDphZjpjMTozOTplOTowMzpjMzoKICAgICAgICAgMmI6ZDE6ZTI6MGE6YzU6NmQ6ZGE6ZWM6Yjc6MmU6OWM6ODU6NmE6M2Y6ZmE6MTE6MDU6ZmU6CiAgICAgICAgIGQ4OmViOjE2Ojg1OjViOmQ5OjRiOjU5OmY0OjZjOmRhOjMyOmU5OjE5OmY4OjY3OmYwOmY4OgogICAgICAgICA2NDo0MTpmYTo5OTozZDo1MDo4ZTo2OToyYTo1ZDo4ODpiZTplZDplYzpjOTpmZTo5ZTpiOToKICAgICAgICAgZWY6MDc6ZjY6OGE6ODI6OWE6MzI6MWE6ZmY6MmI6Zjk6Nzk6Njg6ZDQ6NTU6YTk6NDc6ZTA6CiAgICAgICAgIDY0OjM3OjVmOjAyOjBjOjFlOmVkOjQ0OjI4Ojk0OjAwOjZlOjNhOjc0OjE1OmZiOjgyOjc1OgogICAgICAgICAwMzo4NDo2NDo0ZAo=' | base64 -d

This results in kitty crashing with this error:

Data too big for buffer (7112 > 4096).
Error sending request: Argument list too long
Aborted (core dumped)

This is reproducible under both gnome-shell and sway 1.0-8.

Versions:

$ pacman -Ss wayland | grep installed
extra/libva 2.4.0-1 [installed]
extra/wayland 1.17.0-1 [installed]
extra/wayland-protocols 1.17-1 [installed]
extra/xorg-server-xwayland 1.20.4-1 (xorg) [installed]
community/bemenu 0.1.0-1 [installed]
community/sway 1.0-8 [installed]
community/swayidle 1.2-2 [installed]
community/swaylock 1.3-3 [installed]
community/waybar 0.5.1-1 [installed]
community/wlroots 0.5.0-1 [installed]

$ kitty --version
kitty 0.13.3 created by Kovid Goyal
@kovidgoyal
Copy link
Owner

I cannot reproduce in master with HEAD, so I assume this is already
fixed. If it is still an issue when building kitytfrom source, or after
the next release, feel free to re-open.

@XVicarious
Copy link

I get this on 0.14.2. I'm also on Arch, using Sway. I get it when a large amount of data is being output to the screen (like a program ending and dumping a log to the screen). I'll build from master to check that too. If there is any other information you'd like me to collect, please let me know.

@kovidgoyal
Copy link
Owner

I need some way to reproduce. Or at least a stack trace. because those error messages are not from kitty code.

@victortrac
Copy link
Author

My issue was caused by setting a too-long PROMPT_COMMAND in my ~/.bashrc. I was setting the title to the entirety of my last command, which broke for very long commands (piping in some b64-encoded strings to base64, for example).

@Hello71
Copy link

Hello71 commented Jan 27, 2020

reproducer:

for ((i=1;i<=10;i++)); do kitty sh -c 'printf "\xc2\x9d"; printf 0%.0s {1..50000}; sleep 0.2'; echo $?; done

expected results: 10x "0". actual results: 10x

[026 21:33:04.664120] [PARSE ERROR] OSC sequence too long, truncating.
Data too big for buffer (8200 > 4096).
Error sending request: Argument list too long
134

backtrace:

#0  0x00007ffff7a64f25 in raise () from /usr/lib/libc.so.6
#1  0x00007ffff7a4e897 in abort () from /usr/lib/libc.so.6
#2  0x00007ffff61bdf80 in ?? () from /usr/lib/libwayland-client.so.0
#3  0x00007ffff61b9c88 in wl_proxy_marshal_array_constructor_versioned () from /usr/lib/libwayland-client.so.0
#4  0x00007ffff61b9dde in wl_proxy_marshal () from /usr/lib/libwayland-client.so.0
#5  0x00007ffff6a98359 in ?? () from /usr/bin/../lib/kitty/kitty/fast_data_types.so
#6  0x00007ffff61fad3d in glfwRunMainLoop () from /usr/lib/kitty/kitty/glfw-wayland.so
#7  0x00007ffff6a8fed8 in ?? () from /usr/bin/../lib/kitty/kitty/fast_data_types.so
#8  0x00007ffff7d2d436 in ?? () from /usr/lib/libpython3.8.so.1.0
#9  0x00007ffff7ddf0ce in _PyEval_EvalFrameDefault () from /usr/lib/libpython3.8.so.1.0
[ more python frames omitted ]
#32 0x00007ffff7d1e30d in PyObject_Call () from /usr/lib/libpython3.8.so.1.0
#33 0x00007ffff7e65511 in ?? () from /usr/lib/libpython3.8.so.1.0
#34 0x00007ffff7cff945 in ?? () from /usr/lib/libpython3.8.so.1.0
#35 0x00007ffff7cffca9 in Py_Main () from /usr/lib/libpython3.8.so.1.0
#36 0x0000555555555240 in main ()

kitty version: 0.15.1
sway version: 1.2
wayland version: 1.17.0

I know the backtrace isn't that useful, but I'm too lazy to rebuild wayland and kitty, and I probably won't be able to fix it anyways. hopefully you can reproduce with the provided command.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants