telegramdesktop / tdesktop

Telegram Desktop messaging app
https://desktop.telegram.org/
Other
26.28k stars 5.22k forks source link

Image/video view broken on Wayland with fractional scaling #26366

Closed chelobaka closed 10 months ago

chelobaka commented 1 year ago

Steps to reproduce

  1. Run Telegram on Plasma Wayland with fractional scaling enabled (175% in my case).
  2. Click on any image or video in chat/channel to view it.

Fractional scaling is critical for reproducing this behavior.

Expected behaviour

Images and videos should be shown without any glitches.

Actual behaviour

Image full size view always shows the first image that was clicked after Telegram start regardless of the actual image being viewed. There is a lot corruption artifacts on the screen when the view is active.

Videos are corrupted as well. After a video stops playing the Telegram crashes.

Operating system

Debian 12, Plasma (Wayland)

Version of Telegram Desktop

4.8.3

Installation source

Static binary from official website

Crash ID

d0a18697-d1cd-4453-d4a191b2-dbb4aa90

Logs

[2023.06.04 09:34:00] Launched version: 4008003, install beta: [TRUE], alpha: 0, debug mode: [FALSE]
[2023.06.04 09:34:00] Executable dir: /home/user/opt/Telegram/, name: Telegram
[2023.06.04 09:34:00] Initial working dir: /home/user/
[2023.06.04 09:34:00] Working dir: /home/user/.TelegramDesktop/
[2023.06.04 09:34:00] Command line: /home/user/opt/Telegram/Telegram --
[2023.06.04 09:34:00] Executable path before check: /home/user/opt/Telegram/Telegram
[2023.06.04 09:34:00] Logs started
[2023.06.04 09:34:00] Launcher filename: org.telegram.desktop._04985c5ba59937482edb62057cb2b49a.desktop
[2023.06.04 09:34:00] Connecting local socket to 7fe30f7dbfb614bc0cf870f5eb01ffd0-{87A94AB0-E370-4cde-98D3-ACC110C5967D}...
[2023.06.04 09:34:00] Socket connect error 0, starting server and app...
[2023.06.04 09:34:00] Moved logging from '/home/user/.TelegramDesktop/log_start0.txt' to '/home/user/.TelegramDesktop/log.txt'!
[2023.06.04 09:34:00] Opened '/home/user/.TelegramDesktop/tdata/working' for reading, the previous Telegram Desktop launch was not finished properly :( Crash log size: 437
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAOpenSansRegular.ttf' loaded 'DAOpenSansRegular'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAVazirRegular.ttf' loaded 'DAVazirRegular'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAOpenSansRegularItalic.ttf' loaded 'DAOpenSansRegularItalic'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAVazirRegular.ttf' loaded 'DAVazirRegular'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAOpenSansSemiboldAsBold.ttf' loaded 'DAOpenSansSemibold'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAVazirMediumAsBold.ttf' loaded 'DAVazirMedium'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAOpenSansSemiboldItalicAsBold.ttf' loaded 'DAOpenSansSemiboldItalic'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAVazirMediumAsBold.ttf' loaded 'DAVazirMedium'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAOpenSansSemiboldAsBold.ttf' loaded 'DAOpenSansSemibold'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAVazirMediumAsBold.ttf' loaded 'DAVazirMedium'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAOpenSansSemiboldItalicAsBold.ttf' loaded 'DAOpenSansSemiboldItalic'
[2023.06.04 09:34:00] Font: from ':/gui/fonts/DAVazirMediumAsBold.ttf' loaded 'DAVazirMedium'
[2023.06.04 09:34:01] Update Info: MTP is unavailable.
[2023.06.04 09:34:01] App Error: _basePath is empty in writeSettings()
[2023.06.04 09:34:52] Crash report check for sending done, result: Report
[2023.06.04 09:34:52] Crash report sending done, result: Done
[2023.06.04 09:34:56] Global devicePixelRatio: 2
[2023.06.04 09:34:56] QT_AUTO_SCREEN_SCALE_FACTOR: 0
[2023.06.04 09:34:56] Primary screen DPI: 96, Base: 96.
[2023.06.04 09:34:56] Computed screen scale: 100
[2023.06.04 09:34:56] DevicePixelRatio: 2
[2023.06.04 09:34:56] ScreenScale: 100
[2023.06.04 09:34:56] System tray available: [TRUE]
[2023.06.04 09:34:56] Icon theme: breeze-dark
[2023.06.04 09:34:56] Fallback icon theme: gnome
[2023.06.04 09:34:56] App Info: reading settings...
[2023.06.04 09:34:56] App Info: reading encrypted settings...
[2023.06.04 09:34:56] Lang Info: Loaded cached, keys: 4994
[2023.06.04 09:34:56] OpenAL Logging Level: (not set)
[2023.06.04 09:34:56] Audio Playback Devices: AIRPULSE A100 Pro
[2023.06.04 09:34:56] Audio Playback Default Device: AIRPULSE A100 Pro
[2023.06.04 09:34:56] Audio Capture Devices: ATR USB microphone Аналоговый стерео;Monitor of AIRPULSE A100 Pro
[2023.06.04 09:34:56] Audio Capture Default Device: ATR USB microphone Аналоговый стерео
[2023.06.04 09:34:56] OpenGL Profile: Compatibility.
[2023.06.04 09:34:56] OpenGL Renderer: Mesa Intel(R) UHD Graphics 630 (CFL GT2)
[2023.06.04 09:34:56] OpenGL Vendor: Intel
[2023.06.04 09:34:56] OpenGL Version: 4.6 (Compatibility Profile) Mesa 22.3.6
[2023.06.04 09:34:56] OpenGL Extensions: GL_EXT_texture_sRGB_R8, GL_ARB_multi_draw_indirect, GL_ARB_shader_group_vote, GL_INGR_blend_func_separate, GL_ARB_texture_buffer_object_rgb32, GL_ARB_shader_stencil_export, GL_ARB_transform_feedback2, GL_ARB_debug_output, GL_AMD_vertex_shader_viewport_index, GL_ARB_internalformat_query2, GL_ARB_direct_state_access, GL_ARB_texture_non_power_of_two, GL_ARB_vertex_attrib_binding, GL_OES_read_format, GL_ARB_explicit_attrib_location, GL_EXT_gpu_program_parameters, GL_ARB_instanced_arrays, GL_EXT_texture_compression_rgtc, GL_APPLE_packed_pixels, GL_ARB_texture_compression, GL_ARB_robustness, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_shader_interlock, GL_NV_conditional_render, GL_ARB_texture_float, GL_ARB_compute_variable_group_size, GL_ARB_window_pos, GL_KHR_parallel_shader_compile, GL_MESA_texture_signed_rgba, GL_ARB_tessellation_shader, GL_EXT_gpu_shader4, GL_ARB_shader_atomic_counters, GL_ARB_framebuffer_object, GL_NV_half_float, GL_ARB_texture_mirror_clamp_to_edge, GL_EXT_semaphore, GL_ARB_fragment_program_shadow, GL_ARB_shader_draw_parameters, GL_ARB_compatibility, GL_AMD_performance_monitor, GL_KHR_debug, GL_EXT_demote_to_helper_invocation, GL_EXT_blend_color, GL_NV_copy_depth_to_color, GL_EXT_subtexture, GL_ARB_sync, GL_EXT_point_parameters, GL_EXT_direct_state_access, GL_EXT_copy_texture, GL_EXT_separate_specular_color, GL_ARB_texture_gather, GL_IBM_multimode_draw_arrays, GL_NV_compute_shader_derivatives, GL_ARB_framebuffer_sRGB, GL_ARB_texture_border_clamp, GL_EXT_texture_cube_map, GL_ARB_map_buffer_alignment, GL_EXT_transform_feedback, GL_EXT_framebuffer_multisample, GL_EXT_timer_query, GL_EXT_texture_sRGB_decode, GL_ATI_texture_float, GL_ARB_copy_buffer, GL_ARB_compressed_texture_pixel_storage, GL_ARB_blend_func_extended, GL_AMD_query_buffer_object, GL_INTEL_performance_query, GL_EXT_shadow_funcs, GL_ARB_spirv_extensions, GL_ARB_texture_env_add, GL_ANGLE_texture_compression_dxt3, GL_ARB_viewport_array, GL_AMD_texture_texture4, GL_EXT_texture_shared_exponent, GL_ARB_fragment_shader, GL_KHR_texture_compression_astc_sliced_3d, GL_EXT_polygon_offset_clamp, GL_ARB_gpu_shader_int64, GL_ARB_stencil_texturing, GL_AMD_conservative_depth, GL_ATI_texture_compression_3dc, GL_KHR_robust_buffer_access_behavior, GL_EXT_texture3D, GL_EXT_draw_buffers2, GL_SGIS_texture_border_clamp, GL_ARB_fragment_program, GL_INTEL_blackhole_render, GL_NV_light_max_exponent, GL_ARB_depth_clamp, GL_ARB_multi_bind, GL_EXT_texture_lod_bias, GL_ARB_sample_shading, GL_EXT_EGL_sync, GL_AMD_shader_stencil_export, GL_ARB_texture_rg, GL_EXT_packed_depth_stencil, GL_ARB_draw_buffers_blend, GL_ARB_post_depth_coverage, GL_ARB_multisample, GL_EXT_framebuffer_object, GL_AMD_multi_draw_indirect, GL_ARB_map_buffer_range, GL_ARB_clear_texture, GL_ARB_pipeline_statistics_query, GL_ARB_shader_atomic_counter_ops, GL_ARB_shadow, GL_ARB_texture_rectangle, GL_EXT_shader_framebuffer_fetch, GL_EXT_blend_equation_separate, GL_ARB_texture_barrier, GL_KHR_context_flush_control, GL_EXT_packed_float, GL_ARB_shading_language_420pack, GL_ARB_transform_feedback_instanced, GL_EXT_blend_func_separate, GL_ARB_vertex_array_object, GL_ARB_texture_multisample, GL_ARB_texture_buffer_range, GL_ARB_shader_texture_image_samples, GL_NV_texture_barrier, GL_EXT_provoking_vertex, GL_AMD_shader_trinary_minmax, GL_ARB_vertex_type_10f_11f_11f_rev, GL_EXT_framebuffer_sRGB, GL_NV_primitive_restart, GL_ARB_program_interface_query, GL_EXT_texture_compression_latc, GL_SGIS_texture_edge_clamp, GL_EXT_texture_env_dot3, GL_KHR_texture_compression_astc_ldr, GL_ARB_shader_bit_encoding, GL_ARB_draw_indirect, GL_ARB_shader_viewport_layer_array, GL_KHR_robustness, GL_EXT_blend_subtract, GL_ARB_texture_query_lod, GL_EXT_texture_env_combine, GL_ARB_vertex_shader, GL_AMD_depth_clamp_separate, GL_ATI_fragment_shader, GL_NV_texture_env_combine4, GL_ARB_ES3_compatibility, GL_EXT_abgr, GL_ARB_depth_texture, GL_EXT_shader_framebuffer_fetch_non_coherent, GL_MESA_pack_invert, GL_AMD_vertex_shader_layer, GL_KHR_blend_equation_advanced_coherent, GL_EXT_EGL_image_storage, GL_EXT_multi_draw_arrays, GL_ARB_half_float_vertex, GL_EXT_blend_minmax, GL_EXT_pixel_buffer_object, GL_ARB_gpu_shader_fp64, GL_ARB_internalformat_query, GL_ARB_conditional_render_inverted, GL_ARB_polygon_offset_clamp, GL_ATI_separate_stencil, GL_NV_fog_distance, GL_ARB_texture_storage_multisample, GL_ATI_texture_env_combine3, GL_ARB_vertex_buffer_object, GL_SUN_multi_draw_arrays, GL_ARB_texture_env_combine, GL_MESA_window_pos, GL_ARB_shader_clock, GL_SGIS_texture_lod, GL_ARB_provoking_vertex, GL_ARB_texture_stencil8, GL_KHR_blend_equation_advanced, GL_EXT_vertex_array, GL_ARB_texture_compression_rgtc, GL_EXT_texture_integer, GL_NV_blend_square, GL_ARB_shader_storage_buffer_object, GL_EXT_framebuffer_blit, GL_ARB_get_texture_sub_image, GL_ARB_clear_buffer_object, GL_ARB_shader_subroutine, GL_EXT_texture_swizzle, GL_ARB_texture_buffer_object, GL_ARB_explicit_uniform_location, GL_ARB_occlusion_query, GL_S3_s3tc, GL_INTEL_shader_atomic_float_minmax, GL_ANGLE_texture_compression_dxt5, GL_ARB_multitexture, GL_AMD_seamless_cubemap_per_texture, GL_KHR_no_error, GL_ARB_texture_env_dot3, GL_EXT_texture_shadow_lod, GL_ARB_invalidate_subdata, GL_EXT_texture_array, GL_ARB_shading_language_100, GL_ARB_uniform_buffer_object, GL_ARB_vertex_type_2_10_10_10_rev, GL_AMD_draw_buffers_blend, GL_ARB_seamless_cubemap_per_texture, GL_ARB_point_sprite, GL_ARB_shader_image_size, GL_NV_depth_clamp, GL_ARB_texture_filter_anisotropic, GL_EXT_compiled_vertex_array, GL_ARB_ES3_2_compatibility, GL_IBM_rasterpos_clip, GL_ARB_texture_cube_map, GL_ARB_conservative_depth, GL_NV_ES1_1_compatibility, GL_ARB_get_program_binary, GL_EXT_texture_buffer_object, GL_SGIS_generate_mipmap, GL_ARB_texture_storage, GL_ARB_depth_buffer_float, GL_EXT_secondary_color, GL_AMD_pinned_memory, GL_NV_packed_depth_stencil, GL_EXT_memory_object_fd, GL_EXT_rescale_normal, GL_ARB_enhanced_layouts, GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_ES3_1_compatibility, GL_ARB_seamless_cube_map, GL_ARB_half_float_pixel, GL_3DFX_texture_compression_FXT1, GL_ARB_point_parameters, GL_EXT_texture_object, GL_ARB_fragment_coord_conventions, GL_ARB_transform_feedback3, GL_EXT_shader_samples_identical, GL_ARB_vertex_array_bgra, GL_EXT_stencil_wrap, GL_ARB_framebuffer_no_attachments, GL_ARB_texture_env_crossbar, GL_ARB_vertex_attrib_64bit, GL_EXT_bgra, GL_ARB_gl_spirv, GL_EXT_texture_env_add, GL_MESA_framebuffer_flip_y, GL_EXT_texture_compression_s3tc, GL_ARB_timer_query, GL_ARB_arrays_of_arrays, GL_ARB_query_buffer_object, GL_INTEL_shader_integer_functions2, GL_ARB_texture_cube_map_array, GL_ARB_transform_feedback_overflow_query, GL_ARB_color_buffer_float, GL_ARB_compute_shader, GL_ARB_texture_view, GL_NV_texgen_reflection, GL_ARB_draw_buffers, GL_ARB_base_instance, GL_NV_fragment_shader_interlock, GL_EXT_texture_rectangle, GL_EXT_draw_range_elements, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_array_bgra, GL_ARB_texture_swizzle, GL_ARB_texture_mirrored_repeat, GL_EXT_fog_coord, GL_ARB_shader_texture_lod, GL_ARB_clip_control, GL_ARB_indirect_parameters, GL_ARB_shading_language_include, GL_ARB_draw_instanced, GL_ARB_shader_objects, GL_ARB_shading_language_packing, GL_ARB_texture_compression_bptc, GL_EXT_texture_sRGB, GL_EXT_texture_snorm, GL_ARB_shader_precision, GL_ARB_gpu_shader5, GL_ARB_texture_query_levels, GL_EXT_memory_object, GL_ARB_draw_elements_base_vertex, GL_ATI_blend_equation_separate, GL_ARB_parallel_shader_compile, GL_EXT_framebuffer_multisample_blit_scaled, GL_ATI_draw_buffers, GL_ARB_sampler_objects, GL_ARB_shader_ballot, GL_IBM_texture_mirrored_repeat, GL_ARB_vertex_program, GL_EXT_texture_compression_dxt1, GL_NV_texture_rectangle, GL_ARB_ES2_compatibility, GL_EXT_shader_integer_mix, GL_EXT_stencil_two_side, GL_ARB_derivative_control, GL_ARB_robust_buffer_access_behavior, GL_EXT_semaphore_fd, GL_ARB_buffer_storage, GL_ARB_pixel_buffer_object, GL_ARB_separate_shader_objects, GL_EXT_packed_pixels, GL_ARB_transpose_matrix, GL_EXT_texture_edge_clamp, GL_EXT_texture, GL_ARB_texture_rgb10_a2ui, GL_NV_copy_image, GL_OES_EGL_image, GL_EXT_texture_filter_anisotropic, GL_EXT_debug_label, GL_EXT_draw_instanced, GL_ARB_shader_image_load_store, GL_MESA_shader_integer_functions, GL_ARB_occlusion_query2
[2023.06.04 09:34:56] OpenGL: QOpenGLContext created, version: 4.4.
[2023.06.04 09:34:56] App Info: reading accounts info...
[2023.06.04 09:34:56] App Info: reading encrypted info...
[2023.06.04 09:34:56] App Info: reading map...
[2023.06.04 09:34:56] App Info: reading encrypted map...
[2023.06.04 09:34:56] App Info: reading encrypted user settings...
[2023.06.04 09:34:56] App Info: encrypted user settings read.
[2023.06.04 09:34:56] App Info: reading encrypted mtp data...
[2023.06.04 09:34:56] MTP Info: read keys, current: 5, to destroy: 0
[2023.06.04 09:34:56] Map read time: 17
[2023.06.04 09:34:56] App Info: reading encrypted mtp config...
[2023.06.04 09:34:56] Export Info: Destroy top bar by controller removal.
[2023.06.04 09:34:56] OpenGL: [TRUE] (Window)
[2023.06.04 09:34:57] Notification daemon product name: Plasma
[2023.06.04 09:34:57] Notification daemon vendor name: KDE
[2023.06.04 09:34:57] Notification daemon version: 5.27.2
[2023.06.04 09:34:57] Notification daemon specification version: 1.2
[2023.06.04 09:34:57] Notification daemon capabilities: body, body-hyperlinks, body-markup, body-images, icon-static, actions, persistence, inline-reply, x-kde-urls, x-kde-origin-name, x-kde-display-appname, inhibitions
[2023.06.04 09:34:57] API Warning: not loaded minimal channel applied.
[2023.06.04 09:34:58] API Warning: not loaded minimal channel applied.
[2023.06.04 09:34:58] API Warning: not loaded minimal channel applied.
[2023.06.04 09:35:55] RPC Error: request 74 got fail with code 400, error PEER_ID_INVALID
[2023.06.04 09:35:58] Audio Info: recreating audio device and reattaching the tracks
[2023.06.04 09:36:01] OpenGL: [TRUE] (PipPanel)
ilya-fedin commented 1 year ago

Are you sure fractional scaling is related? Maybe it's a dup of #26357 (if you have a stale distro like Debian and do any operation that attempts to launch external application, tdesktop will malfunction until next launch due to a Qt bug)?

chelobaka commented 1 year ago

Reported behavior is not reproduced with no scaling (100% setting) and always reproduced with any value more than 100%. I don't have any problems with opening links in a browser as reported in #26357. Also Debian 12 has newer than Debian 11 versions of Qt libs.

ilya-fedin commented 1 year ago

System Qt libs are irrelevant, Qt is linked statically, just like most other libraries. Is this a long-standing bug or a regression in 4.8.3?

chelobaka commented 1 year ago

The bug appeared right after update to 4.8.3.

ilya-fedin commented 1 year ago

Is this reproducible without OpenGL?

chelobaka commented 1 year ago

Can you give a hint on how to run Telegram without OpenGL?

ilya-fedin commented 1 year ago

disable OpenGL in Settings -> Advanced

chelobaka commented 1 year ago

Turning OpenGL off made the bug disappear.

ilya-fedin commented 1 year ago

I'm not sure this will be fixed... This really smells of Qt+OpenGL+drivers bingo which is impossible to reproduce while not having exact same environment and exact same hardware.

chelobaka commented 1 year ago

OK. At least I can use Telegram as before. Thank you!

Neurotoxin001 commented 1 year ago

https://github.com/telegramdesktop/tdesktop/issues/17109

It's not the same?

ilya-fedin commented 1 year ago

@Neurotoxin001 #17109 doesn't mention any corruptions. Although it's hard to say without a screen record of this issue.

ktulhufhtagn1 commented 1 year ago

Same for me, turning opengl off helps

harshil21 commented 1 year ago

Same problem for me as well. Even the links don't open (#26357). I've sent like hundred crash reports by now for both these issues. Is there anything I can do to help fix this?

ilya-fedin commented 1 year ago

Both those issues are misbehaviors (links not opening, video has artifacts), not crashes. Are you sure you have the same issue?

ilya-fedin commented 1 year ago

I don't think this will be fixed, it looks like incompatibility between the driver and new Qt version. The only things you can do are:

  1. Disable OpenGL in Telegram settings
  2. Update or replace your distro to get newer graphics drivers
  3. Replace your hardware
harshil21 commented 1 year ago

Both those issues are misbehaviors (links not opening, video has artifacts), not crashes. Are you sure you have the same issue?

Okay now after updating (sudo apt update), links no longer crash tdesktop. But images/videos still crash tdesktop if I have fractional scaling enabled, with scaling more than 100% in Ubuntu settings (not the interface scale in setting in Telegram). So I don't get corruption, it just straight up crashes when an image/video is opened.

The problem disappears when OpenGL is disabled.

Ubuntu: 23.04, on Wayland Gnome 44 tdesktop version: 4.8.3 (did not happen on earlier versions) Linux 6.2.0-20-generic Nvidia 1650Ti

Sorry to bother if this simply an upstream issue.

ilya-fedin commented 1 year ago

You have a fixed release distro, you don't have software updates once the distro is released. If you want to update the graphics drivers, you have to change the distro (or probably find a PPA with updated mesa).

ilya-fedin commented 1 year ago

Nvidia 1650Ti

NVIDIA? Are you using a proprietary driver? If yes, the OpenGL option shouldn't work if you haven't disabled blacklist in experimental settings (what voids your warranty).

harshil21 commented 1 year ago

You have a fixed release distro, you don't have software updates once the distro is released. If you want to update the graphics drivers, you have to change the distro (or probably find a PPA with updated mesa).

I have opted in for pre-release updates, and remember getting some update regarding Qt recently (but you said https://github.com/telegramdesktop/tdesktop/issues/26366#issuecomment-1575446887 so I don't think that matters?)

NVIDIA? Are you using a proprietary driver?

Yes using the stable version (525) proprietary driver.

ilya-fedin commented 1 year ago

Do you have this experimental option enabled? изображение

harshil21 commented 1 year ago

Do you have this experimental option enabled?

Nope that is switched off.

ilya-fedin commented 1 year ago

Can you provide the log.txt when OpenGL is enabled in Advanced settings? Apparently there's a problem with detecting NVIDIA GPU.

harshil21 commented 1 year ago

Can you provide the log.txt when OpenGL is enabled in Advanced settings? Apparently there's a problem with detecting NVIDIA GPU.

Logs ``` [2023.06.09 17:04:42] Launched version: 4008003, install beta: [TRUE], alpha: 0, debug mode: [FALSE] [2023.06.09 17:04:42] Executable dir: /home/hoppingturtles/.local/bin/, name: Telegram [2023.06.09 17:04:42] Initial working dir: /home/hoppingturtles/.local/share/TelegramDesktop/ [2023.06.09 17:04:42] Working dir: /home/hoppingturtles/.local/share/TelegramDesktop/ [2023.06.09 17:04:42] Command line: /home/hoppingturtles/.local/bin/Telegram -noupdate -tosettings [2023.06.09 17:04:42] Executable path before check: /home/hoppingturtles/.local/bin/Telegram [2023.06.09 17:04:42] Logs started [2023.06.09 17:04:42] Launcher filename: org.telegram.desktop._94b498f5fe184363c57a8d81cb0e3655.desktop [2023.06.09 17:04:42] Connecting local socket to 47ee608be3f543e2937ee1321f519ea6-{87A94AB0-E370-4cde-98D3-ACC110C5967D}... [2023.06.09 17:04:42] Socket connect error 0, starting server and app... [2023.06.09 17:04:42] Moved logging from '/home/hoppingturtles/.local/share/TelegramDesktop/log_start0.txt' to '/home/hoppingturtles/.local/share/TelegramDesktop/log.txt'! [2023.06.09 17:04:42] Global devicePixelRatio: 1 [2023.06.09 17:04:42] Primary screen DPI: 96, Base: 96. [2023.06.09 17:04:42] Computed screen scale: 100 [2023.06.09 17:04:42] DevicePixelRatio: 1 [2023.06.09 17:04:42] ScreenScale: 100 [2023.06.09 17:04:42] System tray available: [TRUE] [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAOpenSansRegular.ttf' loaded 'DAOpenSansRegular' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAVazirRegular.ttf' loaded 'DAVazirRegular' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAOpenSansRegularItalic.ttf' loaded 'DAOpenSansRegularItalic' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAVazirRegular.ttf' loaded 'DAVazirRegular' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAOpenSansSemiboldAsBold.ttf' loaded 'DAOpenSansSemibold' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAVazirMediumAsBold.ttf' loaded 'DAVazirMedium' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAOpenSansSemiboldItalicAsBold.ttf' loaded 'DAOpenSansSemiboldItalic' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAVazirMediumAsBold.ttf' loaded 'DAVazirMedium' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAOpenSansSemiboldAsBold.ttf' loaded 'DAOpenSansSemibold' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAVazirMediumAsBold.ttf' loaded 'DAVazirMedium' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAOpenSansSemiboldItalicAsBold.ttf' loaded 'DAOpenSansSemiboldItalic' [2023.06.09 17:04:42] Font: from ':/gui/fonts/DAVazirMediumAsBold.ttf' loaded 'DAVazirMedium' [2023.06.09 17:04:42] Icon theme: Yaru [2023.06.09 17:04:42] Fallback icon theme: [2023.06.09 17:04:42] App Info: reading settings... [2023.06.09 17:04:42] App Info: reading encrypted settings... [2023.06.09 17:04:42] Lang Info: Loaded cached, keys: 4996 [2023.06.09 17:04:42] OpenAL Logging Level: (not set) [2023.06.09 17:04:42] Audio Playback Devices: Built-in Audio Analog Stereo [2023.06.09 17:04:42] Audio Playback Default Device: Built-in Audio Analog Stereo [2023.06.09 17:04:42] Audio Capture Devices: Built-in Audio Analog Stereo;Monitor of Built-in Audio Analog Stereo [2023.06.09 17:04:42] Audio Capture Default Device: Built-in Audio Analog Stereo [2023.06.09 17:04:43] OpenGL Profile: Compatibility. [2023.06.09 17:04:43] OpenGL Renderer: Mesa Intel(R) UHD Graphics (CML GT2) [2023.06.09 17:04:43] OpenGL Vendor: Intel [2023.06.09 17:04:43] OpenGL Version: 4.6 (Compatibility Profile) Mesa 23.0.2 [2023.06.09 17:04:43] OpenGL Extensions: GL_ARB_shader_subroutine, GL_ARB_texture_float, GL_ARB_provoking_vertex, GL_EXT_shader_framebuffer_fetch, GL_ARB_texture_query_levels, GL_ARB_gpu_shader_int64, GL_SGIS_texture_lod, GL_ARB_framebuffer_no_attachments, GL_INTEL_shader_atomic_float_minmax, GL_ARB_texture_storage_multisample, GL_EXT_texture, GL_KHR_no_error, GL_ARB_texture_storage, GL_OES_read_format, GL_EXT_blend_subtract, GL_ARB_query_buffer_object, GL_NV_primitive_restart, GL_ARB_texture_compression_rgtc, GL_ARB_direct_state_access, GL_EXT_framebuffer_multisample, GL_ARB_shading_language_100, GL_EXT_semaphore_fd, GL_ARB_buffer_storage, GL_EXT_texture_shared_exponent, GL_ARB_transform_feedback2, GL_ARB_depth_texture, GL_ARB_shader_bit_encoding, GL_EXT_semaphore, GL_EXT_texture_filter_anisotropic, GL_ARB_texture_border_clamp, GL_NV_ES1_1_compatibility, GL_ARB_compute_shader, GL_ARB_texture_gather, GL_ARB_draw_instanced, GL_EXT_draw_buffers2, GL_ARB_shader_image_size, GL_AMD_query_buffer_object, GL_AMD_seamless_cubemap_per_texture, GL_ARB_fragment_program_shadow, GL_ARB_texture_env_combine, GL_EXT_texture_rectangle, GL_EXT_point_parameters, GL_EXT_direct_state_access, GL_MESA_texture_signed_rgba, GL_ARB_explicit_uniform_location, GL_AMD_shader_trinary_minmax, GL_EXT_EGL_sync, GL_ARB_shader_viewport_layer_array, GL_ARB_point_parameters, GL_EXT_vertex_array, GL_EXT_blend_equation_separate, GL_ARB_sample_shading, GL_EXT_memory_object, GL_ARB_parallel_shader_compile, GL_INTEL_blackhole_render, GL_ARB_fragment_layer_viewport, GL_ARB_multisample, GL_ARB_vertex_type_10f_11f_11f_rev, GL_ANGLE_texture_compression_dxt3, GL_ARB_shader_group_vote, GL_AMD_vertex_shader_layer, GL_ARB_texture_non_power_of_two, GL_ARB_shader_clock, GL_ARB_blend_func_extended, GL_ARB_texture_mirror_clamp_to_edge, GL_NV_depth_clamp, GL_ARB_texture_view, GL_EXT_rescale_normal, GL_ARB_draw_buffers_blend, GL_EXT_debug_label, GL_ARB_fragment_coord_conventions, GL_ARB_depth_clamp, GL_EXT_texture_compression_rgtc, GL_ARB_point_sprite, GL_ARB_texture_rgb10_a2ui, GL_EXT_memory_object_fd, GL_EXT_texture_lod_bias, GL_NV_copy_depth_to_color, GL_ARB_draw_indirect, GL_NV_compute_shader_derivatives, GL_ARB_shadow, GL_ARB_transform_feedback_instanced, GL_ARB_gpu_shader_fp64, GL_ARB_conservative_depth, GL_NV_blend_square, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_decode, GL_ATI_separate_stencil, GL_ARB_shader_stencil_export, GL_SGIS_texture_edge_clamp, GL_ARB_texture_compression_bptc, GL_ARB_sync, GL_NV_texgen_reflection, GL_ARB_transform_feedback_overflow_query, GL_NV_conditional_render, GL_ARB_copy_buffer, GL_ARB_seamless_cubemap_per_texture, GL_ARB_vertex_program, GL_EXT_texture_edge_clamp, GL_ARB_vertex_attrib_64bit, GL_ARB_stencil_texturing, GL_EXT_texture_integer, GL_EXT_draw_range_elements, GL_EXT_demote_to_helper_invocation, GL_EXT_shader_integer_mix, GL_IBM_rasterpos_clip, GL_EXT_packed_float, GL_EXT_shader_samples_identical, GL_NV_packed_depth_stencil, GL_ARB_shader_draw_parameters, GL_ARB_get_texture_sub_image, GL_3DFX_texture_compression_FXT1, GL_ARB_program_interface_query, GL_ARB_texture_env_crossbar, GL_ARB_ES3_1_compatibility, GL_ARB_pipeline_statistics_query, GL_ARB_draw_elements_base_vertex, GL_NV_alpha_to_coverage_dither_control, GL_ARB_fragment_shader_interlock, GL_ARB_indirect_parameters, GL_EXT_secondary_color, GL_EXT_texture_array, GL_ARB_robust_buffer_access_behavior, GL_EXT_texture_compression_s3tc, GL_EXT_transform_feedback, GL_SGIS_texture_border_clamp, GL_AMD_vertex_shader_viewport_index, GL_EXT_texture_object, GL_EXT_texture_snorm, GL_S3_s3tc, GL_ARB_shader_texture_image_samples, GL_EXT_separate_specular_color, GL_EXT_texture_env_combine, GL_ARB_texture_multisample, GL_MESA_pack_invert, GL_ARB_multitexture, GL_ARB_depth_buffer_float, GL_EXT_multi_draw_arrays, GL_EXT_gpu_program_parameters, GL_EXT_pixel_buffer_object, GL_ARB_vertex_array_bgra, GL_NV_light_max_exponent, GL_AMD_performance_monitor, GL_ARB_texture_query_lod, GL_ARB_spirv_extensions, GL_ARB_copy_image, GL_EXT_texture_shadow_lod, GL_IBM_multimode_draw_arrays, GL_KHR_debug, GL_NV_copy_image, GL_ARB_texture_buffer_object_rgb32, GL_ARB_compatibility, GL_ARB_post_depth_coverage, GL_NV_fog_distance, GL_AMD_draw_buffers_blend, GL_ATI_blend_equation_separate, GL_NV_texture_barrier, GL_EXT_vertex_array_bgra, GL_ARB_texture_buffer_range, GL_EXT_texture_swizzle, GL_AMD_pinned_memory, GL_ARB_vertex_array_object, GL_ARB_shader_precision, GL_EXT_texture_sRGB, GL_ARB_texture_filter_anisotropic, GL_ARB_transform_feedback3, GL_ARB_shader_ballot, GL_ARB_texture_swizzle, GL_EXT_texture_compression_dxt1, GL_EXT_texture_env_dot3, GL_ARB_vertex_attrib_binding, GL_KHR_context_flush_control, GL_EXT_texture_buffer_object, GL_ATI_texture_float, GL_KHR_robust_buffer_access_behavior, GL_MESA_framebuffer_flip_y, GL_AMD_conservative_depth, GL_ARB_texture_barrier, GL_EXT_draw_instanced, GL_KHR_blend_equation_advanced_coherent, GL_EXT_compiled_vertex_array, GL_MESA_shader_integer_functions, GL_ARB_shading_language_packing, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_sRGB, GL_SGIS_generate_mipmap, GL_NV_fragment_shader_interlock, GL_ARB_texture_mirrored_repeat, GL_ATI_texture_compression_3dc, GL_ARB_debug_output, GL_IBM_texture_mirrored_repeat, GL_ANGLE_texture_compression_dxt5, GL_ARB_vertex_type_2_10_10_10_rev, GL_KHR_parallel_shader_compile, GL_EXT_provoking_vertex, GL_EXT_timer_query, GL_KHR_texture_compression_astc_sliced_3d, GL_ARB_base_instance, GL_ARB_texture_env_add, GL_ARB_instanced_arrays, GL_EXT_blend_func_separate, GL_ARB_clip_control, GL_EXT_blend_color, GL_ARB_texture_buffer_object, GL_KHR_texture_compression_astc_ldr, GL_ARB_arrays_of_arrays, GL_EXT_abgr, GL_EXT_stencil_two_side, GL_ATI_fragment_shader, GL_EXT_framebuffer_object, GL_ARB_viewport_array, GL_EXT_gpu_shader4, GL_ARB_multi_draw_indirect, GL_ARB_enhanced_layouts, GL_ARB_ES3_compatibility, GL_ARB_map_buffer_alignment, GL_KHR_robustness, GL_ARB_texture_cube_map_array, GL_OES_EGL_image, GL_AMD_multi_draw_indirect, GL_ARB_clear_buffer_object, GL_APPLE_packed_pixels, GL_ARB_get_program_binary, GL_ATI_texture_env_combine3, GL_ARB_half_float_vertex, GL_EXT_packed_depth_stencil, GL_ARB_color_buffer_float, GL_ARB_robustness, GL_ARB_internalformat_query, GL_ARB_timer_query, GL_EXT_shader_framebuffer_fetch_non_coherent, GL_ARB_pixel_buffer_object, GL_ARB_compressed_texture_pixel_storage, GL_INGR_blend_func_separate, GL_ARB_transpose_matrix, GL_ARB_texture_cube_map, GL_ARB_framebuffer_sRGB, GL_EXT_texture_compression_latc, GL_INTEL_performance_query, GL_NV_texture_rectangle, GL_EXT_polygon_offset_clamp, GL_ARB_gl_spirv, GL_ARB_fragment_program, GL_ARB_vertex_shader, GL_ARB_internalformat_query2, GL_ARB_polygon_offset_clamp, GL_INTEL_shader_integer_functions2, GL_ARB_texture_env_dot3, GL_ARB_ES2_compatibility, GL_ARB_multi_bind, GL_ARB_shading_language_420pack, GL_ARB_shader_texture_lod, GL_ATI_draw_buffers, GL_ARB_seamless_cube_map, GL_NV_half_float, GL_SUN_multi_draw_arrays, GL_ARB_shader_atomic_counters, GL_EXT_copy_texture, GL_EXT_blend_minmax, GL_EXT_vertex_attrib_64bit, GL_ARB_shading_language_include, GL_MESA_window_pos, GL_ARB_occlusion_query2, GL_ARB_half_float_pixel, GL_ARB_uniform_buffer_object, GL_EXT_texture_env_add, GL_ARB_map_buffer_range, GL_ARB_cull_distance, GL_EXT_packed_pixels, GL_ARB_clear_texture, GL_EXT_subtexture, GL_ARB_vertex_buffer_object, GL_EXT_framebuffer_multisample_blit_scaled, GL_ARB_draw_buffers, GL_EXT_texture3D, GL_ARB_occlusion_query, GL_EXT_fog_coord, GL_ARB_compute_variable_group_size, GL_AMD_texture_texture4, GL_KHR_blend_equation_advanced, GL_ARB_shader_storage_buffer_object, GL_ARB_texture_stencil8, GL_ARB_conditional_render_inverted, GL_ARB_derivative_control, GL_EXT_texture_cube_map, GL_EXT_shadow_funcs, GL_NV_texture_env_combine4, GL_ARB_fragment_shader, GL_ARB_invalidate_subdata, GL_AMD_depth_clamp_separate, GL_ARB_explicit_attrib_location, GL_EXT_EGL_image_storage, GL_ARB_texture_compression, GL_ARB_texture_rg, GL_ARB_texture_rectangle, GL_ARB_framebuffer_object, GL_ARB_sampler_objects, GL_ARB_shader_objects, GL_EXT_bgra, GL_AMD_shader_stencil_export, GL_ARB_gpu_shader5, GL_EXT_stencil_wrap, GL_ARB_shader_image_load_store, GL_ARB_tessellation_shader, GL_ARB_ES3_2_compatibility, GL_ARB_window_pos, GL_ARB_shader_atomic_counter_ops, GL_ARB_separate_shader_objects [2023.06.09 17:04:43] OpenGL: QOpenGLContext created, version: 4.4. [2023.06.09 17:04:43] App Info: reading accounts info... [2023.06.09 17:04:43] App Info: bad decrypt key, data not decrypted - incorrect password? [2023.06.09 17:04:43] App Info: could not decrypt pass-protected key from info file, maybe bad password... [2023.06.09 17:04:43] OpenGL: [TRUE] (Window) [2023.06.09 17:04:44] Notification daemon product name: gnome-shell [2023.06.09 17:04:44] Notification daemon vendor name: GNOME [2023.06.09 17:04:44] Notification daemon version: 44.1 [2023.06.09 17:04:44] Notification daemon specification version: 1.2 [2023.06.09 17:04:44] Notification daemon capabilities: actions, body, body-markup, icon-static, persistence, sound [2023.06.09 17:04:47] App Info: reading accounts info... [2023.06.09 17:04:47] App Info: reading encrypted info... [2023.06.09 17:04:47] App Info: reading map... [2023.06.09 17:04:47] App Info: reading encrypted map... [2023.06.09 17:04:47] App Info: reading encrypted user settings... [2023.06.09 17:04:47] App Info: encrypted user settings read. [2023.06.09 17:04:47] App Info: reading encrypted mtp data... [2023.06.09 17:04:47] MTP Info: read keys, current: 5, to destroy: 0 [2023.06.09 17:04:47] Map read time: 1 [2023.06.09 17:04:47] App Info: reading encrypted mtp config... [2023.06.09 17:04:47] Export Info: Destroy top bar by controller removal. [2023.06.09 17:04:51] RPC Error: request 89 got fail with code 400, error USER_NOT_PARTICIPANT [2023.06.09 17:04:55] RPC Error: request 128 got fail with code 400, error WEBFILE_NOT_AVAILABLE ```
ilya-fedin commented 1 year ago

It says you have Intel, not NVIDIA

harshil21 commented 1 year ago

It says you have Intel, not NVIDIA

I have both image

Enabling that experimental option doesn't change anything, the logs still show Intel in them.

ilya-fedin commented 1 year ago

Well, it shouldn't. It doesn't choose between your graphics cards, it only controls the blacklist.

ilya-fedin commented 1 year ago

@chelobaka do you have multiple screens with different scales? I've remembered that Qt doesn't handle such setups: https://bugreports.qt.io/browse/QTBUG-93380.

chelobaka commented 1 year ago

@ilya-fedin no, I use only one screen.

ilya-fedin commented 1 year ago

Have you tried flatpak or snap? They have a newer mesa.

chelobaka commented 1 year ago

I use Debian and it has latest Mesa 23.1.6 now. I turned OpenGL on in Telegram settings to see if anything changed. Images and video are fine in fullscreen view, but video in separate window is corrupted and Telegram crashes when I close that window. Switched off OpenGL back.

ilya-fedin commented 1 year ago

Can you provide crash ID of the crash?

chelobaka commented 1 year ago

d1281fdf-dec9-41b7-646433ba-6acdd641

ilya-fedin commented 1 year ago

Is this reproducible? It crashes in allocator so apparently memory corruption.

chelobaka commented 1 year ago

It is reproducible when screen scale != 100%. I'm running KDE Plasma 5.27.7

ilya-fedin commented 1 year ago

Maybe mesa conflicts with custom allocator... Can you build tdesktop from sources?

ilya-fedin commented 1 year ago

@chelobaka ping

chelobaka commented 1 year ago

I guess I can build tdesktop myself, just need to find a free couple of hours.

ilya-fedin commented 1 year ago

I can provide you with a build if you want

chelobaka commented 1 year ago

That would be handy.

ilya-fedin commented 1 year ago

This is a binary just compiled in debug mode, try it first to ensure the issue is not due to release optimizations: https://drive.google.com/file/d/1LZkib2nErouvt9veL0rFXA6e6QSxILcU/view?usp=sharing If it behaves the same, try this one: https://drive.google.com/file/d/1hXpgIcxbwTF5j7GywGXKIXSh-UryaTcX/view?usp=sharing Debug builds store data in the directory where the binary is placed. I've stripped the binaries as I hope we wouldn't need traces and debug info is of multiple GBs.

chelobaka commented 1 year ago

This first build doesn't expose this bug. Video is played fine in a separate window with OpenGL on.

ilya-fedin commented 1 year ago

So that's release optimizations apparently. At that point I'm re-asking the question: have you tried flatpak or snap? They have different compilers.

chelobaka commented 1 year ago

Flatpak version works fine. Didn't try snap.

ilya-fedin commented 1 year ago

Would be really nice if you tried snap as snap uses -O3 just like the binary while flatpak uses -O2. That would give a highlight whether a compiler update would fix this or optimization level downgrade is required.

chelobaka commented 1 year ago

Snap version works fine as well.

ilya-fedin commented 1 year ago

Nice, hope a compiler update will help...

ilya-fedin commented 1 year ago

Can you try 4.9.10 beta? It's built with GCC 12.

chelobaka commented 1 year ago

Bug is still there on 4.9.10 beta. Crash report 04747199-ec0b-4932-9871468e-3dc08d78

ilya-fedin commented 1 year ago

wtf?! If it's not the compiler why does it work in flatpak/snap release and static debug but not static release?