[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#585792: Bug#585751: Too paranoid version check in kpluginloader.cpp:243

# This time to the right report
submitter 585792 !
clone 585792 -1
reassign -1 libqtcore4
retitle -1 qlibrary.cpp:isPlugin() won't load a plugin built with later Qt 4.x 

On sekmadienis 13 Birželis 2010 23:55:46 Modestas Vainius wrote:
> Plugin version check at kpluginloader.cpp:243
> (kde_plugin_verification_data) is too paranoid and does not accept
> plugins compiled against later release of kde4libs. This behaviour is
> harmful when dependencies are enforced at the symbol level and may cause
> breakages like in #585751. It's an open question how much that version
> check should be relaxed (to accept minor or even major releases).

A similar check exists in src/corelib/plugin/qlibrary.cpp:isPlugin() [1] as
well but it's a bit less paranoid and will refuse to load a plugin if it
was built with later major Qt release (4.x). This still does not work with
symbol files well. So either we need to bump symbol versions to the
current 4.x series each new major release or just remove that check.
[1] if ((qt_version & 0x00ff00) > (QT_VERSION & 0x00ff00) || (qt_version &
0xff0000) != (QT_VERSION & 0xff0000)) {
     errorString = QLibrary::tr("The plugin '%1' uses incompatible Qt
library. (%2.%3.%4) [%5]")

Modestas Vainius <modestas@vainius.eu>

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply to: