The debug renderer seems to be active in debug mode by default, and it seems to call GpuMarker::new(), which in turn calls pop_group_marker_ext:
The problem is that it doesn't check if the extension necessary for GPU markers (I think it's EXT_debug_marker) is available first. Which leads to this:
Debug message with high or medium severity: `GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?)`.
Please report this error: https://github.com/tomaka/glium/issues
Backtrace:
1 - 0x5620d55fb7d5
backtrace::backtrace::libunwind::trace at /home/felix/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.9/src/backtrace/libunwind.rs:53
backtrace::backtrace::trace at /home/felix/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.9/src/backtrace/mod.rs:42
2 - 0x5620d555f00b
glium::context::default_debug_callback at /home/felix/.cargo/registry/src/github.com-1ecc6299db9ec823/glium-0.21.0/src/context/mod.rs:852
3 - 0x5620d558f073
core::ops::function::FnMut::call_mut at /checkout/src/libcore/ops/function.rs:146
4 - 0x5620d5560296
glium::context::init_debug_callback::callback_wrapper at /home/felix/.cargo/registry/src/github.com-1ecc6299db9ec823/glium-0.21.0/src/context/mod.rs:939
5 - 0x7f638460047c
<unknown> at <unknown>:??
6 - 0x7f63845db981
<unknown> at <unknown>:??
7 - 0x5620d5504058
gleam::ffi_gl::Gl::PopGroupMarkerEXT at /home/felix/Development/azul/target/debug/build/gleam-0a7e5e9d5b367460/out/gl_bindings.rs:2678
8 - 0x5620d54e9624
<gleam::gl::GlFns as gleam::gl::Gl>::pop_group_marker_ext at /home/felix/.cargo/registry/src/github.com-1ecc6299db9ec823/gleam-0.5.1/src/gl_fns.rs:1658
9 - 0x5620d4c26552
<webrender::device::query_gl::GpuMarker as core::ops::drop::Drop>::drop at /home/felix/.cargo/git/checkouts/webrender-c3596abe1cf4f320/a30fd22/webrender/src/device/query_gl.rs:292
10 - 0x5620d4da7000
core::ptr::drop_in_place at /checkout/src/libcore/ptr.rs:59
11 - 0x5620d4c3b010
webrender::renderer::Renderer::render_impl::{{closure}} at /home/felix/.cargo/git/checkouts/webrender-c3596abe1cf4f320/a30fd22/webrender/src/renderer.rs:2434
12 - 0x5620d4dcf328
webrender::profiler::TimeProfileCounter::profile at /home/felix/.cargo/git/checkouts/webrender-c3596abe1cf4f320/a30fd22/webrender/src/profiler.rs:204
13 - 0x5620d4c3a33c
webrender::renderer::Renderer::render_impl at /home/felix/.cargo/git/checkouts/webrender-c3596abe1cf4f320/a30fd22/webrender/src/renderer.rs:2425
14 - 0x5620d4c39eec
webrender::renderer::Renderer::render at /home/felix/.cargo/git/checkouts/webrender-c3596abe1cf4f320/a30fd22/webrender/src/renderer.rs:2244
15 - 0x5620d489b0d9
azul::app::render_inner at /home/felix/Development/azul/src/app.rs:648
16 - 0x5620d489c30d
azul::app::render at /home/felix/Development/azul/src/app.rs:634
17 - 0x5620d489a999
<azul::app::App<'a, T>>::run_inner at /home/felix/Development/azul/src/app.rs:228
18 - 0x5620d489917f
<azul::app::App<'a, T>>::run at /home/felix/Development/azul/src/app.rs:134
19 - 0x5620d4879fb6
debug::main at examples/debug.rs:85
20 - 0x5620d48d84ff
std::rt::lang_start::{{closure}} at /checkout/src/libstd/rt.rs:74
21 - 0x5620d5836002
std::rt::lang_start_internal::{{closure}} at libstd/rt.rs:59
std::panicking::try::do_call at libstd/panicking.rs:310
22 - 0x5620d5850789
__rust_maybe_catch_panic at libpanic_unwind/lib.rs:105
23 - 0x5620d583bae5
std::panicking::try at libstd/panicking.rs:289
std::panic::catch_unwind at libstd/panic.rs:374
std::rt::lang_start_internal at libstd/rt.rs:58
24 - 0x5620d48d84d7
std::rt::lang_start at /checkout/src/libstd/rt.rs:74
25 - 0x5620d487a08c
main at <unknown>:??
26 - 0x7f638b7bb3f0
__libc_start_main at <unknown>:??
27 - 0x5620d48521b9
_start at <unknown>:??
28 - 0x0
<unknown> at <unknown>:??
So far, this only happens on my Linux laptop where I don't have the extension for debug markers:
name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
GLX_ARB_create_context, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample,
GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile,
GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB,
GLX_EXT_import_context, GLX_EXT_libglvnd, GLX_EXT_texture_from_pixmap,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_INTEL_swap_event,
GLX_MESA_copy_sub_buffer, GLX_OML_swap_method, GLX_SGIS_multisample,
GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group,
GLX_SGI_make_current_read, GLX_SGI_swap_control
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
GLX_ARB_create_context, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample,
GLX_EXT_buffer_age, GLX_EXT_create_context_es2_profile,
GLX_EXT_create_context_es_profile, GLX_EXT_fbconfig_packed_float,
GLX_EXT_framebuffer_sRGB, GLX_EXT_import_context,
GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer,
GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer,
GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,
GLX_SGI_swap_control, GLX_SGI_video_sync
GLX version: 1.4
GLX extensions:
GLX_ARB_create_context, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample,
GLX_EXT_buffer_age, GLX_EXT_create_context_es2_profile,
GLX_EXT_create_context_es_profile, GLX_EXT_fbconfig_packed_float,
GLX_EXT_framebuffer_sRGB, GLX_EXT_import_context,
GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer,
GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer,
GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,
GLX_SGI_swap_control, GLX_SGI_video_sync
Extended renderer info (GLX_MESA_query_renderer):
Vendor: Intel Open Source Technology Center (0x8086)
Device: Mesa DRI Intel(R) Sandybridge Mobile (0x126)
Version: 17.0.7
Accelerated: yes
Video memory: 1536MB
Unified memory: yes
Preferred profile: core (0x1)
Max core profile version: 3.3
Max compat profile version: 3.0
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.0
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Mobile
OpenGL core profile version string: 3.3 (Core Profile) Mesa 17.0.7
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
GL_3DFX_texture_compression_FXT1, GL_AMD_draw_buffers_blend,
GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_trinary_minmax,
GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_viewport_index,
GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5,
GL_APPLE_object_purgeable, GL_ARB_ES2_compatibility,
GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance,
GL_ARB_blend_func_extended, GL_ARB_buffer_storage,
GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control,
GL_ARB_compressed_texture_pixel_storage,
GL_ARB_conditional_render_inverted, GL_ARB_copy_buffer, GL_ARB_copy_image,
GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float,
GL_ARB_depth_clamp, GL_ARB_direct_state_access, GL_ARB_draw_buffers,
GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex,
GL_ARB_draw_instanced, GL_ARB_enhanced_layouts,
GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location,
GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport,
GL_ARB_fragment_shader, GL_ARB_framebuffer_object,
GL_ARB_framebuffer_sRGB, GL_ARB_get_program_binary,
GL_ARB_get_texture_sub_image, GL_ARB_half_float_pixel,
GL_ARB_half_float_vertex, GL_ARB_instanced_arrays,
GL_ARB_internalformat_query, GL_ARB_internalformat_query2,
GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment,
GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_occlusion_query2,
GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object,
GL_ARB_point_sprite, GL_ARB_program_interface_query,
GL_ARB_provoking_vertex, GL_ARB_robustness, GL_ARB_sample_shading,
GL_ARB_sampler_objects, GL_ARB_seamless_cube_map,
GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects,
GL_ARB_shader_bit_encoding, GL_ARB_shader_draw_parameters,
GL_ARB_shader_objects, GL_ARB_shader_subroutine,
GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array,
GL_ARB_shading_language_420pack, GL_ARB_shading_language_packing,
GL_ARB_sync, GL_ARB_texture_barrier, GL_ARB_texture_buffer_object,
GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range,
GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map_array,
GL_ARB_texture_float, GL_ARB_texture_gather,
GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_multisample,
GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels,
GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg,
GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_storage,
GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle,
GL_ARB_timer_query, GL_ARB_uniform_buffer_object,
GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object,
GL_ARB_vertex_attrib_binding, GL_ARB_vertex_shader,
GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev,
GL_ARB_viewport_array, GL_ATI_blend_equation_separate,
GL_ATI_texture_float, GL_EXT_abgr, GL_EXT_blend_equation_separate,
GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_framebuffer_blit,
GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled,
GL_EXT_framebuffer_sRGB, GL_EXT_packed_depth_stencil, GL_EXT_packed_float,
GL_EXT_pixel_buffer_object, GL_EXT_polygon_offset_clamp,
GL_EXT_provoking_vertex, GL_EXT_shader_integer_mix, GL_EXT_texture_array,
GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_rgtc,
GL_EXT_texture_compression_s3tc, GL_EXT_texture_filter_anisotropic,
GL_EXT_texture_integer, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_decode,
GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm,
GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback,
GL_EXT_vertex_array_bgra, GL_IBM_multimode_draw_arrays,
GL_KHR_blend_equation_advanced, GL_KHR_context_flush_control,
GL_KHR_debug, GL_KHR_robustness, GL_MESA_pack_invert,
GL_MESA_shader_integer_functions, GL_MESA_texture_signed_rgba,
GL_NV_conditional_render, GL_NV_depth_clamp, GL_NV_packed_depth_stencil,
GL_NV_texture_barrier, GL_OES_EGL_image, GL_S3_s3tc
OpenGL version string: 3.0 Mesa 17.0.7
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
GL_3DFX_texture_compression_FXT1, GL_AMD_draw_buffers_blend,
GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_trinary_minmax,
GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5,
GL_APPLE_object_purgeable, GL_APPLE_packed_pixels,
GL_APPLE_vertex_array_object, GL_ARB_ES2_compatibility,
GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays,
GL_ARB_blend_func_extended, GL_ARB_buffer_storage,
GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control,
GL_ARB_color_buffer_float, GL_ARB_compressed_texture_pixel_storage,
GL_ARB_conditional_render_inverted, GL_ARB_copy_buffer, GL_ARB_copy_image,
GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float,
GL_ARB_depth_clamp, GL_ARB_depth_texture, GL_ARB_draw_buffers,
GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex,
GL_ARB_draw_instanced, GL_ARB_explicit_attrib_location,
GL_ARB_explicit_uniform_location, GL_ARB_fragment_coord_conventions,
GL_ARB_fragment_program, GL_ARB_fragment_program_shadow,
GL_ARB_fragment_shader, GL_ARB_framebuffer_object,
GL_ARB_framebuffer_sRGB, GL_ARB_get_program_binary,
GL_ARB_get_texture_sub_image, GL_ARB_half_float_pixel,
GL_ARB_half_float_vertex, GL_ARB_instanced_arrays,
GL_ARB_internalformat_query, GL_ARB_internalformat_query2,
GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment,
GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multisample,
GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2,
GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object,
GL_ARB_point_parameters, GL_ARB_point_sprite,
GL_ARB_program_interface_query, GL_ARB_provoking_vertex,
GL_ARB_robustness, GL_ARB_sample_shading, GL_ARB_sampler_objects,
GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture,
GL_ARB_separate_shader_objects, GL_ARB_shader_bit_encoding,
GL_ARB_shader_draw_parameters, GL_ARB_shader_objects,
GL_ARB_shader_texture_lod, GL_ARB_shading_language_100,
GL_ARB_shading_language_420pack, GL_ARB_shading_language_packing,
GL_ARB_shadow, GL_ARB_sync, GL_ARB_texture_barrier,
GL_ARB_texture_border_clamp, GL_ARB_texture_compression,
GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map,
GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add,
GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar,
GL_ARB_texture_env_dot3, GL_ARB_texture_float, GL_ARB_texture_gather,
GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat,
GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two,
GL_ARB_texture_query_levels, GL_ARB_texture_query_lod,
GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui,
GL_ARB_texture_storage, GL_ARB_texture_storage_multisample,
GL_ARB_texture_swizzle, GL_ARB_timer_query, GL_ARB_transpose_matrix,
GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra,
GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_binding,
GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader,
GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev,
GL_ARB_window_pos, GL_ATI_blend_equation_separate, GL_ATI_draw_buffers,
GL_ATI_separate_stencil, GL_ATI_texture_env_combine3,
GL_ATI_texture_float, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color,
GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate,
GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array,
GL_EXT_copy_texture, GL_EXT_draw_buffers2, GL_EXT_draw_instanced,
GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_framebuffer_blit,
GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled,
GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB,
GL_EXT_gpu_program_parameters, GL_EXT_multi_draw_arrays,
GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels,
GL_EXT_pixel_buffer_object, GL_EXT_point_parameters,
GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp,
GL_EXT_provoking_vertex, GL_EXT_rescale_normal, GL_EXT_secondary_color,
GL_EXT_separate_specular_color, GL_EXT_shader_integer_mix,
GL_EXT_shadow_funcs, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap,
GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D,
GL_EXT_texture_array, GL_EXT_texture_compression_dxt1,
GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc,
GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp,
GL_EXT_texture_env_add, GL_EXT_texture_env_combine,
GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic,
GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_object,
GL_EXT_texture_rectangle, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_decode,
GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm,
GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback,
GL_EXT_vertex_array, GL_EXT_vertex_array_bgra,
GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip,
GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate,
GL_KHR_blend_equation_advanced, GL_KHR_context_flush_control,
GL_KHR_debug, GL_KHR_robustness, GL_MESA_pack_invert,
GL_MESA_shader_integer_functions, GL_MESA_texture_signed_rgba,
GL_MESA_window_pos, GL_NV_blend_square, GL_NV_conditional_render,
GL_NV_depth_clamp, GL_NV_light_max_exponent, GL_NV_packed_depth_stencil,
GL_NV_primitive_restart, GL_NV_texgen_reflection, GL_NV_texture_barrier,
GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image,
GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap,
GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp,
GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 17.0.7
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions:
GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5,
GL_APPLE_texture_max_level, GL_EXT_blend_func_extended,
GL_EXT_blend_minmax, GL_EXT_clip_cull_distance, GL_EXT_color_buffer_float,
GL_EXT_discard_framebuffer, GL_EXT_draw_buffers,
GL_EXT_draw_buffers_indexed, GL_EXT_draw_elements_base_vertex,
GL_EXT_map_buffer_range, GL_EXT_multi_draw_arrays,
GL_EXT_polygon_offset_clamp, GL_EXT_read_format_bgra, GL_EXT_robustness,
GL_EXT_separate_shader_objects, GL_EXT_shader_integer_mix,
GL_EXT_texture_border_clamp, GL_EXT_texture_compression_dxt1,
GL_EXT_texture_filter_anisotropic, GL_EXT_texture_format_BGRA8888,
GL_EXT_texture_rg, GL_EXT_texture_sRGB_decode,
GL_EXT_texture_type_2_10_10_10_REV, GL_EXT_unpack_subimage,
GL_KHR_blend_equation_advanced, GL_KHR_context_flush_control,
GL_KHR_debug, GL_KHR_robustness, GL_MESA_shader_integer_functions,
GL_NV_draw_buffers, GL_NV_fbo_color_attachments, GL_NV_read_buffer,
GL_NV_read_depth, GL_NV_read_depth_stencil, GL_NV_read_stencil,
GL_OES_EGL_image, GL_OES_EGL_image_external, GL_OES_EGL_sync,
GL_OES_compressed_ETC1_RGB8_texture, GL_OES_depth24, GL_OES_depth_texture,
GL_OES_depth_texture_cube_map, GL_OES_draw_buffers_indexed,
GL_OES_draw_elements_base_vertex, GL_OES_element_index_uint,
GL_OES_fbo_render_mipmap, GL_OES_get_program_binary, GL_OES_mapbuffer,
GL_OES_packed_depth_stencil, GL_OES_rgb8_rgba8, GL_OES_sample_shading,
GL_OES_sample_variables, GL_OES_shader_multisample_interpolation,
GL_OES_standard_derivatives, GL_OES_stencil8, GL_OES_surfaceless_context,
GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_float,
GL_OES_texture_float_linear, GL_OES_texture_half_float,
GL_OES_texture_half_float_linear, GL_OES_texture_npot,
GL_OES_vertex_array_object, GL_OES_vertex_half_float
As you can see, no GL_EXT_debug_marker, hence the error. Now I could ignore this and it's not a very pressing issue, but it is quite annoying because if I have legitimate GL errors in my application, I can't distinguish between the webrender debug marker issue and the actual GL error.
Note that we currently rely on the presence of the function to check if it's valid to call:
fn pop_group_marker_ext(&self) {
if self.ffi_gl_.PopGroupMarkerEXT.is_loaded() {
unsafe {
self.ffi_gl_.PopGroupMarkerEXT();
}
}
}
Apparently, this is a wrong thing to do.
I think we should instead not check the pointers in gleam (panicing if unloaded functions are used) and check the extensions supported on the client (WR) side.
Can this be closed now that #2935 is merged?
Absolutely!
cc @csherratt - you can use "fixes XXX" or "closes XXX" next time to automate this