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
Powerline possibly sends garbage characters on resize #1831
Comments
Powerline itself does not have any C code aside from the C client (which is too simple and much unlikely having any bugs like this) and also does not care about resizes more then having a “width” argument. With the technology stack used any “stack array overrun” problem most likely comes from (in order, assuming you are using powerline-daemon) your terminal (as it is being developed), zsh, powerline C client (least likely, it only sends arguments and environment variables as-is via a socket, and the only thing which should change at resize is that width argument), powerline ctypes code (stack array overrun resulting in some data sent to a socket is not very likely), CPython, some powerline C dependency (even less likely), C compiler (client C code is really simple). You may get some more data if you
Do not forget to restart daemon after changing configuration or uninstalling a dependency. This is not required for other tests. |
Thank you, that was some seriously detailed information. Using those tricks I have now figured out that it is a bug in zshell 5.2, which is the one that still comes preinstalled in OSX. Using 5.3 from brew eliminates the problem. I also managed to see the issue in another Terminal Emulator in the form of random bell sounds (the 0x07 characters in that binary dump). |
I had a problem with a terminal emulator I am developing for some time with powerline sending garbage characters on stdout if you resize rapidly. Initially I thought it was a bug on my side but after investigating it looks like it comes from powerline, or zsh/powerline in combination.
I log all bytes directly in the terminal, reading from the zsh process, and I see sequences like these;
embedded among normal ansi sequences. It looks like they may be addresses, so it is potentially a stack array overrun problem.
As I have not been able to reproduce it in other terminal emulators I post this here as a FYI, hoping that someone has an idea why this happens.
The text was updated successfully, but these errors were encountered: