diff options
author | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2024-06-20 17:15:14 +0200 |
---|---|---|
committer | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2024-06-21 23:23:38 +0200 |
commit | 90773b501795a088762dd540c442a7cd251a5d8e (patch) | |
tree | 5983129bd2f432dc6937504d157014ac5d7bc124 /tests/auto/network/ssl/qsslcertificate/more-certificates/cert-large-serial-number.pem | |
parent | 195d9f1ce7753a38c4dd871b981749017839227a (diff) |
In debug-and-release builds (on Windows or Apple operating systems),
we will scan for plugin libraries and find both debug and release
versions of these libraries.
However, we do not end up loading both, thanks to additional logic.
On Windows we rely on logic in QLibraryPrivate::updatePluginState()
that uses the IsDebug metadata of the plugin, skipping any mismatch.
On Apple operating systems, there is logic in QFactoryLoaderPrivate's
updateSinglePath that ties to match the `_debug` suffix of the plugin
with the Qt build config.
As the string matching logic for Apple platforms is fragile we want
to remove it, but we can't re-use the logic for Windows, to ensure
we only load a single copy of a plugin, as the Windows logic prevents
_any_ mismatch between plugin config and Qt config, even for non-
debug-and-release builds (due to the Windows runtime being incompatible
between debug and release).
To solve this we add logic to QFactoryLoader to prioritize plugins
based on the Qt build config, similar to how we prioritize plugins
based on their Qt version if we find two or more plugins claiming
the same plugin key.
Pick-to: 6.8
Change-Id: I772ba8ae79627e39418ba80107e3729bba8f9ac8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'tests/auto/network/ssl/qsslcertificate/more-certificates/cert-large-serial-number.pem')
0 files changed, 0 insertions, 0 deletions