random crash while browsing recorded frames in inspector
Steps to reproduce
No idea, it just happened randomly while I was checking the recorded frames in the inspector. I haven't changed anything texture related in my app. I hope the backtrace is useful otherwise feel free to close this.
Version information
gtk 4.5.1 as meson subproject on Arch Linux
Warnings
Gsk:ERROR:../subprojects/gtk-4.5.1/gsk/gl/gskgldriver.c:890:gsk_gl_driver_release_texture: assertion failed: (texture != NULL)
Bail out! Gsk:ERROR:../subprojects/gtk-4.5.1/gsk/gl/gskgldriver.c:890:gsk_gl_driver_release_texture: assertion failed: (texture != NULL)
Backtrace
**
Gsk:ERROR:../subprojects/gtk-4.5.1/gsk/gl/gskgldriver.c:890:gsk_gl_driver_release_texture: assertion failed: (texture != NULL)
Bail out! Gsk:ERROR:../subprojects/gtk-4.5.1/gsk/gl/gskgldriver.c:890:gsk_gl_driver_release_texture: assertion failed: (texture != NULL)
Thread 1 "zrythm" received signal SIGABRT, Aborted.
0x00007ffff58d0d22 in raise () from /usr/lib/libc.so.6
(gdb) bt
#0 0x00007ffff58d0d22 in raise () at /usr/lib/libc.so.6
#1 0x00007ffff58ba862 in abort () at /usr/lib/libc.so.6
#2 0x00007ffff7182084 in () at /usr/lib/libglib-2.0.so.0
#3 0x00007ffff71de65d in g_assertion_message_expr () at /usr/lib/libglib-2.0.so.0
#4 0x00007ffff7b227a4 in gsk_gl_driver_release_texture (self=0x555582b9f680, texture=0x0) at ../subprojects/gtk-4.5.1/gsk/gl/gskgldriver.c:890
#5 0x00007ffff7b387a1 in gsk_gl_texture_library_begin_frame (self=0x5555906fc630, frame_id=900, removed_atlases=0x0) at ../subprojects/gtk-4.5.1/gsk/gl/gskgltexturelibrary.c:190
#6 0x00007ffff7b21d2f in gsk_gl_driver_begin_frame (self=0x555582b9f680, command_queue=0x555582c00bf0) at ../subprojects/gtk-4.5.1/gsk/gl/gskgldriver.c:590
#7 0x00007ffff7b0ffc4 in gsk_gl_renderer_render (renderer=0x5555905fa8e0, root=0x555593e97a30, update_area=0x55559561c390) at ../subprojects/gtk-4.5.1/gsk/gl/gskglrenderer.c:223
#8 0x00007ffff7aecbb1 in gsk_renderer_render (renderer=0x5555905fa8e0, root=0x555593e97a30, region=0x555593e0c7f0) at ../subprojects/gtk-4.5.1/gsk/gskrenderer.c:462
#9 0x00007ffff78db039 in gtk_widget_render (widget=0x55558e1e62a0, surface=0x55558fae6cb0, region=0x555593e0c7f0) at ../subprojects/gtk-4.5.1/gtk/gtkwidget.c:11693
#10 0x00007ffff78eaa79 in surface_render (surface=0x55558fae6cb0, region=0x555593e0c7f0, widget=0x55558e1e62a0) at ../subprojects/gtk-4.5.1/gtk/gtkwindow.c:4798
#11 0x00007ffff7a3745e in _gdk_marshal_BOOLEAN__BOXEDv (closure=0x5555906f27f0, return_value=0x7fffffffd560, instance=0x55558fae6cb0, args=0x7fffffffd610, marshal_data=0x0, n_params=1, param_types=0x5555827f67a0)
at subprojects/gtk-4.5.1/gdk/gdkmarshalers.c:130
#12 0x00007ffff72cb1c0 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#13 0x00007ffff72cb330 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#14 0x00007ffff7a779a0 in gdk_surface_process_updates_internal (surface=0x55558fae6cb0) at ../subprojects/gtk-4.5.1/gdk/gdksurface.c:1346
#15 0x00007ffff7a77d08 in gdk_surface_paint_on_clock (clock=0x555582827280, data=0x55558fae6cb0) at ../subprojects/gtk-4.5.1/gdk/gdksurface.c:1434
#16 0x00007ffff72cb1c0 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#17 0x00007ffff72cb330 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#18 0x00007ffff7a5e4c5 in _gdk_frame_clock_emit_paint (frame_clock=0x555582827280) at ../subprojects/gtk-4.5.1/gdk/gdkframeclock.c:708
#19 0x00007ffff7a5f4d8 in gdk_frame_clock_paint_idle (data=0x555582827280) at ../subprojects/gtk-4.5.1/gdk/gdkframeclockidle.c:605
#20 0x00007ffff71b9ad4 in () at /usr/lib/libglib-2.0.so.0
#21 0x00007ffff71b9435 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#22 0x00007ffff720d7b9 in () at /usr/lib/libglib-2.0.so.0
#23 0x00007ffff71b6c11 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#24 0x00007ffff73cc2fe in g_application_run () at /usr/lib/libgio-2.0.so.0
#25 0x0000555555ea28ec in main(int, char**) (argc=2, argv=0x7fffffffdd38) at ../src/main.c:42
(gdb) bt full
#0 0x00007ffff58d0d22 in raise () at /usr/lib/libc.so.6
#1 0x00007ffff58ba862 in abort () at /usr/lib/libc.so.6
#2 0x00007ffff7182084 in () at /usr/lib/libglib-2.0.so.0
#3 0x00007ffff71de65d in g_assertion_message_expr () at /usr/lib/libglib-2.0.so.0
#4 0x00007ffff7b227a4 in gsk_gl_driver_release_texture (self=0x555582b9f680, texture=0x0) at ../subprojects/gtk-4.5.1/gsk/gl/gskgldriver.c:890
texture_id = 21845
__func__ = "gsk_gl_driver_release_texture"
#5 0x00007ffff7b387a1 in gsk_gl_texture_library_begin_frame (self=0x5555906fc630, frame_id=900, removed_atlases=0x0) at ../subprojects/gtk-4.5.1/gsk/gl/gskgltexturelibrary.c:190
entry = 0x555583396e00
atlased = 632
dropped = 0
iter = {
dummy1 = 0x55559061f4c0,
dummy2 = 0x5555906fc630,
dummy3 = 0x1,
dummy4 = 1332,
dummy5 = 32767,
dummy6 = 0x555500003a61
}
__func__ = "gsk_gl_texture_library_begin_frame"
#6 0x00007ffff7b21d2f in gsk_gl_driver_begin_frame (self=0x555582b9f680, command_queue=0x555582c00bf0) at ../subprojects/gtk-4.5.1/gsk/gl/gskgldriver.c:590
last_frame_id = 899
removed = 0x0
__func__ = "gsk_gl_driver_begin_frame"
#7 0x00007ffff7b0ffc4 in gsk_gl_renderer_render (renderer=0x5555905fa8e0, root=0x555593e97a30, update_area=0x55559561c390) at ../subprojects/gtk-4.5.1/gsk/gl/gskglrenderer.c:223
self = 0x5555905fa8e0
render_region = 0x5555966ae2d0
viewport = {
origin = {
x = 0,
y = 0
},
size = {
width = 1920,
height = 1048
}
}
job = 0x7ffff7aee1f1 <gsk_render_node_diff+97>
surface = 0x55558fae6cb0
scale_factor = 1
__func__ = "gsk_gl_renderer_render"
#8 0x00007ffff7aecbb1 in gsk_renderer_render (renderer=0x5555905fa8e0, root=0x555593e97a30, region=0x555593e0c7f0) at ../subprojects/gtk-4.5.1/gsk/gskrenderer.c:462
priv = 0x5555905fa8a0
clip = 0x55559561c390
__func__ = "gsk_renderer_render"
#9 0x00007ffff78db039 in gtk_widget_render (widget=0x55558e1e62a0, surface=0x55558fae6cb0, region=0x555593e0c7f0) at ../subprojects/gtk-4.5.1/gtk/gtkwidget.c:11693
priv = 0x55558e1e6150
snapshot = 0x55559672df00
renderer = 0x5555905fa8e0
root = 0x555593e97a30
x = 0
y = 0
before_snapshot = 0
before_render = 0
#10 0x00007ffff78eaa79 in surface_render (surface=0x55558fae6cb0, region=0x555593e0c7f0, widget=0x55558e1e62a0) at ../subprojects/gtk-4.5.1/gtk/gtkwindow.c:4798
--Type <RET> for more, q to quit, c to continue without paging--c
#11 0x00007ffff7a3745e in _gdk_marshal_BOOLEAN__BOXEDv (closure=0x5555906f27f0, return_value=0x7fffffffd560, instance=0x55558fae6cb0, args=0x7fffffffd610, marshal_data=0x0, n_params=1, param_types=0x5555827f67a0) at subprojects/gtk-4.5.1/gdk/gdkmarshalers.c:130
cc = 0x5555906f27f0
data1 = 0x55558fae6cb0
data2 = 0x55558e1e62a0
callback = 0x7ffff78eaa4e <surface_render>
v_return = 2
arg0 = 0x555593e0c7f0
args_copy = {{
gp_offset = 32,
fp_offset = 48,
overflow_arg_area = 0x7fffffffd6f0,
reg_save_area = 0x7fffffffd630
}}
__func__ = "_gdk_marshal_BOOLEAN__BOXEDv"
#12 0x00007ffff72cb1c0 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#13 0x00007ffff72cb330 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#14 0x00007ffff7a779a0 in gdk_surface_process_updates_internal (surface=0x55558fae6cb0) at ../subprojects/gtk-4.5.1/gdk/gdksurface.c:1346
expose_region = 0x555593e0c7f0
handled = 21845
__func__ = "gdk_surface_process_updates_internal"
#15 0x00007ffff7a77d08 in gdk_surface_paint_on_clock (clock=0x555582827280, data=0x55558fae6cb0) at ../subprojects/gtk-4.5.1/gdk/gdksurface.c:1434
surface = 0x55558fae6cb0
__func__ = "gdk_surface_paint_on_clock"
#16 0x00007ffff72cb1c0 in g_signal_emit_valist () at /usr/lib/libgobject-2.0.so.0
#17 0x00007ffff72cb330 in g_signal_emit () at /usr/lib/libgobject-2.0.so.0
#18 0x00007ffff7a5e4c5 in _gdk_frame_clock_emit_paint (frame_clock=0x555582827280) at ../subprojects/gtk-4.5.1/gdk/gdkframeclock.c:708
before = 0
#19 0x00007ffff7a5f4d8 in gdk_frame_clock_paint_idle (data=0x555582827280) at ../subprojects/gtk-4.5.1/gdk/gdkframeclockidle.c:605
clock = 0x555582827280
clock_idle = 0x555582827280
priv = 0x555582827170
skip_to_resume_events = 0
timings = 0x55558ccf4550
before = 0
__func__ = "gdk_frame_clock_paint_idle"
#20 0x00007ffff71b9ad4 in () at /usr/lib/libglib-2.0.so.0
#21 0x00007ffff71b9435 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#22 0x00007ffff720d7b9 in () at /usr/lib/libglib-2.0.so.0
#23 0x00007ffff71b6c11 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#24 0x00007ffff73cc2fe in g_application_run () at /usr/lib/libgio-2.0.so.0
#25 0x0000555555ea28ec in main(int, char**) (argc=2, argv=0x7fffffffdd38) at ../src/main.c:42
ret = 0