-
Notifications
You must be signed in to change notification settings - Fork 17
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
segfault from content_size
#61
Comments
Hi, I am @kojix2 and maingainer of LibUI (Ruby binding of libui-ng), the backend of glimmer-dsl-libui. Could you tell me what OS and libui version you are using?
Also, if you don't mind, could you show me the entire error message? |
@kojix2 Thanks for the quick response and apologies for not posting the details up-front. Github was rejecting my copy-pasted stacktrace, and I wanted to make sure I didn't forget to post anything, but I was in a bit of a hurry.
|
And, although my architecture is probably obvious from the above dump, here it is for completeness. 🙂
|
I see this error as well.
|
@nevans, @GyozaGuy The libui-ng shared library is built on Use require "glimmer-dsl-libui"
# Path to the libui.so
puts LibUI.ffi_lib
# => "/home/kojix2/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/libui-0.1.3.pre-x86_64-linux/vendor/libui.x86_64.so" ldd /home/kojix2/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/libui-0.1.3.pre-x86_64-linux/vendor/libui.x86_64.so Or ruby -r glimmer-dsl-libui -e 'system("ldd #{LibUI.ffi_lib}")' Example of expected output
If a required library is missing, the output will be |
None missing for me. So far I only have this error when running
|
I see... I have reproduced the problem. I would like to look into the cause.
|
I found the cause of the problem. In April, in libui-ng, pull request #189 unix: Fix uiWindowContentSizeChanged() was merged.
#0 0x0000000000000000 in ??? ()
#1 0x00007ffff2429221 in uiMainStep (wait=1) at ../unix/main.c:75
#2 0x00007ffff2431027 in uiWindowSetContentSize (w=0x555555fc26c0, width=50, height=20) at ../unix/window.c:254 In order to initialize the In - uiInit
(0) #<LibUI::FFI::InitOptions:0x00007f5afe746c50>
- uiNewWindow
(0) Option Selector (1) 190 (2) 150 (3) 1
- uiWindowOnClosing
(0) oCiuxinUdniW (1) #<Fiddle::Closure::BlockCaller:0x00007f5b04ff18b8> (2)
- uiWindowSetContentSize
(0) oCiuxinUdniW (1) 50 (2) 20
I understand where the problem lies, but there is room for discussion on how it should be fixed. Should we ask the libui-ng team to make changes to the code so that |
In the meantime, in glimmer-dsl-libui 0.11.3, I downgraded the dependency down to the 0.1.2.pre LibUI binding. Could you all please try glimmer-dsl-libui 0.11.3 and see if it resolved the crashing issue? |
@kojix2 that sounds like a good idea. Please do so. (For example, this is possible in SWT, so it should be possible in LibUI too.) |
|
@nevans Did you try my suggestion to upgrade to a newer version of glimmer-dsl-libui to resolve this issue (it worked for @GyozaGuy )? You can try version 0.11.6 now as that's the latest. Please confirm if it resolves your issue as it was caused by an upstream upgrade of the C libui library, which had a bug, so I changed the glimmer-dsl-libui dependency version to a previous version that works (no bug), and it should work now. |
No description provided.
The text was updated successfully, but these errors were encountered: