| Summary: | Crash after pressing save on the text editor | ||
|---|---|---|---|
| Product: | [Applications] krita | Reporter: | maplespace |
| Component: | General | Assignee: | Krita Bugs <krita-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | crash | CC: | halla |
| Priority: | NOR | Keywords: | drkonqi |
| Version First Reported In: | 5.1.4 | ||
| Target Milestone: | --- | ||
| Platform: | Arch Linux | ||
| OS: | Linux | ||
| Latest Commit: | https://invent.kde.org/graphics/krita/commit/36d3a5cc7c9fc323569d2cdf6e7cfc78f8829b98 | Version Fixed/Implemented In: | |
| Sentry Crash Report: | |||
|
Description
maplespace
2022-12-26 00:13:29 UTC
I cannot reproduce this crash, and the backtrace is entirely inside Qt * Could you also attach the output of help->system information for bug reports? * Which widget style are you using * Can you reproduce the issue with the appimage? Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please mark the bug as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone! (In reply to Halla Rempt from comment #1) Sorry for the late reply! I tried to replicate the bug once again and while it didn't crash the lag was still there. As with last time, when it lagged, it used up a full CPU core as well. > * Could you also attach the output of help->system information for bug > reports? Krita Version: 5.1.5 Hidpi: true Qt Version (compiled): 5.15.7 Version (loaded): 5.15.8 OS Information Build ABI: x86_64-little_endian-lp64 Build CPU: x86_64 CPU: x86_64 Kernel Type: linux Kernel Version: 6.1.5-arch2-1 Pretty Productname: Arch Linux Product Type: arch Product Version: unknown Desktop: KDE Locale Languages: en_US, en, en_Latn_US C locale: en_US.UTF-8 QLocale current: en QLocale system: en QTextCodec for locale: UTF-8 OpenGL Info Vendor: "AMD" Renderer: "AMD Radeon Graphics (renoir, LLVM 14.0.6, DRM 3.49, 6.1.5-arch2-1)" Version: "4.6 (Compatibility Profile) Mesa 22.3.3" Shading language: "4.60" 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 4.6, 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) Version: 4.6 Supports deprecated functions true is OpenGL ES: false supportsBufferMapping: true supportsBufferInvalidation: true forceDisableTextureBuffers: false Extensions: "GL_ARB_shader_texture_image_samples" "GL_ATI_separate_stencil" "GL_ARB_sparse_texture_clamp" "GL_AMD_framebuffer_multisample_advanced" "GL_ARB_shader_image_load_store" "GL_ARB_depth_texture" "GL_ARB_shader_atomic_counter_ops" "GL_ARB_draw_buffers" "GL_SGIS_texture_edge_clamp" "GL_ARB_texture_view" "GL_INTEL_blackhole_render" "GL_KHR_robust_buffer_access_behavior" "GL_ATI_texture_float" "GL_EXT_draw_range_elements" "GL_ARB_texture_stencil8" "GL_EXT_texture_compression_dxt1" "GL_ANGLE_texture_compression_dxt5" "GL_ARB_ES3_1_compatibility" "GL_ARB_clear_texture" "GL_ARB_multisample" "GL_ARB_shader_bit_encoding" "GL_KHR_debug" "GL_NV_compute_shader_derivatives" "GL_EXT_texture_compression_s3tc" "GL_AMD_seamless_cubemap_per_texture" "GL_ARB_compute_variable_group_size" "GL_NV_ES1_1_compatibility" "GL_ARB_texture_swizzle" "GL_ARB_arrays_of_arrays" "GL_EXT_texture_integer" "GL_ARB_texture_env_dot3" "GL_EXT_packed_float" "GL_NV_texgen_reflection" "GL_ARB_texture_rgb10_a2ui" "GL_EXT_semaphore_fd" "GL_NV_texture_barrier" "GL_ARB_texture_mirrored_repeat" "GL_NV_copy_depth_to_color" "GL_ARB_gl_spirv" "GL_NV_blend_square" "GL_ARB_texture_env_combine" "GL_ARB_window_pos" "GL_ARB_fragment_layer_viewport" "GL_NV_copy_image" "GL_EXT_gpu_program_parameters" "GL_ARB_clear_buffer_object" "GL_ARB_shader_objects" "GL_EXT_window_rectangles" "GL_EXT_debug_label" "GL_EXT_direct_state_access" "GL_ARB_multi_bind" "GL_ARB_texture_query_levels" "GL_ARB_explicit_uniform_location" "GL_ARB_buffer_storage" "GL_EXT_texture3D" "GL_ARB_seamless_cubemap_per_texture" "GL_EXT_texture_compression_rgtc" "GL_AMD_vertex_shader_viewport_index" "GL_ARB_shader_ballot" "GL_EXT_texture_filter_anisotropic" "GL_ARB_clip_control" "GL_EXT_texture_cube_map" "GL_EXT_blend_color" "GL_KHR_no_error" "GL_MESA_window_pos" "GL_ARB_fragment_shader" "GL_NV_half_float" "GL_EXT_framebuffer_sRGB" "GL_EXT_multi_draw_arrays" "GL_ARB_viewport_array" "GL_ARB_bindless_texture" "GL_EXT_polygon_offset_clamp" "GL_ARB_sample_shading" "GL_AMD_texture_texture4" "GL_EXT_blend_minmax" "GL_NV_light_max_exponent" "GL_IBM_texture_mirrored_repeat" "GL_ARB_texture_non_power_of_two" "GL_ARB_base_instance" "GL_OES_EGL_image" "GL_ARB_color_buffer_float" "GL_ARB_point_sprite" "GL_EXT_copy_texture" "GL_ARB_texture_filter_anisotropic" "GL_SGIS_generate_mipmap" "GL_ARB_half_float_vertex" "GL_EXT_draw_buffers2" "GL_EXT_texture_object" "GL_EXT_texture_env_add" "GL_ARB_shading_language_100" "GL_EXT_texture_compression_latc" "GL_ARB_compatibility" "GL_KHR_parallel_shader_compile" "GL_ARB_shader_clock" "GL_AMD_conservative_depth" "GL_MESA_texture_signed_rgba" "GL_ARB_transform_feedback2" "GL_ARB_gpu_shader5" "GL_ARB_vertex_shader" "GL_ARB_texture_env_add" "GL_ARB_transform_feedback3" "GL_ARB_shader_stencil_export" "GL_ARB_sparse_texture2" "GL_ARB_texture_buffer_range" "GL_ATI_fragment_shader" "GL_EXT_texture_mirror_clamp" "GL_EXT_memory_object" "GL_ARB_texture_compression_rgtc" "GL_ARB_draw_buffers_blend" "GL_ARB_transpose_matrix" "GL_EXT_EGL_image_storage" "GL_EXT_stencil_two_side" "GL_ARB_texture_storage" "GL_EXT_framebuffer_multisample" "GL_ARB_debug_output" "GL_ARB_multi_draw_indirect" "GL_EXT_separate_specular_color" "GL_KHR_robustness" "GL_ARB_indirect_parameters" "GL_EXT_EGL_sync" "GL_ARB_get_texture_sub_image" "GL_NV_conditional_render" "GL_EXT_framebuffer_blit" "GL_EXT_blend_equation_separate" "GL_ARB_depth_buffer_float" "GL_ANGLE_texture_compression_dxt3" "GL_ARB_provoking_vertex" "GL_ARB_texture_gather" "GL_SGIS_texture_border_clamp" "GL_EXT_blend_func_separate" "GL_AMD_depth_clamp_separate" "GL_ARB_copy_buffer" "GL_AMD_performance_monitor" "GL_ATI_meminfo" "GL_EXT_texture_edge_clamp" "GL_ARB_texture_compression" "GL_ARB_texture_buffer_object_rgb32" "GL_IBM_rasterpos_clip" "GL_EXT_shader_image_load_store" "GL_ARB_vertex_attrib_binding" "GL_NVX_gpu_memory_info" "GL_ARB_robustness" "GL_NV_primitive_restart" "GL_ARB_fragment_program" "GL_ARB_sparse_buffer" "GL_EXT_demote_to_helper_invocation" "GL_ARB_texture_query_lod" "GL_EXT_shader_samples_identical" "GL_EXT_point_parameters" "GL_ARB_ES3_2_compatibility" "GL_ARB_pipeline_statistics_query" "GL_AMD_pinned_memory" "GL_EXT_fog_coord" "GL_ATI_blend_equation_separate" "GL_ARB_spirv_extensions" "GL_EXT_secondary_color" "GL_ARB_shader_viewport_layer_array" "GL_ARB_framebuffer_no_attachments" "GL_ARB_shading_language_packing" "GL_ARB_multitexture" "GL_ARB_direct_state_access" "GL_EXT_packed_depth_stencil" "GL_ARB_blend_func_extended" "GL_ARB_depth_clamp" "GL_ARB_query_buffer_object" "GL_EXT_blend_subtract" "GL_ARB_texture_barrier" "GL_ARB_ES3_compatibility" "GL_EXT_shader_image_load_formatted" "GL_ARB_copy_image" "GL_KHR_texture_compression_astc_sliced_3d" "GL_ARB_framebuffer_object" "GL_ARB_vertex_program" "GL_ARB_uniform_buffer_object" "GL_ARB_point_parameters" "GL_NV_alpha_to_coverage_dither_control" "GL_EXT_texture_shared_exponent" "GL_EXT_texture_sRGB_R8" "GL_ARB_internalformat_query" "GL_ARB_stencil_texturing" "GL_EXT_timer_query" "GL_NV_packed_depth_stencil" "GL_ARB_get_program_binary" "GL_EXT_vertex_attrib_64bit" "GL_EXT_framebuffer_object" "GL_IBM_multimode_draw_arrays" "GL_EXT_texture_snorm" "GL_ARB_texture_border_clamp" "GL_ARB_invalidate_subdata" "GL_ARB_enhanced_layouts" "GL_NV_shader_atomic_int64" "GL_NV_texture_rectangle" "GL_ARB_fragment_program_shadow" "GL_ARB_vertex_attrib_64bit" "GL_AMD_multi_draw_indirect" "GL_EXT_texture_rectangle" "GL_ARB_vertex_buffer_object" "GL_ARB_texture_multisample" "GL_NV_depth_clamp" "GL_EXT_texture_env_dot3" "GL_ARB_parallel_shader_compile" "GL_AMD_shader_stencil_export" "GL_AMD_shader_trinary_minmax" "GL_APPLE_packed_pixels" "GL_ARB_draw_instanced" "GL_ARB_program_interface_query" "GL_SGIS_texture_lod" "GL_ARB_texture_rg" "GL_EXT_texture_shadow_lod" "GL_ARB_explicit_attrib_location" "GL_ARB_internalformat_query2" "GL_EXT_vertex_array_bgra" "GL_ARB_compressed_texture_pixel_storage" "GL_EXT_texture_lod_bias" "GL_ATI_texture_env_combine3" "GL_ARB_draw_elements_base_vertex" "GL_ARB_texture_buffer_object" "GL_AMD_query_buffer_object" "GL_ARB_shading_language_include" "GL_ARB_gpu_shader_int64" "GL_ARB_sampler_objects" "GL_ARB_draw_indirect" "GL_AMD_vertex_shader_layer" "GL_ARB_shader_draw_parameters" "GL_EXT_stencil_wrap" "GL_ARB_pixel_buffer_object" "GL_ARB_map_buffer_range" "GL_EXT_depth_bounds_test" "GL_EXT_abgr" "GL_ARB_vertex_type_10f_11f_11f_rev" "GL_ARB_vertex_array_object" "GL_ARB_cull_distance" "GL_EXT_texture_swizzle" "GL_EXT_shadow_funcs" "GL_EXT_texture_sRGB" "GL_ARB_tessellation_shader" "GL_ARB_shader_storage_buffer_object" "GL_OES_read_format" "GL_ARB_shading_language_420pack" "GL_ARB_shader_atomic_counters" "GL_EXT_framebuffer_multisample_blit_scaled" "GL_KHR_texture_compression_astc_ldr" "GL_ARB_shader_texture_lod" "GL_EXT_bgra" "GL_ARB_map_buffer_alignment" "GL_ARB_texture_env_crossbar" "GL_SUN_multi_draw_arrays" "GL_ARB_vertex_type_2_10_10_10_rev" "GL_EXT_subtexture" "GL_ARB_texture_storage_multisample" "GL_NV_fog_distance" "GL_ARB_robust_buffer_access_behavior" "GL_ARB_occlusion_query2" "GL_EXT_semaphore" "GL_EXT_texture_array" "GL_ARB_shader_group_vote" "GL_EXT_rescale_normal" "GL_EXT_texture_env_combine" "GL_EXT_provoking_vertex" "GL_ARB_texture_float" "GL_ARB_seamless_cube_map" "GL_ARB_timer_query" "GL_EXT_pixel_buffer_object" "GL_EXT_texture_buffer_object" "GL_MESA_shader_integer_functions" "GL_MESA_framebuffer_flip_y" "GL_ARB_derivative_control" "GL_ARB_texture_cube_map_array" "GL_EXT_compiled_vertex_array" "GL_MESA_pack_invert" "GL_ARB_fragment_coord_conventions" "GL_ARB_shader_image_size" "GL_ARB_sync" "GL_ARB_texture_cube_map" "GL_EXT_packed_pixels" "GL_INGR_blend_func_separate" "GL_EXT_memory_object_fd" "GL_ARB_conditional_render_inverted" "GL_ARB_transform_feedback_instanced" "GL_ARB_ES2_compatibility" "GL_ARB_sparse_texture" "GL_ATI_texture_mirror_once" "GL_ARB_gpu_shader_fp64" "GL_ARB_half_float_pixel" "GL_ARB_shader_subroutine" "GL_ARB_texture_rectangle" "GL_ARB_compute_shader" "GL_EXT_draw_instanced" "GL_AMD_draw_buffers_blend" "GL_KHR_blend_equation_advanced" "GL_NV_vdpau_interop" "GL_ARB_texture_compression_bptc" "GL_EXT_shader_integer_mix" "GL_ARB_polygon_offset_clamp" "GL_ARB_transform_feedback_overflow_query" "GL_EXT_vertex_array" "GL_S3_s3tc" "GL_EXT_texture" "GL_ARB_instanced_arrays" "GL_ARB_shader_precision" "GL_EXT_gpu_shader4" "GL_KHR_context_flush_control" "GL_ARB_texture_mirror_clamp_to_edge" "GL_ATI_draw_buffers" "GL_EXT_transform_feedback" "GL_EXT_texture_sRGB_decode" "GL_ARB_vertex_array_bgra" "GL_ARB_separate_shader_objects" "GL_ARB_conservative_depth" "GL_ARB_shadow" "GL_ARB_occlusion_query" "GL_ATI_texture_compression_3dc" "GL_NV_texture_env_combine4" "GL_ARB_framebuffer_sRGB" QPA OpenGL Detection Info supportsDesktopGL: true supportsOpenGLES: true isQtPreferOpenGLES: false useBufferInvalidation (config option): false Hardware Information GPU Acceleration: auto Memory: 15337 Mb Number of Cores: 16 Swap Location: /tmp Built for: sse2 Base instruction set: sse2 Supported instruction sets: fma3+avx2 avx2 fma3+avx avx fma4 fma3+sse4.2 sse4.2 sse4.1 ssse3 sse3 sse2 Current Settings Current Swap Location: /tmp 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: 420 Use Backup Files: true Number of Backups Kept: 1 Backup File Suffix: ~ Backup Location: Same Folder as the File Backup Location writable: false Resource Location: /home/maplespace/.local/share/krita Use Win8 Pointer Input: false Use RightMiddleTabletButton Workaround: false Levels of Detail Enabled: false Use Zip64: false Display Information Number of screens: 1 Screen: 0 Name: XWAYLAND0 Depth: 24 Scale: 1 Physical DPI145.401 Logical DPI96 Physical Size: 360, 200 Position: 0, 0 Resolution in pixels: 2048x1152 Manufacturer: Model: Refresh Rate: 164.897 > * Which widget style are you using Where do I find which widget style I am using? > * Can you reproduce the issue with the appimage? Yes, the lag (and the CPU core usage) is still there in the Appimage version as well. Thanks for your comment! Automatically switching the status of this bug to REPORTED so that the KDE team knows that the bug is ready to get confirmed. In the future you may also do this yourself when providing needed information. Git commit 36d3a5cc7c9fc323569d2cdf6e7cfc78f8829b98 by Dmitry Kazakov. Committed on 18/04/2023 at 12:40. Pushed by dkazakov into branch 'master'. Fix huge slowdown when saving long text into the text shape There were two issues: 1) paintPaths() used to rasterize **all** the character paths, even the ones outside the current painter's clip rect. That was obviously slow, because the tiled vector rendering code forced it to rasterize the whole text 10+ times. 2) paintPaths() passed the bounding outline rect incorrectly to the descendants. Instead of passing the outline of the child shape it passed the outline of the root shape, which caused KoClipMaskPainter to allocate too huge buffer for rendering the text. M +25 -15 libs/flake/text/KoSvgTextShape.cpp https://invent.kde.org/graphics/krita/commit/36d3a5cc7c9fc323569d2cdf6e7cfc78f8829b98 Git commit 088a1f804e9311bb0cccccbef2ea89230834b6d9 by Dmitry Kazakov. Committed on 18/04/2023 at 13:09. Pushed by dkazakov into branch 'master'. Fix gradient painting on textr shapes We should pass root outline as the baseline for the coordinate systems, but create KoClipMaskPainter clipped to the real size of the shape. M +12 -8 libs/flake/text/KoSvgTextShape.cpp https://invent.kde.org/graphics/krita/commit/088a1f804e9311bb0cccccbef2ea89230834b6d9 |