Bug 447868 - krita crashing from opening pop-up palette due to a C++ exception handling exception
Summary: krita crashing from opening pop-up palette due to a C++ exception handling ex...
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Unclassified
Component: Tool/Assistants (show other bugs)
Version: 5.0.0
Platform: Microsoft Windows Microsoft Windows
: NOR crash
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
: 449017 (view as bug list)
Depends on:
Blocks:
 
Reported: 2022-01-03 08:26 UTC by Artuko
Modified: 2022-04-05 13:23 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
krita crash log backtrace (28.00 KB, text/plain)
2022-01-03 08:26 UTC, Artuko
Details
attachment-7258-0.html (1.06 KB, text/html)
2022-01-23 16:49 UTC, budd.chris71
Details
attachment-11231-0.html (2.35 KB, text/html)
2022-04-05 13:03 UTC, budd.chris71
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Artuko 2022-01-03 08:26:59 UTC
Created attachment 145068 [details]
krita crash log backtrace

SUMMARY
***
NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols.
See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports
***
Krita crash log backtrace 



STEPS TO REPRODUCE
1.  Open Krita and create a canvas
2.  Use the pop up palette shortcut which is the right-click mouse button
3.  Krita starts loading, stops then crashes 

OBSERVED RESULT
Krita stops all function after pressing the shortcut and crashes

EXPECTED RESULT
the pop up palette showing up after pressing the short cut key 

System Information
***
Krita

 Version: 5.0.0
 Languages: en_US, en
 Hidpi: true

Qt

  Version (compiled): 5.12.12
  Version (loaded): 5.12.12

OS Information

  Build ABI: x86_64-little_endian-llp64
  Build CPU: x86_64
  CPU: x86_64
  Kernel Type: winnt
  Kernel Version: 10.0.19044
  Pretty Productname: Windows 10 (10.0)
  Product Type: windows
  Product Version: 10

OpenGL Info
 
  Vendor:  "Intel" 
  Renderer:  "Intel(R) HD Graphics" 
  Version:  "2.1.0 - Build 8.15.10.2900" 
  Shading language:  "1.20  - Intel Build 8.15.10.2900" 
  Requested format:  QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::CompatibilityProfile) 
  Current format:  QSurfaceFormat(version 2.1, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 1, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::NoProfile) 
     Version: 2.1
     Supports deprecated functions true 
     is OpenGL ES: false 
  supportsBufferMapping: true 
  supportsBufferInvalidation: false 
  Extensions: 
     "GL_ARB_texture_env_dot3" 
     "GL_ARB_depth_texture" 
     "GL_WIN_swap_hint" 
     "GL_EXT_multi_draw_arrays" 
     "GL_NV_conditional_render" 
     "GL_ARB_transpose_matrix" 
     "GL_EXT_draw_range_elements" 
     "GL_EXT_framebuffer_object" 
     "GL_EXT_draw_buffers2" 
     "GL_EXT_compiled_vertex_array" 
     "GL_SGIS_texture_lod" 
     "GL_EXT_shadow_funcs" 
     "GL_ARB_occlusion_query" 
     "" 
     "GL_EXT_rescale_normal" 
     "GL_EXT_packed_pixels" 
     "GL_EXT_texture_env_add" 
     "GL_ARB_draw_buffers" 
     "GL_ARB_texture_border_clamp" 
     "GL_ARB_window_pos" 
     "GL_ARB_texture_rectangle" 
     "GL_EXT_texture_shared_exponent" 
     "GL_EXT_packed_float" 
     "GL_IBM_texture_mirrored_repeat" 
     "GL_ARB_point_sprite" 
     "GL_ARB_shadow" 
     "GL_EXT_separate_specular_color" 
     "GL_ARB_texture_non_power_of_two" 
     "GL_SGIS_texture_edge_clamp" 
     "GL_EXT_blend_color" 
     "GL_INTEL_performance_queries" 
     "GL_ARB_shading_language_100" 
     "GL_EXT_packed_depth_stencil" 
     "GL_ARB_depth_clamp" 
     "GL_ARB_compatibility" 
     "GL_ARB_texture_cube_map" 
     "GL_EXT_texture_compression_s3tc" 
     "GL_ARB_texture_float" 
     "GL_EXT_transform_feedback" 
     "GL_ARB_texture_env_combine" 
     "GL_ARB_seamless_cube_map" 
     "GL_EXT_texture_filter_anisotropic" 
     "GL_EXT_stencil_wrap" 
     "GL_ATI_separate_stencil" 
     "GL_ARB_map_buffer_range" 
     "GL_EXT_clip_volume_hint" 
     "GL_EXT_texture_sRGB" 
     "GL_ARB_vertex_program" 
     "GL_ARB_uniform_buffer_object" 
     "GL_ARB_vertex_array_bgra" 
     "GL_ARB_texture_env_crossbar" 
     "GL_EXT_blend_func_separate" 
     "GL_EXT_texture_swizzle" 
     "GL_EXT_blend_minmax" 
     "GL_SGIS_generate_mipmap" 
     "GL_ARB_fragment_shader" 
     "GL_EXT_framebuffer_blit" 
     "GL_NV_primitive_restart" 
     "GL_NV_blend_square" 
     "GL_ARB_framebuffer_object" 
     "GL_ARB_framebuffer_sRGB" 
     "GL_ARB_color_buffer_float" 
     "GL_EXT_blend_equation_separate" 
     "GL_ARB_sync" 
     "GL_NV_texgen_reflection" 
     "GL_EXT_stencil_two_side" 
     "GL_ARB_texture_compression" 
     "GL_ARB_draw_elements_base_vertex" 
     "GL_ARB_half_float_vertex" 
     "GL_EXT_gpu_program_parameters" 
     "GL_EXT_abgr" 
     "GL_ARB_vertex_array_object" 
     "GL_EXT_texture_edge_clamp" 
     "GL_EXT_blend_subtract" 
     "GL_3DFX_texture_compression_FXT1" 
     "GL_EXT_bgra" 
     "GL_EXT_fog_coord" 
     "GL_ARB_sampler_objects" 
     "GL_ARB_fragment_program" 
     "GL_EXT_texture_array" 
     "GL_EXT_texture_lod_bias" 
     "GL_ARB_draw_instanced" 
     "GL_EXT_texture_snorm" 
     "GL_EXT_secondary_color" 
     "GL_ARB_multitexture" 
     "GL_ARB_half_float_pixel" 
     "GL_ARB_texture_rg" 
     "GL_ARB_depth_buffer_float" 
     "GL_EXT_texture3D" 
     "GL_ARB_texture_compression_rgtc" 
     "GL_ARB_point_parameters" 
     "GL_ARB_copy_buffer" 
     "GL_EXT_texture_env_combine" 
     "GL_ARB_vertex_shader" 
     "GL_ARB_pixel_buffer_object" 
     "GL_ARB_shader_objects" 
     "GL_EXT_texture_rectangle" 
     "GL_ARB_fragment_program_shadow" 
     "GL_ARB_vertex_buffer_object" 
     "GL_ARB_texture_env_add" 

QPA OpenGL Detection Info 
  supportsDesktopGL: true 
  supportsAngleD3D11: false 
  isQtPreferAngle: true 

useBufferInvalidation (config option): false


Hardware Information

  GPU Acceleration: auto
  Memory: 3824 Mb
  Number of Cores: 4
  Swap Location: C:/Users/admin/AppData/Local/Temp

Current Settings

  Current Swap Location: C:/Users/admin/AppData/Local/Temp
  Current Swap Location writable: true
  Undo Enabled: true
  Undo Stack Limit: 200
  Use OpenGL: true
  Use OpenGL Texture Buffer: true
  Disable Vector Optimizations: false
  Disable AVX Optimizations: false
  Canvas State: OPENGL_SUCCESS
  Autosave Interval: 900
  Use Backup Files: true
  Number of Backups Kept: 1
  Backup File Suffix: ~
  Backup Location: Same Folder as the File
  Backup Location writable: false
  Use Win8 Pointer Input: true
  Use RightMiddleTabletButton Workaround: false
  Levels of Detail Enabled: false
  Use Zip64: false


Display Information
Number of screens: 1
	Screen: 0
		Name: \\.\DISPLAY1
		Depth: 32
		Scale: 1
		Resolution in pixels: 1366x768
		Manufacturer: 
		Model: 
		Refresh Rate: 60


ADDITIONAL INFORMATION
Comment 1 amyspark 2022-01-03 23:41:20 UTC
It seems you're not using ANGLE, but rather the stock OpenGL canvas. This is prone to disaster on Intel cards.

Can you confirm that this crash doesn't happen when you switch the renderer backend to ANGLE? See the docs here: https://docs.krita.org/en/reference_manual/preferences/display_settings.html . Also, what card are you using?
Comment 2 Alvin Wong 2022-01-04 17:01:01 UTC
ANGLE (at least for Direct3D 11) wouldn't work because the GPU or driver is so old that it can only support OpenGL 2.1 (also "supportsAngleD3D11: false"). You can perhaps try the "Software Renderer (very slow)" option, but that wouldn't really be usable...

The thing is, we do have a compatibility OpenGL 2.1 canvas even though we don't recommend using it. Maybe we should check what colour selectors we have that uses OpenGL and either try to make them 2.1-compatible, or disable them when we don't get OpenGL 3? (And also when OpenGL canvas is disabled?)
Comment 3 Halla Rempt 2022-01-05 10:10:04 UTC
Only the small color selector uses opengl. It is only loaded if  (KisOpenGL::hasOpenGL3() || KisOpenGL::hasOpenGLES()) is true. I guess we could improve that check...
Comment 4 Ahab Greybeard 2022-01-05 12:37:34 UTC
This was first reported here:
https://krita-artists.org/t/pop-up-pallete-causing-crash-in-krita-5-0-0/34335

The puzzle is that that Artuko reports that there are no problems running 4.4.8 on the same laptop.
Comment 5 Bug Janitor Service 2022-01-20 04:36:57 UTC Comment hidden (obsolete)
Comment 6 Alvin Wong 2022-01-23 16:35:41 UTC
*** Bug 449017 has been marked as a duplicate of this bug. ***
Comment 7 budd.chris71 2022-01-23 16:49:04 UTC
Created attachment 145807 [details]
attachment-7258-0.html

Thanks!
Sounds exactly like what happened.

On Sun, Jan 23, 2022 at 10:36 AM Alvin Wong <bugzilla_noreply@kde.org>
wrote:

> https://bugs.kde.org/show_bug.cgi?id=447868
>
> Alvin Wong <alvin@alvinhc.com> changed:
>
>            What    |Removed                     |Added
>
> ----------------------------------------------------------------------------
>              Status|NEEDSINFO                   |REPORTED
>          Resolution|WAITINGFORINFO              |---
>
> --
> You are receiving this mail because:
> You are on the CC list for the bug.
Comment 8 Bug Janitor Service 2022-01-23 17:10:29 UTC
A possibly relevant merge request was started @ https://invent.kde.org/graphics/krita/-/merge_requests/1308
Comment 9 Alvin Wong 2022-01-24 08:23:12 UTC
Git commit 45c0093581ccc7c5cef9a15103cb8e65b96e67de by Alvin Wong.
Committed on 23/01/2022 at 17:05.
Pushed by alvinwong into branch 'master'.

Fix blocking SmallColorSelector on OpenGL 2.1, possibly other errors

M  +0    -2    libs/ui/opengl/kis_opengl.cpp

https://invent.kde.org/graphics/krita/commit/45c0093581ccc7c5cef9a15103cb8e65b96e67de
Comment 10 Alvin Wong 2022-01-24 08:24:00 UTC
Git commit 1a8161714e9a3c746f6faae312fdfd2f0d032152 by Alvin Wong.
Committed on 24/01/2022 at 08:23.
Pushed by alvinwong into branch 'krita/5.0'.

Fix blocking SmallColorSelector on OpenGL 2.1, possibly other errors


(cherry picked from commit 45c0093581ccc7c5cef9a15103cb8e65b96e67de)

M  +0    -2    libs/ui/opengl/kis_opengl.cpp

https://invent.kde.org/graphics/krita/commit/1a8161714e9a3c746f6faae312fdfd2f0d032152
Comment 11 budd.chris71 2022-04-05 13:03:30 UTC
Created attachment 147982 [details]
attachment-11231-0.html

Hello, I was just wondering if this error had been fixed yet. I would
really like to be able to use the right-click while using Krita 5.2! LOL. I
am asking as there hasn't been a fix posted that i could find.
Thank you for your time and help!
Chris Budd

On Mon, Jan 24, 2022 at 2:24 AM Alvin Wong <bugzilla_noreply@kde.org> wrote:

> https://bugs.kde.org/show_bug.cgi?id=447868
>
> Alvin Wong <alvin@alvinhc.com> changed:
>
>            What    |Removed                     |Added
>
> ----------------------------------------------------------------------------
>       Latest Commit|https://invent.kde.org/grap |
> https://invent.kde.org/grap
>                    |hics/krita/commit/45c009358
> |hics/krita/commit/1a8161714
>                    |1ccc7c5cef9a15103cb8e65b96e
> |e9a3c746f6faae312fdfd2f0d03
>                    |67de                        |2152
>
> --- Comment #10 from Alvin Wong <alvin@alvinhc.com> ---
> Git commit 1a8161714e9a3c746f6faae312fdfd2f0d032152 by Alvin Wong.
> Committed on 24/01/2022 at 08:23.
> Pushed by alvinwong into branch 'krita/5.0'.
>
> Fix blocking SmallColorSelector on OpenGL 2.1, possibly other errors
>
>
> (cherry picked from commit 45c0093581ccc7c5cef9a15103cb8e65b96e67de)
>
> M  +0    -2    libs/ui/opengl/kis_opengl.cpp
>
>
> https://invent.kde.org/graphics/krita/commit/1a8161714e9a3c746f6faae312fdfd2f0d032152
>
> --
> You are receiving this mail because:
> You are on the CC list for the bug.