Dear Maintainer,
same bug (or a very similar one) is stil present in gmsh4.12.
Opening a fresh gmsh window (without default untitled.geo file in HOME
folder),
I am able to navigate, zoom, rotate the view, etc...
After adding points and lines seems OK too,
but adding a 3D object (e.g., a sphere) makes the gmsh application
crash.
However the library appears usable using the Python API, as long as no
graphical rendering is involved.
Example of backtrace of crash:
(gdb) bt
#0 0x00007fffe6f30f60 in ?? () from /lib/x86_64-linux-gnu/libLLVM-17.so.1
#1 0x00007fffe6f735f7 in LLVMBuildBitCast () from /lib/x86_64-linux-gnu/libLLVM-17.so.1
#2 0x00007fffee112402 in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#3 0x00007fffee113ceb in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#4 0x00007fffee11649b in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#5 0x00007fffee0e754c in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#6 0x00007fffee09810b in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#7 0x00007fffee098bfb in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#8 0x00007fffee09c358 in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#9 0x00007fffee0324cb in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#10 0x00007fffee02b386 in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#11 0x00007fffee02b815 in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#12 0x00007fffee02bcbd in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#13 0x00007fffedde688d in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#14 0x00007fffeddecc8b in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#15 0x00007fffedcce552 in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#16 0x00007fffedcfbeb9 in ?? () from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#17 0x00007ffff75bedef in drawContext::drawSphere(double, double, double, double, int) ()
from /lib/x86_64-linux-gnu/libgmsh.so.4.12
#18 0x00007ffff75af5d2 in drawGRegion::operator()(GRegion*) () from /lib/x86_64-linux-gnu/libgmsh.so.4.12
#19 0x00007ffff75ad6dc in drawContext::drawGeom() () from /lib/x86_64-linux-gnu/libgmsh.so.4.12
#20 0x00007ffff75a297b in drawContext::select(int, bool, bool, bool, int, int, int, int, std::vector<GVertex*, std::allocator<GVertex*> >&, std::vector<GEdge*, std::allocator<GEdge*> >&, std::vector<GFace*, std::allocator<GFace*> >&, std::vector<GRegion*, std::allocator<GRegion*> >&, std::vector<MElement*, std::allocator<MElement*> >&, std::vector<SPoint2, std::allocator<SPoint2> >&, std::vector<PView*, std::allocator<PView*> >&) ()
from /lib/x86_64-linux-gnu/libgmsh.so.4.12
#21 0x00007ffff74bd136 in openglWindow::_select(int, bool, bool, bool, int, int, int, int, std::vector<GVertex*, std::allocator<GVertex*> >&, std::vector<GEdge*, std::allocator<GEdge*> >&, std::vector<GFace*, std::allocator<GFace*> >&, std::vector<GRegion*, std::allocator<GRegion*> >&, std::vector<MElement*, std::allocator<MElement*> >&, std::vector<SPoint2, std::allocator<SPoint2> >&, std::vector<PView*, std::allocator<PView*> >&) ()
from /lib/x86_64-linux-gnu/libgmsh.so.4.12
#22 0x00007ffff74bea3f in openglWindow::handle(int) () from /lib/x86_64-linux-gnu/libgmsh.so.4.12
#23 0x00007ffff67454c9 in ?? () from /lib/x86_64-linux-gnu/libfltk.so.1.3
#24 0x00007ffff672d233 in ?? () from /lib/x86_64-linux-gnu/libfltk.so.1.3
#25 0x00007ffff672f47a in Fl::handle_(int, Fl_Window*) () from /lib/x86_64-linux-gnu/libfltk.so.1.3
#26 0x00007ffff67917aa in fl_wait(double) () from /lib/x86_64-linux-gnu/libfltk.so.1.3
#27 0x00007ffff672eb66 in Fl::wait(double) () from /lib/x86_64-linux-gnu/libfltk.so.1.3
#28 0x00007ffff672ec25 in Fl::run() () from /lib/x86_64-linux-gnu/libfltk.so.1.3
#29 0x00007ffff68456ca in __libc_start_call_main (main=main@entry=0x555555555050 <main>, argc=argc@entry=1,
argv=argv@entry=0x7fffffffdf68) at ../sysdeps/nptl/libc_start_call_main.h:58
#30 0x00007ffff6845785 in __libc_start_main_impl (main=0x555555555050 <main>, argc=1, argv=0x7fffffffdf68,
init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdf58)
at ../csu/libc-start.c:360
#31 0x0000555555555081 in _start ()