diff options
author | Allan Sandfeld Jensen <allan.jensen@digia.com> | 2014-10-21 11:15:55 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2014-12-02 14:38:36 +0100 |
commit | 864cf2a6cd658e4b98e1248e9aaab6fe6afc038f (patch) | |
tree | 61ca5ea284c9155af09c0d10d1af0989306e9137 /src/corelib/plugin/qlibrary.h | |
parent | f6eb3c220b17ecb56befe1a1ea2241ca6d5ab0c8 (diff) | |
download | qtbase-864cf2a6cd658e4b98e1248e9aaab6fe6afc038f.tar.gz |
Add DeepBind option to QLibrary
Adds an option to request the RTLD_DEEPBIND flag to dlopen. On Linux
this can be used to force a library to resolve global symbols locally
instead of using the similarly named symbols already loaded.
This makes it possible to load and use plugins linked against Qt 4
without crashing.
[ChangeLog][QtCore][QLibrary] Added DeepBindHint which maps to RTLD_DEEPBIND
on Linux making it possible to load libraries with external symbols that
clash with already loaded ones, such as plugins linked to Qt4.
Change-Id: I4edb4af68e4a47e932a87d108360dba8d91dc34a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/plugin/qlibrary.h')
-rw-r--r-- | src/corelib/plugin/qlibrary.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/corelib/plugin/qlibrary.h b/src/corelib/plugin/qlibrary.h index 77fe432761..327af8aada 100644 --- a/src/corelib/plugin/qlibrary.h +++ b/src/corelib/plugin/qlibrary.h @@ -53,7 +53,8 @@ public: ResolveAllSymbolsHint = 0x01, ExportExternalSymbolsHint = 0x02, LoadArchiveMemberHint = 0x04, - PreventUnloadHint = 0x08 + PreventUnloadHint = 0x08, + DeepBindHint = 0x10 }; Q_DECLARE_FLAGS(LoadHints, LoadHint) |