You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
Possible double-free situation in RenderableManager::Builder.
A bit early to tell, but the combination of using default copy constructors with a constructor/destructor that does a new/delete is usually a problem.
filament.js:1820 wasm streaming compile failed: abort("segmentation fault") at Error
at jsStackTrace (http://localhost:8080/filament.js:1146:13)
at stackTrace (http://localhost:8080/filament.js:1163:12)
at abort (http://localhost:8080/filament.js:13147:44)
at segfault (http://localhost:8080/filament.js:481:3)
at SAFE_HEAP_LOAD_i32_4_U_4 (wasm-function[8735]:29)
at __ZN8filament17RenderableManager7BuilderD2Ev [filament::RenderableManager::Builder::~Builder()] (wasm-function[3357]:47)
at _ZN10emscripten8internal7InvokerIN8filament17RenderableManager7BuilderEJiEE6invokeEPFS4_iEi [emscripten::internal::Invoker<filament::RenderableManager::Builder, int>::invoke(filament::RenderableManager::Builder (*)(int), int)] (wasm-function[1060]:80)
at dynCall_iii (wasm-function[8591]:16)
at dynCall_iii_396 (eval at makeDynCaller (http://localhost:8080/filament.js:6300:19), :4:12)
at Function.RenderableManager$Builder [as Builder] (eval at new (http://localhost:8080/filament.js:6496:27), :8:10)
Expected behavior
example should run.
Desktop (please complete the following information):
This is build and run on Mac + Chrome.
WebGL backend.
The text was updated successfully, but these errors were encountered:
The move ctor wasn't implemented properly. We actually fix this by
using a std::vector<> instead of a raw allocation for storing entries.
This std::vector<> is never reallocated.
Describe the bug
Possible double-free situation in RenderableManager::Builder.
A bit early to tell, but the combination of using default copy constructors with a constructor/destructor that does a new/delete is usually a problem.
See RenderableManager.cpp
To Reproduce
Latest master (e9430dd)
Running triangle.html, if fails to run in debug.
With extra flags turned on, we get more data:
Adding these options to web/filament-js/CMakeLists.txt
set(LOPTS "${LOPTS} -s ASSERTIONS=1")
set(LOPTS "${LOPTS} -s SAFE_HEAP=1")
set(LOPTS "${LOPTS} -s DEMANGLE_SUPPORT=1")
Running out/cmake-webgl-debug/web/samples/triangle.html:
filament.js:1820 wasm streaming compile failed: abort("segmentation fault") at Error
at jsStackTrace (http://localhost:8080/filament.js:1146:13)
at stackTrace (http://localhost:8080/filament.js:1163:12)
at abort (http://localhost:8080/filament.js:13147:44)
at segfault (http://localhost:8080/filament.js:481:3)
at SAFE_HEAP_LOAD_i32_4_U_4 (wasm-function[8735]:29)
at __ZN8filament17RenderableManager7BuilderD2Ev [filament::RenderableManager::Builder::~Builder()] (wasm-function[3357]:47)
at _ZN10emscripten8internal7InvokerIN8filament17RenderableManager7BuilderEJiEE6invokeEPFS4_iEi [emscripten::internal::Invoker<filament::RenderableManager::Builder, int>::invoke(filament::RenderableManager::Builder (*)(int), int)] (wasm-function[1060]:80)
at dynCall_iii (wasm-function[8591]:16)
at dynCall_iii_396 (eval at makeDynCaller (http://localhost:8080/filament.js:6300:19), :4:12)
at Function.RenderableManager$Builder [as Builder] (eval at new (http://localhost:8080/filament.js:6496:27), :8:10)
Expected behavior
example should run.
Desktop (please complete the following information):
This is build and run on Mac + Chrome.
WebGL backend.
The text was updated successfully, but these errors were encountered: