Package: kde4libs / 4:4.4.5-2+squeeze4

31_relax_plugin_kde_version_check.diff Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Description: relax KDE version check when loading plugins
 This patch removes the check that kdecore runtime version must be higher or
 equal to the version a KDE plugin has been compiled against. It does not make
 much sense since Debian enforces dependencies on the symbol level and kde4libs
 guarantees binary compatibility.
 .
 The worst about this check was that it made impossible for most KDE packages
 to migrate to testing before newer kde4libs even if they did not need symbols
 from it. See the bug report for more information about breakage it once caused
 in testing.
 .
 This patch also removes similar "later" version check in libplasma.
Author: Modestas Vainius <modestas@vainius.eu>
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=585792
Forwarded: not-needed
Origin: vendor
Last-Update: 2010-06-22

--- a/kdecore/util/kpluginloader.cpp
+++ b/kdecore/util/kpluginloader.cpp
@@ -242,7 +242,6 @@ bool KPluginLoader::load()
     d->verificationData = (KDEPluginVerificationData *) lib.resolve("kde_plugin_verification_data");
     if (d->verificationData) {
         if (d->verificationData->dataVersion < KDEPluginVerificationData::PluginVerificationDataVersion
-            || (d->verificationData->KDEVersion > KDE_VERSION)
             || (KDE_VERSION_MAJOR << 16 != (d->verificationData->KDEVersion & 0xFF0000)))
         {
             d->errorString = i18n("The plugin '%1' uses an incompatible KDE library (%2).", d->name, d->verificationData->KDEVersionString);
--- a/plasma/version.cpp
+++ b/plasma/version.cpp
@@ -52,12 +52,11 @@ bool isPluginVersionCompatible(unsigned
 {
     // we require PLASMA_VERSION_MAJOR and PLASMA_VERSION_MINOR
     const quint32 minVersion = PLASMA_MAKE_VERSION(PLASMA_VERSION_MAJOR, 0, 0);
-    const quint32 maxVersion = PLASMA_MAKE_VERSION(PLASMA_VERSION_MAJOR, PLASMA_VERSION_MINOR, 60);
 
-    if (version < minVersion || version > maxVersion) {
+    if (version < minVersion) {
         kDebug() << "plugin is compiled against incompatible Plasma version  " << version
                  << "This build is compatible with" << PLASMA_VERSION_MAJOR << ".0.0 (" << minVersion
-                 << ") to" << PLASMA_VERSION_STRING << "(" << maxVersion << ")";
+                 << ")";
         return false;
     }