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

Crash to desktop with hundreds on redraws? #2521

Closed
Arch-Storm opened this issue May 5, 2024 · 4 comments
Closed

Crash to desktop with hundreds on redraws? #2521

Arch-Storm opened this issue May 5, 2024 · 4 comments
Labels
bug Something isn't working

Comments

@Arch-Storm
Copy link

Describe the bug
So this seems to happen when a large amount of redraws occur. I honestly am not sure what exactly causes the crash since it seems totally random in some cases and then extremely predictable at other times. I am using alpha-nvim as my greeter which has the option to show a terminal window inside the greeter. in the terminal i am running a rust cli program that displays an ascii animation (although i can confirm this also happens when using a bash script to do the same). this script basically prints an entire full terminal window of characters which are individually colored using ansi escape sequences to the window. i suspect that this huge amount of i/o is somehow causing the crash. i do see up to 60 MB/s ram usage using large animations. the weird part about this is that this error only happens inside neovide. the program itself runs perfectly fine in any shell and even using regular neovim inside a terminal doesn't crash.
also be warned, the log file is gigantic because of this. although from what i can tell only the last 3 or so lines are relevant and don't really add any information.

To Reproduce
Steps to reproduce the behavior:
I haven't been able to make the use case simpler. see my nvim config as reference: here
the actual terminal behaviour is defined under lua/plugins/alpha.lua and uses files inside the banner folder.

Expected behavior
No crash, just like in the terminal.

Screenshots
video of what the program draws on screen

Desktop (please complete the following information):

  • OS: Windows 11
  • Neovide Version: 0.12.2 (not using --wsl)
  • Neovim Version: 0.9.5

Please run neovide --log and paste the contents of the .log file created in the current directory here:
gist link

Additional contenxt
It might be interesting to note that the program in same cases always crashes on the exact same frame. i generate the ascii files programatically from gifs and for some weird reason the frame where this happens completely changes when the resolution of the ascii art is changed. i've found that the same animation can crash everytime on frame 24 at a low resolution, then crash always on frame 12 at a higher resolution but then crash again on frame 20 at an even higher resolution. this seems to suggest that datarate isn't connected but then again very small resolution never crash from what i've found.

Sorry for this disaster of an issue but i honestly have no idea where to even begin debugging any of this.

@Arch-Storm Arch-Storm added the bug Something isn't working label May 5, 2024
@fredizzimo
Copy link
Member

Are you able to test with Neovim nightly?

There was a bug that could cause issues like this, which is fixed but never backported to 0.9.5.

@Arch-Storm
Copy link
Author

Are you able to test with Neovim nightly?

There was a bug that could cause issues like this, which is fixed but never backported to 0.9.5.

I just tried using the latest nightly and unfortunately it didn't help. Log is identical

@fredizzimo
Copy link
Member

fredizzimo commented May 11, 2024

It looks like Neovim is running out of highlight ids, that's probably a Neovim bug. I thought it would be fixed with Neovim nightly, but I forgot that you were running the Neovide 0.12.2 release. You need to combine nightly with the latest main version of Neovide to make it stop sending those events.

@Arch-Storm
Copy link
Author

Using neovim nightly and compiling neovide from source did indeed solve the problem. Thank you very much!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants