andlabs / andlabs/libui

A Julia binding and a crash on second call.

Đang mở
#75 6 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
C
Star
10.9k
Fork
612
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

Hi, on Windows10 64 here

I made a quick [wrapper ](https://github.com/joa-quim/Libui.jl) of libui to Julia and ported the `controlgallery` example as well a very stripped down example that looks almost like in C

```
o = Libui.uiInitOptions(0);
err = uiInit(Ref(o));
menu = uiNewMenu("File");

item = uiMenuAppendItem(menu, "Item");
item = uiMenuAppendQuitItem(menu);
mainwin = uiNewWindow("Window", 640, 480, 1);
uiWindowOnClosing(mainwin, cfunction(onClosing, Ptr{Void}, (Ptr{uiWindow},)), C_NULL);
uiControlShow(convert(Ptr{uiControl}, mainwin));
uiMain();
uiUninit();
```

The thing is that this works on first call but crashes on second. I than built a libui debug version and caught the crash inside debug.cpp/realbug() at the end of that function.

Don't know what made it crash but noticed that the `msg` variable in that function has this content

```
Some data was leaked; either you left a uiControl lying around or there's a bug in libui itself. Leaked data:
00000000001FE340 char[]
```

Ah, and the crash seams to be triggered by the `menu = uiNewMenu("File");` command. If I comment it above than no crash.
Note that when we run it via Julia any eventual leaks/conflicts left over from first call are potentially left visible in posteriors calls, but the same is probably true for other language bindings.

Joaquim

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.