diff options
| author | Laszlo Agocs <laszlo.agocs@qt.io> | 2022-10-19 10:51:16 +0200 |
|---|---|---|
| committer | Laszlo Agocs <laszlo.agocs@qt.io> | 2022-10-20 21:37:57 +0200 |
| commit | 1f9ae93ccfb267e1d0a2e5056b7ddb48cb0b535c (patch) | |
| tree | 2f120e89f4acc7df2cf09a3f4d33a8845ac4a385 /src/qml/compiler/qv4codegen.cpp | |
| parent | c79263f223c7f442a3e79e58d55164b472e210f0 (diff) | |
ShaderEffect: Make source-destroyed connection more robust
As it stands now it would often end up crashing with inline-declared
sources. Pre-6.5 this used old-style connects with a different QObject
(the separate ShaderEffectImpl object no longer exists in dev) which
survived. The new approach with passing in the QQuickShaderEffect as
the connect's 'context' is apparently not safe due to the order
during destruction, leading to missing on destroyed() signals when
QObject deletes children (during the QQuickShaderEffect destruction
process) and thus ending up invalid objects in our source table. This
is also closer to what we did pre-6.5.
Fixes: QTBUG-107772
Change-Id: If1322b2525075af6e7091c6a58be8f2ad32a8587
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Diffstat (limited to 'src/qml/compiler/qv4codegen.cpp')
0 files changed, 0 insertions, 0 deletions
