Skip to content

Commit a48abee

Browse files
committed
Fix crashes: thread-safe QImage, reset-race token, TagStore wal recovery
Root cause chain: - QPixmap created in worker threads (UB) -> first crashes - Crash interrupted SQLite writes -> inconsistent qltag.db-wal/-shm残留 - Reopening corrupted qltag.db -> QString memory corruption -> crash loop Fixes: - ThumbDecodeTask/FolderPreviewTask: QImage only, QPixmap in GUI thread - Token + QThreadPool::clear: drop stale callbacks on folder switch - loadImageNoIcc: strip broken PNG iCCP before decode - ThumbDelegate::paint: guard invalid/out-of-range index - TagStore::open: on failure clear wal/shm and retry - Crash log with call stack (%APPDATA%/QLens Manager/qlens_crash.log)
1 parent eddcc47 commit a48abee

33 files changed

Lines changed: 8923 additions & 53 deletions

‎build-release/CMakeCache.txt‎

Lines changed: 1340 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
set(CMAKE_CXX_COMPILER "D:/Program Files/Microsoft Visual Studio/18/Community/VC/Tools/MSVC/14.51.36231/bin/Hostx64/x64/cl.exe")
2+
set(CMAKE_CXX_COMPILER_ARG1 "")
3+
set(CMAKE_CXX_COMPILER_ID "MSVC")
4+
set(CMAKE_CXX_COMPILER_VERSION "19.51.36248.0")
5+
set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
6+
set(CMAKE_CXX_COMPILER_WRAPPER "")
7+
set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14")
8+
set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "OFF")
9+
set(CMAKE_CXX_STANDARD_LATEST "23")
10+
set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23")
11+
set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
12+
set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
13+
set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
14+
set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
15+
set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20")
16+
set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23")
17+
set(CMAKE_CXX26_COMPILE_FEATURES "")
18+
19+
set(CMAKE_CXX_PLATFORM_ID "Windows")
20+
set(CMAKE_CXX_SIMULATE_ID "")
21+
set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "MSVC")
22+
set(CMAKE_CXX_COMPILER_APPLE_SYSROOT "")
23+
set(CMAKE_CXX_SIMULATE_VERSION "")
24+
set(CMAKE_CXX_COMPILER_ARCHITECTURE_ID "x64")
25+
26+
set(MSVC_CXX_ARCHITECTURE_ID x64)
27+
28+
29+
set(CMAKE_AR "D:/Program Files/Microsoft Visual Studio/18/Community/VC/Tools/MSVC/14.51.36231/bin/Hostx64/x64/lib.exe")
30+
set(CMAKE_CXX_COMPILER_AR "")
31+
set(CMAKE_RANLIB ":")
32+
set(CMAKE_CXX_COMPILER_RANLIB "")
33+
set(CMAKE_LINKER "D:/Program Files/Microsoft Visual Studio/18/Community/VC/Tools/MSVC/14.51.36231/bin/Hostx64/x64/link.exe")
34+
set(CMAKE_LINKER_LINK "D:/Program Files/Microsoft Visual Studio/18/Community/VC/Tools/MSVC/14.51.36231/bin/Hostx64/x64/link.exe")
35+
set(CMAKE_LINKER_LLD "lld-link")
36+
set(CMAKE_CXX_COMPILER_LINKER "D:/Program Files/Microsoft Visual Studio/18/Community/VC/Tools/MSVC/14.51.36231/bin/HostX64/x64/link.exe")
37+
set(CMAKE_CXX_COMPILER_LINKER_ARCHITECTURE_FLAGS "")
38+
set(CMAKE_CXX_COMPILER_LINKER_ID "MSVC")
39+
set(CMAKE_CXX_COMPILER_LINKER_VERSION "14.51.36248.0")
40+
set(CMAKE_CXX_COMPILER_LINKER_FRONTEND_VARIANT "MSVC")
41+
set(CMAKE_MT "CMAKE_MT-NOTFOUND")
42+
set(CMAKE_TAPI "")
43+
set(CMAKE_COMPILER_IS_GNUCXX )
44+
set(CMAKE_CXX_COMPILER_LOADED 1)
45+
set(CMAKE_CXX_COMPILER_WORKS TRUE)
46+
set(CMAKE_CXX_ABI_COMPILED TRUE)
47+
48+
set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
49+
50+
set(CMAKE_CXX_COMPILER_ID_RUN 1)
51+
set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm;ccm;cxxm;c++m)
52+
set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
53+
54+
foreach (lang IN ITEMS C OBJC OBJCXX)
55+
if (CMAKE_${lang}_COMPILER_ID_RUN)
56+
foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
57+
list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
58+
endforeach()
59+
endif()
60+
endforeach()
61+
62+
set(CMAKE_CXX_LINKER_PREFERENCE 30)
63+
set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
64+
set(CMAKE_CXX_LINKER_DEPFILE_SUPPORTED )
65+
set(CMAKE_LINKER_PUSHPOP_STATE_SUPPORTED )
66+
set(CMAKE_CXX_LINKER_PUSHPOP_STATE_SUPPORTED )
67+
68+
# Save compiler ABI information.
69+
set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
70+
set(CMAKE_CXX_COMPILER_ABI "")
71+
set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN")
72+
set(CMAKE_CXX_LIBRARY_ARCHITECTURE "")
73+
74+
if(CMAKE_CXX_SIZEOF_DATA_PTR)
75+
set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
76+
endif()
77+
78+
if(CMAKE_CXX_COMPILER_ABI)
79+
set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
80+
endif()
81+
82+
if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
83+
set(CMAKE_LIBRARY_ARCHITECTURE "")
84+
endif()
85+
86+
set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
87+
if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
88+
set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
89+
endif()
90+
91+
92+
93+
94+
95+
set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "")
96+
set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "")
97+
set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "")
98+
set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
99+
set(CMAKE_CXX_COMPILER_CLANG_RESOURCE_DIR "")
100+
101+
set(CMAKE_CXX_COMPILER_IMPORT_STD "")
102+
set(CMAKE_CXX_COMPILER_IMPORT_STD_ERROR_MESSAGE "Unsupported generator: Visual Studio 18 2026")
103+
set(CMAKE_CXX_STDLIB_MODULES_JSON "")
Binary file not shown.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
set(CMAKE_RC_COMPILER "rc")
2+
set(CMAKE_RC_COMPILER_ARG1 "")
3+
set(CMAKE_RC_COMPILER_LOADED 1)
4+
set(CMAKE_RC_SOURCE_FILE_EXTENSIONS rc;RC)
5+
set(CMAKE_RC_OUTPUT_EXTENSION .res)
6+
set(CMAKE_RC_COMPILER_ENV_VAR "RC")
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
set(CMAKE_HOST_SYSTEM "Windows-10.0.26200")
2+
set(CMAKE_HOST_SYSTEM_NAME "Windows")
3+
set(CMAKE_HOST_SYSTEM_VERSION "10.0.26200")
4+
set(CMAKE_HOST_SYSTEM_PROCESSOR "AMD64")
5+
6+
7+
8+
set(CMAKE_SYSTEM "Windows-10.0.26200")
9+
set(CMAKE_SYSTEM_NAME "Windows")
10+
set(CMAKE_SYSTEM_VERSION "10.0.26200")
11+
set(CMAKE_SYSTEM_PROCESSOR "AMD64")
12+
13+
set(CMAKE_CROSSCOMPILING "FALSE")
14+
15+
set(CMAKE_SYSTEM_LOADED 1)

0 commit comments

Comments
 (0)