This example seems to capture the problem and likely is reproducble.
Hitting return on the first plot causes a segfault as the attempt
to draw the “fill=0” fails,
1 : mesh Th = square(100,100);
2 : fespace Vh(Th,P1);
3 : Vh xx=x;
4 : plot(xx,fill=1,value=1,wait=1);
5 : plot(xx,fill=0,value=1);
The first plot lets ma attach the debugger which then gives this stack trace,
Thread 1 "ffglut" received signal SIGSEGV, Segmentation fault.
0x00007f62ce86f505 in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
(gdb) bt
#0 0x00007f62ce86f505 in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#1 0x00007f62ce89381e in ?? () from /usr/lib/x86_64-linux-gnu/dri/iris_dri.so
#2 0x00005630511afa90 in OnePlotFE<Fem2D::Mesh2>::Draw (this=0x7f62b415d990,
win=0x563052340240) at ./../femlib/RNM.hpp:417
#3 0x00005630511956bc in ThePlot::Draw (this=0x7f62b4000b60,
win=0x563052340240) at ../Graphics/ffglut.cpp:2585
#4 0x00005630511959ad in OneWindow::Display (this=0x563052340240)
at ../Graphics/ffglut.cpp:2395
#5 OneWindow::Display (this=0x563052340240) at ../Graphics/ffglut.cpp:2379
#6 0x000056305119c66d in Display () at ../Graphics/ffglut.cpp:3748
#7 0x00007f62d0da1194 in ?? () from /usr/lib/x86_64-linux-gnu/libglut.so.3
#8 0x00007f62d0da4c39 in fgEnumWindows ()
from /usr/lib/x86_64-linux-gnu/libglut.so.3
#9 0x00007f62d0da17bd in glutMainLoopEvent ()
from /usr/lib/x86_64-linux-gnu/libglut.so.3
#10 0x00007f62d0da1ff5 in glutMainLoop ()
from /usr/lib/x86_64-linux-gnu/libglut.so.3
#11 0x00005630511080ee in main (argc=<optimized out>, argv=<optimized out>)
at ../Graphics/ffglut.cpp:4313
(gdb)
My freefem is linked as follows,
ldd `which FreeFem++`
linux-vdso.so.1 (0x00007ffeb355a000)
libumfpack.so.5 => /home/ubuntu/dev/freefem/install/ff-petsc/r/lib/libumfpack.so.5 (0x00007f7961599000)
libcholmod.so.3 => /home/ubuntu/dev/freefem/install/ff-petsc/r/lib/libcholmod.so.3 (0x00007f7961490000)
libarpack.so.2 => /home/ubuntu/dev/freefem/install/ff-petsc/r/lib/libarpack.so.2 (0x00007f7961443000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7961421000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f79612d2000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f79610ee000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f79610d3000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7960ee1000)
libamd.so.2 => /home/ubuntu/dev/freefem/install/ff-petsc/r/lib/libamd.so.2 (0x00007f7960ed5000)
libsuitesparseconfig.so.5 => /home/ubuntu/dev/freefem/install/ff-petsc/r/lib/libsuitesparseconfig.so.5 (0x00007f7960ed0000)
libblas.so.3 => /usr/lib/x86_64-linux-gnu/libblas.so.3 (0x00007f7960e61000)
libcolamd.so.2 => /home/ubuntu/dev/freefem/install/ff-petsc/r/lib/libcolamd.so.2 (0x00007f7960e57000)
libccolamd.so.2 => /home/ubuntu/dev/freefem/install/ff-petsc/r/lib/libccolamd.so.2 (0x00007f7960e49000)
libcamd.so.2 => /home/ubuntu/dev/freefem/install/ff-petsc/r/lib/libcamd.so.2 (0x00007f7960e3b000)
libmetis.so => /home/ubuntu/dev/freefem/install/ff-petsc/r/lib/libmetis.so (0x00007f7960dc9000)
liblapack.so.3 => /usr/lib/x86_64-linux-gnu/liblapack.so.3 (0x00007f7960725000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f7960700000)
libgfortran.so.5 => /usr/lib/x86_64-linux-gnu/libgfortran.so.5 (0x00007f7960438000)
/lib64/ld-linux-x86-64.so.2 (0x00007f7962714000)
libquadmath.so.0 => /usr/lib/x86_64-linux-gnu/libquadmath.so.0 (0x00007f79603ee000)