Package: kde4libs / 4:4.14.2-5+deb8u2

Metadata

Package Version Patches format
kde4libs 4:4.14.2-5+deb8u2 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
kconf_update_migrate_from_kde3_icon_theme.diff | (download)

kdeui/CMakeLists.txt | 10 10 + 0 - 0 !
kdeui/icons/kconf_update_migrate_from_kde3_icon_theme.cpp | 157 157 + 0 - 0 !
kdeui/kdeui.upd | 6 6 + 0 - 0 !
3 files changed, 173 insertions(+)

 migrate from crystalsvg and similar kde 4 incompatible icon themes
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=588374
add_debian_build_type.diff | (download)

cmake/modules/FindKDE4Internal.cmake | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

---
disable_usr_lib_install_rpath.diff | (download)

kdewidgets/CMakeLists.txt | 4 0 + 4 - 0 !
1 file changed, 4 deletions(-)

 don't set the install rpath to lib_install_dir
 don't set the install RPATH to LIB_INSTALL_DIR if LIB_INSTALL_DIR is one of
 the standard system link directories, like e.g. /usr/lib (which are listed in
 CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES, which is set in
 Modules/Platform/UnixPaths.cmake).
 .
 Also drop custom INSTALL_RPATHs in kdewidgets/CMakeLists.txt.
make_libkdeinit4_private.diff | (download)

CreateKDELibsDependenciesFile.cmake | 2 2 + 0 - 0 !
cmake/modules/FindKDE4Internal.cmake | 5 5 + 0 - 0 !
cmake/modules/KDE4Macros.cmake | 11 11 + 0 - 0 !
config-prefix.h.cmake | 1 1 + 0 - 0 !
kdecore/kde-config.cpp | 1 1 + 0 - 0 !
kdecore/kernel/kstandarddirs.cpp | 6 5 + 1 - 0 !
kdecore/kernel/kstandarddirs_unix.cpp | 2 2 + 0 - 0 !
kdecore/kernel/kstandarddirs_win.cpp | 2 2 + 0 - 0 !
kdecore/util/kpluginloader.cpp | 7 7 + 0 - 0 !
kinit/CMakeLists.txt | 11 11 + 0 - 0 !
kinit/kinit.cpp | 20 16 + 4 - 0 !
11 files changed, 63 insertions(+), 5 deletions(-)

 framework for making libkdeinit4_*.so "private"
default_kde4_xdg_menu_prefix.diff | (download)

kded/CMakeLists.txt | 2 1 + 1 - 0 !
kded/vfolder_menu.cpp | 7 4 + 3 - 0 !
2 files changed, 5 insertions(+), 4 deletions(-)

---
qt4_designer_plugins_path.diff | (download)

kdewidgets/CMakeLists.txt | 8 4 + 4 - 0 !
1 file changed, 4 insertions(+), 4 deletions(-)

---
hardcode_ptm_device.diff | (download)

ConfigureChecks.cmake | 8 1 + 7 - 0 !
1 file changed, 1 insertion(+), 7 deletions(-)

---
kfreebsd_support.diff | (download)

ConfigureChecks.cmake | 6 3 + 3 - 0 !
cmake/modules/FindKDE4Internal.cmake | 8 4 + 4 - 0 !
kio/kfile/kpropertiesdialog.cpp | 10 9 + 1 - 0 !
kioslave/file/file.cpp | 2 2 + 0 - 0 !
kioslave/file/file_unix.cpp | 4 4 + 0 - 0 !
kpty/kpty.cpp | 24 12 + 12 - 0 !
6 files changed, 34 insertions(+), 20 deletions(-)

---
debian_menu.diff | (download)

kded/applications.menu | 7 7 + 0 - 0 !
1 file changed, 7 insertions(+)

---
findservicebydesktoppath_try_realfilepath.diff | (download)

kdecore/services/kservicefactory.cpp | 31 23 + 8 - 0 !
kdecore/services/kservicefactory.h | 2 2 + 0 - 0 !
2 files changed, 25 insertions(+), 8 deletions(-)

---
findqt4_optional_x11_pthread.diff | (download)

cmake/modules/Qt4ConfigDependentSettings.cmake | 3 1 + 2 - 0 !
1 file changed, 1 insertion(+), 2 deletions(-)

---
use_dejavu_as_default_font.diff | (download)

kdeui/kernel/kglobalsettings.cpp | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

---
hack_in_etc_kde4_in_kstandarddirs.diff | (download)

kdecore/kernel/kstandarddirs.cpp | 4 4 + 0 - 0 !
1 file changed, 4 insertions(+)

---
ld_exclude_libs_qtuitools.diff | (download)

kjsembed/kjsembed/CMakeLists.txt | 3 2 + 1 - 0 !
plasma/CMakeLists.txt | 3 3 + 0 - 0 !
2 files changed, 5 insertions(+), 1 deletion(-)

 exclude qtuitools symbols from public libraries
 Currently, libplasma and libkjsembed are affected.
konsole_kfreebsd_fix.diff | (download)

kpty/kptydevice.cpp | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

---
hurd_support.diff | (download)

cmake/modules/FindKDE4Internal.cmake | 4 2 + 2 - 0 !
kdecore/kernel/kstandarddirs.cpp | 4 4 + 0 - 0 !
kinit/lnusertemp.c | 4 4 + 0 - 0 !
3 files changed, 10 insertions(+), 2 deletions(-)

 preliminary gnu/hurd support
 Adds "support" for GNU/Hurd by defining MAXPATHLEN and PATH_MAX where needed.
 Not forwarded, better fixes should be done upstream.
 Also disable the fatal warnings for the linker, as we might hit symbols
 which are not implemented and will always fail.
kfileshare_kdesu_fileshareset.diff | (download)

kio/kio/kfileshare.cpp | 6 4 + 2 - 0 !
1 file changed, 4 insertions(+), 2 deletions(-)

 run libexec/fileshareset with kdesu rather than setuid
 Run fileshareset with kdesu rather than rely on it to be setuid. filesharelist
 should not need root permissions on standard debian install.
relax_plugin_kde_version_check.diff | (download)

kdecore/util/kpluginloader.cpp | 1 0 + 1 - 0 !
plasma/version.cpp | 5 2 + 3 - 0 !
2 files changed, 2 insertions(+), 4 deletions(-)

 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.
add_dlrestrictions_support.diff | (download)

cmake/modules/KDE4Macros.cmake | 11 11 + 0 - 0 !
kdecore/CMakeLists.txt | 8 8 + 0 - 0 !
kdecore/util/kpluginloader.cpp | 32 32 + 0 - 0 !
3 files changed, 51 insertions(+)

 add dlrestrictions support
ktar_header_checksum_fix.diff | (download)

kdecore/io/ktar.cpp | 55 36 + 19 - 0 !
1 file changed, 36 insertions(+), 19 deletions(-)

 use unsigned arithmetic when calculating tar header checksum
ktar_longlink_length_in_bytes.diff | (download)

kdecore/io/ktar.cpp | 8 4 + 4 - 0 !
1 file changed, 4 insertions(+), 4 deletions(-)

 fix longlink utf-8 support in ktar
Bug: http://bugs.kde.org/show_bug.cgi?id=266141
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=612675
glibc_filesystem.diff | (download)

kdecore/io/kfilesystemtype_p.cpp | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 correct determinefilesystemtypeimpl() for any glibc-based system
 Fixes compilation on GNU/kFreeBSD, which has no determineFileSystemTypeImpl()
 being recognized by default.
kfreebsd_getmntent.diff | (download)

kdecore/io/kmountpoint.cpp | 5 5 + 0 - 0 !
solid/solid/backends/fstab/fstabhandling.cpp | 5 5 + 0 - 0 !
2 files changed, 10 insertions(+)

 on gnu/kfreebsd, force the use of the setmntent/getmntent api.
 Due to the misdetection of sys/mount.h on kFreeBSD (due to Debian #704598),
 the getmntinfo API seems not be usable. Hence, force te use of
 setmntent/getmntent.
 This is kind of hack, so should not be forwarded for now.
kfreebsd_acl.diff | (download)

kio/kfile/kpropertiesdialog.cpp | 11 10 + 1 - 0 !
1 file changed, 10 insertions(+), 1 deletion(-)

---
cmake_compatibility.diff | (download)

cmake/modules/CMakeLists.txt | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

---
kde4libs_interpret_qvarianttype_as_qmetatypetype.diff | (download)

kdecore/config/kconfiggroup.cpp | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

---
debian_standardsdirtest.diff | (download)

kdecore/tests/kstandarddirstest.cpp | 12 6 + 6 - 0 !
1 file changed, 6 insertions(+), 6 deletions(-)

---
disable_bogus_test.diff | (download)

kdecore/tests/kmimetype_nomimetypes.cpp | 11 6 + 5 - 0 !
1 file changed, 6 insertions(+), 5 deletions(-)

---
disable_bogus_tests | (download)

kio/tests/kdirmodeltest.cpp | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

---
fix_solidlex_destroy_signature.patch | (download)

solid/solid/predicate_parser.y | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

---
allow_cancel_ssl.diff | (download)

kio/kio/tcpslavebase.cpp | 52 29 + 23 - 0 !
1 file changed, 29 insertions(+), 23 deletions(-)

---
KRecursiveFilterProxyModel Fixed the model.diff | (download)

kdeui/itemviews/krecursivefilterproxymodel.cpp | 17 5 + 12 - 0 !
kdeui/tests/CMakeLists.txt | 1 1 + 0 - 0 !
kdeui/tests/krecursivefilterproxymodeltest.cpp | 221 221 + 0 - 0 !
3 files changed, 227 insertions(+), 12 deletions(-)

 [patch] krecursivefilterproxymodel: fixed the model

The model was not working properly and didn't include all items under
some circumstances.
This patch fixes the following scenarios in particular:

* The change in sourceDataChanged is required to fix the shortcut condition.
The idea is that if the parent is already part of the model (it must be if acceptRow returns true),
we can directly invoke dataChanged on the parent, resulting in the changed index
getting reevaluated. However, because the recursive filterAcceptsRow version was used
the shortcut was also used when only the current index matches the filter and
the parent index is in fact not yet in the model. In this case we failed to call
dataChanged on the right index and thus the complete branch was never added to the model.

* The change in refreshAscendantMapping is required to include indexes that were
included by descendants. The intended way how this was supposed to work is that we
traverse the tree upwards and find the last index that is not yet part of the model.
We would then call dataChanged on that index causing it and its descendants to get reevaluated.
However, acceptRow does not reflect wether an index is already in the model or not.
Consider the following model:

- A
  - B
    - C
    - D


If C is include in the model by default but D not and A & B only gets included due to C, we have the following model:
- A
  - B
    - C
    - D

If we then call refreshAscendantsMapping on D it will not consider B as already being part of the model.
This results in the toplevel index A being considered lastAscendant, and a call to dataChanged on A results in
a reevaluation of A only, which is already in the model. Thus D never gets added to the model.

Unfortunately there is no way to probe QSortFilterProxyModel for indexes that are
already part of the model. Even the const mapFromSource internally creates a mapping when called,
and thus instead of revealing indexes that are not yet part of the model, it silently
creates a mapping (without issuing the relevant signals!).

As the only possible workaround we have to issues dataChanged for all ancestors
which is ignored for indexes that are not yet mapped, and results in a rowsInserted
signal for the correct indexes. It also results in superfluous dataChanged signals,
since we don't know when to stop, but at least we have a properly behaving model
this way.

CVE 2016 6232.diff | (download)

kdecore/io/karchive.cpp | 14 12 + 2 - 0 !
1 file changed, 12 insertions(+), 2 deletions(-)

 ensure extraction location to be in subfolder

Behavior change: Switch to Tar's default behavior to avoid extraction
to arbitrary system locations outside of extraction folder. Instead,
extract such files to root location in extraction folder.

REVIEW: 128185
CVE 2017 6410.diff | (download)

kio/misc/kpac/script.cpp | 11 9 + 2 - 0 !
1 file changed, 9 insertions(+), 2 deletions(-)

 [patch] sanitize urls before passing them to findproxyforurl

Remove user/password information
For https: remove path and query

Backport from kio f9d0cb47cf94e209f6171ac0e8d774e68156a6e4

CVE 2017 8422.diff | (download)

kdecore/auth/AuthBackend.cpp | 5 5 + 0 - 0 !
kdecore/auth/AuthBackend.h | 7 7 + 0 - 0 !
kdecore/auth/backends/dbus/DBusHelperProxy.cpp | 27 25 + 2 - 0 !
kdecore/auth/backends/dbus/DBusHelperProxy.h | 6 5 + 1 - 0 !
kdecore/auth/backends/policykit/PolicyKitBackend.cpp | 5 5 + 0 - 0 !
kdecore/auth/backends/policykit/PolicyKitBackend.h | 1 1 + 0 - 0 !
kdecore/auth/backends/polkit-1/Polkit1Backend.cpp | 5 5 + 0 - 0 !
kdecore/auth/backends/polkit-1/Polkit1Backend.h | 1 1 + 0 - 0 !
8 files changed, 54 insertions(+), 3 deletions(-)

 [patch] verify that whoever is calling us is actually who he says he
 is

CVE-2017-8422