-
Couldn't load subscription status.
- Fork 49
Fix: memory leaks #33
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
base: master
Are you sure you want to change the base?
Conversation
|
Once I get #32 merged and then looking to integrate this one |
|
When I use this branch I'm seeing a JS error in the widgets demo when I try to change colors: It seems like event targets here are null: { target: undefined, currentTarget: undefined }While in main they are defined: {
target:
{
uid: '88',
style: { uid: '88', style: [Circular], dataset: [Object] },
dataset: { color: 16007990 }
},
currentTarget:
{
uid: '88',
style: { uid: '88', style: [Circular], dataset: [Object] },
dataset: { color: 16007990 }
}
}
|
|
Ok, I will investigate that issue in the coming weeks |
reference and proxy to the components where preventing GC fix for lvgl#23
f86a19a to
dd17997
Compare
This cause a segfault
dd17997 to
6be145f
Compare
|
Rebase on master (+ code adjustment) |
|
It is fixed now. The [] operator on the instance map wasn't working, I had to use get() instead. Quite strange since this is not directly related to one of my changes. |
|
Again, a fix for crashes related to object deletion. These bindings really need a big refactoring concerning the memory management of the lvgl object coupled with the C++ code. Because of the async nature, this code seems really not memory safe At least, all of this is already an improvement, but a good modern C++ refactoring would be needed to be sure that these bindings are stable even with larger project. |
This PR fix some memory leaks, as well as the one observed in #19.
I attached two screen captures of a small stress test that switch between the tabs of the demo app as proof.
mem_leak.webm
no_mem_leak.webm
I found others in the runtime, but they would be addressed if #32 is accepted.