which is out-of-bounds but shouldn't ... cause a failure.
It is undefined behaviour, so it can do anything, including aborting, which is what the version of stdlibc++ used by the OP decides to do, even if mine and yours and most others don't.
@xiota as you are the only one with a standard library that conveniently aborts can you try adding a line after `scintilla/gtk/PlatGTK.cxx:610` (which should be the SurfaceImpl::DrawRGBAImage function) with:
``` if(width == 0)return; ```
and see if it still aborts?