Package: qt4-x11 / 4:4.8.7+dfsg-17

Metadata

Package Version Patches format
qt4-x11 4:4.8.7+dfsg-17 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
Add_support_for_QT_USE_DRAG_DISTANCE_env_var.patch | (download)

src/gui/kernel/qapplication.cpp | 5 5 + 0 - 0 !
1 file changed, 5 insertions(+)

 support reading of default value for startdragdistance property
from QT_USE_DRAG_DISTANCE environment variable.
See also http://bugreports.qt.nokia.com/browse/QTBUG-12594
QTBUG 21900_Buttons_in_Qt_applications_not_clickable_when_run_under_gnome shell.patch | (download)

src/gui/kernel/qapplication_x11.cpp | 47 41 + 6 - 0 !
1 file changed, 41 insertions(+), 6 deletions(-)

 [patch] fix logic for figuring out what configurenotify positions can be trusted

When reading ahead in the queue for ConfigureNotify events, it's necessary
to look for intermediate ReparentNotify events as well, since they will
determine whether the position in the event can be trusted or not.

Bug: https://bugreports.qt.nokia.com/browse/QTBUG-21900

dont_crash_on_broken_gif_images.patch | (download)

src/gui/image/qgifhandler.cpp | 7 7 + 0 - 0 !
1 file changed, 7 insertions(+)

 [patch] don't crash on broken gif images

Broken GIF images could set invalid width and height
values inside the image, leading to Qt creating a null
QImage for it. In that case we need to abort decoding
the image and return an error.

Initial patch by Rich Moore.

Backport of Id82a4036f478bd6e49c402d6598f57e7e5bb5e1e from Qt 5

Task-number: QTBUG-38367
xmlpatterns_stack_overflow_fix.diff | (download)

src/xmlpatterns/iterators/qitemmappingiterator_p.h | 32 18 + 14 - 0 !
1 file changed, 18 insertions(+), 14 deletions(-)

---
Better handling of invalid font tables.patch | (download)

src/gui/text/qfontengine.cpp | 212 161 + 51 - 0 !
src/gui/text/qfontengine_mac.mm | 11 5 + 6 - 0 !
src/gui/text/qfontengine_mac_p.h | 1 1 + 0 - 0 !
src/gui/text/qfontengine_p.h | 2 1 + 1 - 0 !
src/gui/text/qfontengine_qpa.cpp | 12 6 + 6 - 0 !
src/gui/text/qfontengine_qpf.cpp | 12 6 + 6 - 0 !
src/gui/text/qfontengine_s60.cpp | 9 5 + 4 - 0 !
src/gui/text/qfontengine_s60_p.h | 1 1 + 0 - 0 !
src/gui/text/qfontengine_win.cpp | 22 11 + 11 - 0 !
src/gui/text/qfontengine_win_p.h | 1 1 + 0 - 0 !
10 files changed, 198 insertions(+), 85 deletions(-)

 [patch] better handling of invalid font tables

Specifically when reading files with broken cmap tables, we could
get some undeterministic results. We handle this more gracefully
by verifying that the offsets are sane and bailing out early if not.
This replaces the current pattern throughout the font engine for
consistency.

This is a back-port of 4a1e5dbade4bab55f39bd368480dcca9a11e4b38
from Qt 5.

aarch64_arm64_qatomic_support.patch | (download)

src/corelib/arch/aarch64/arch.pri | 4 4 + 0 - 0 !
src/corelib/arch/aarch64/qatomic_aarch64.cpp | 70 70 + 0 - 0 !
src/corelib/arch/arch.pri | 4 3 + 1 - 0 !
src/corelib/arch/qatomic_aarch64.h | 335 335 + 0 - 0 !
src/corelib/arch/qatomic_arch.h | 2 2 + 0 - 0 !
5 files changed, 414 insertions(+), 1 deletion(-)

 [patch] add qatomic support for aarch64 (aka arm64).

Patch by Mark Salter <msalter@redhat.com>
licensed under BSD:

<https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=735488#195>

This patch is known to not be the most correct way
to implement them, as it seems to be possible to do it in a faster way,
but should work non the less until we can provide something better.

plugin_system_for_systemtray.patch | (download)

examples/desktop/systray/window.cpp | 40 40 + 0 - 0 !
examples/desktop/systray/window.h | 6 6 + 0 - 0 !
src/gui/util/qabstractsystemtrayiconsys.cpp | 65 65 + 0 - 0 !
src/gui/util/qabstractsystemtrayiconsys_p.h | 106 106 + 0 - 0 !
src/gui/util/qsystemtrayicon.cpp | 6 0 + 6 - 0 !
src/gui/util/qsystemtrayicon_p.h | 85 38 + 47 - 0 !
src/gui/util/qsystemtrayicon_x11.cpp | 356 82 + 274 - 0 !
src/gui/util/qxembedsystemtrayicon_x11.cpp | 469 469 + 0 - 0 !
src/gui/util/qxembedsystemtrayicon_x11_p.h | 104 104 + 0 - 0 !
src/gui/util/util.pri | 7 6 + 1 - 0 !
10 files changed, 916 insertions(+), 328 deletions(-)

 introduce a plugin system for qsystemtrayicon.
 Designed to be used with sni-qt (https://launchpad.net/sni-qt)
replace_timestamps_with_fixed_date_in_qhelpgenerator.patch | (download)

tools/assistant/lib/qhelpgenerator.cpp | 4 1 + 3 - 0 !
tools/assistant/tools/qcollectiongenerator/main.cpp | 2 1 + 1 - 0 !
tools/assistant/tools/shared/collectionconfiguration.cpp | 2 1 + 1 - 0 !
3 files changed, 3 insertions(+), 5 deletions(-)

 replace timestamps from qhelpgenerator by a fixed date 
 In order to make qhelpgenerator output reproducible, we need a way to get
 deterministic embedded timestaps.  Backport the patch from qttools5 [1] to
 make qch files reproducible by replacing the current time by a fixed date.  

 [1] https://codereview.qt-project.org/#/c/106296/
0195 compositing properties.diff | (download)

src/gui/kernel/qwidget_x11.cpp | 21 15 + 6 - 0 !
1 file changed, 15 insertions(+), 6 deletions(-)

 [patch 02/16] this patch makes override-redirect windows (popup menu, dropdown menu,
 tooltip, combobox, etc.) also have more window properties like WM_CLASS,
 so they can be used when compositing.

qt-bugs@ issue : none
bugs.kde.org number : none

0225 invalidate tabbar geometry on refresh.patch | (download)

src/gui/widgets/qtabbar.cpp | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 [patch 05/16] when tabs are inserted or removed in a qtabbar,
 QTabBarPrivate::refresh() is called to update the layout.  If the
 tabbar widget is hidden, this just sets a boolean variable
 (layoutDirty) and returns, so the parent widget's layout is not
 notified about the possible geometry change.

Prior to Qt 4.4 this was not a problem because the geometry was
recalculated in QTabBar::sizeHint() if the layoutDirty variable was
set.  In Qt 4.4 however the layout caches size hint information in
QWidgetItemV2.  Since the cache information is not invalidated, the
layout may end up using out-of-date size hint information to compute
the widget size.

If the QTabBar is empty when QTabBar::sizeHint() is called, it will
return a size with a height of 0, which will be kept in the cache and
so the tab bar will never be shown.

This patch fixes the problem by calling updateGeometry() whenever the
tab bar's layout is refreshed.

qt-bugs@ issue : 208185
Trolltech task ID : 208349
bugs.kde.org number : 159014

qtdebug_syslog.patch | (download)

src/corelib/global/qglobal.cpp | 24 24 + 0 - 0 !
src/corelib/kernel/qcoreapplication_p.h | 2 2 + 0 - 0 !
2 files changed, 26 insertions(+)

 send q_assert, qdebug, qwarning and qfatal messages to syslog
buildable_appchooser_states_demos.patch | (download)

examples/animation/appchooser/appchooser.pro | 3 2 + 1 - 0 !
examples/animation/states/states.pro | 4 3 + 1 - 0 !
2 files changed, 5 insertions(+), 2 deletions(-)

 make states and appchooser demos buildable
Bug-Debian: http://bugs.debian.org/616500
02_syncqt_sane_timestamp_for_nonexisting_headers.diff | (download)

bin/syncqt | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 set sane timestamps when generating header symlinks for non-existing headers
07_trust_dpkg arch_over_uname m.diff | (download)

configure | 48 47 + 1 - 0 !
1 file changed, 47 insertions(+), 1 deletion(-)

---
08_configure_quilt_compat.diff | (download)

configure | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

---
10_config_tests_fixes.diff | (download)

config.tests/unix/gstreamer/gstreamer.pro | 1 1 + 0 - 0 !
config.tests/unix/ibase/ibase.pro | 2 1 + 1 - 0 !
config.tests/unix/sqlite/sqlite.pro | 1 1 + 0 - 0 !
src/sql/drivers/ibase/qsql_ibase.pri | 2 1 + 1 - 0 !
4 files changed, 4 insertions(+), 2 deletions(-)

 various config.test fixes.
             Build ibase sql plugin against firebird.
             Add gstreamer include path.
11_build_translations.diff | (download)

tools/assistant/translations/qt_help.pro | 53 53 + 0 - 0 !
tools/assistant/translations/translations.pro | 54 54 + 0 - 0 !
tools/designer/translations/translations.pro | 141 141 + 0 - 0 !
3 files changed, 248 insertions(+)

---
12_add_nostrip_for_debug_packages.diff | (download)

configure | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

---
15_fix_qmake_makefile_generation.diff | (download)

qmake/generators/makefile.cpp | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 fix qmake makefile generation - should not add double slashes to makefiles.
16_hide_std_symbols_on_qtwebkit.diff | (download)

src/3rdparty/webkit/Source/WebKit.pri | 2 2 + 0 - 0 !
src/3rdparty/webkit/Source/symbols.filter | 5 5 + 0 - 0 !
2 files changed, 7 insertions(+)

 don't make the std:: symbols in webkit public.
Solution based on the work of Mike Hommey in the gtk webkit package.
18_enable_qt3support_qtwebkit_debug_info.diff | (download)

src/3rdparty/webkit/Source/JavaScriptCore/JavaScriptCore.pro | 2 0 + 2 - 0 !
src/3rdparty/webkit/Source/WebCore/WebCore.pri | 2 0 + 2 - 0 !
src/qt3support/qt3support.pro | 3 0 + 3 - 0 !
3 files changed, 7 deletions(-)

---
20_install_qvfb.diff | (download)

tools/tools.pro | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 build qvfb tool
23_permit_plugins_built_with_future_qt.diff | (download)

src/corelib/plugin/qlibrary.cpp | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 permit loading plugins built with future major qt releases (4.x)
30_webkit_unaligned_access.diff | (download)

src/3rdparty/webkit/Source/JavaScriptCore/wtf/ListHashSet.h | 9 3 + 6 - 0 !
1 file changed, 3 insertions(+), 6 deletions(-)

 fixed some alignment problems on sparc
X-Git-Tag: debian/1.0.1-1~7
40_alpha_ice.diff | (download)

src/corelib/global/qlibraryinfo.cpp | 14 8 + 6 - 0 !
src/corelib/tools/qhash.h | 2 1 + 1 - 0 !
2 files changed, 9 insertions(+), 7 deletions(-)

 workaround for -fvisibility-inlines-hidden on alpha:
             break out the static methods so they're not inlined.
             fix FTBFS on alpha.
Bug-Debian: http://bugs.debian.org/368883
41_disable_opengl_visibility.diff | (download)

src/opengl/opengl.pro | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

---
50_kfreebsd_Q_OS.diff | (download)

src/corelib/global/qglobal.h | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 fixes ftbfs on gnu/kfreebsd by creating new q_os_freebsd_kernel.
51_kfreebsd_strnstr_build_fix.diff | (download)

src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h | 2 1 + 1 - 0 !
src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h | 2 1 + 1 - 0 !
2 files changed, 2 insertions(+), 2 deletions(-)

 fix ftbfs on gnu/kfreebsd caused by missing strnstr() on glibc systems.
70_hppa_ldcw_fix.diff | (download)

src/corelib/arch/parisc/q_ldcw.s | 14 2 + 12 - 0 !
1 file changed, 2 insertions(+), 12 deletions(-)

---
71_hppa_unaligned_access_fix_458133.diff | (download)

src/3rdparty/sha1/sha1.cpp | 8 4 + 4 - 0 !
1 file changed, 4 insertions(+), 4 deletions(-)

---
80_hurd_max_path.diff | (download)

src/3rdparty/clucene/src/CLucene/config/compiler.h | 4 4 + 0 - 0 !
1 file changed, 4 insertions(+)

 path_max fix
 Fix a POSIX incompatibility (as programs should not rely on having PATH_MAX
 defined on all systems) and causes FTBFS on Hurd.


92_armel_gcc43_valist_compat.diff | (download)

src/corelib/tools/qstring.cpp | 5 5 + 0 - 0 !
src/corelib/tools/qvsnprintf.cpp | 6 6 + 0 - 0 !
2 files changed, 11 insertions(+)

 restore qtcore abi compatibility with binaries built with g++ 4.3 on armel
 Once Qt is rebuilt with g++ 4.4, it becomes ABI incompatible with binaries
 built with g++ 4.3 on armel. That's because g++ 4.4 mangles va_list
94_armv6_uname_entry.diff | (download)

configure | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 add armv6 uname entry for armhf

96_webkit_no_gc_sections.diff | (download)

src/3rdparty/webkit/Source/WebCore/WebCore.pri | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 don't link qtwebkit with --gc-sections on powerpc and s390
 This works around a binutils bug that results in a segfault on powerpc,
 an internal link error on s390, and OOM condition on mipsel.
99_hppa_bug561203_decrease_failure_rate.diff | (download)

src/corelib/io/qprocess_unix.cpp | 10 10 + 0 - 0 !
1 file changed, 10 insertions(+)

 decrease failure rate of qprocess (#561203) on hppa ~100+ times
 The patch adds a usleep() of 1000 before fork() in QProcess on hppa. This hack
 seems to bring down likelihood of failure caused by #561203 from ~ 1/6 to
~1/1000 when run in a row. Hopefully, this will make failures rare enough
 not to cause FTBFSes.
 Degradation in performance should not be very significant and is acceptable.
powerpcspe.diff | (download)

configure | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 identify powerpcspe as powerpc.
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=623185
sh.diff | (download)

configure | 6 6 + 0 - 0 !
1 file changed, 6 insertions(+)

 identify superh correctly.
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=623281
kfreebsd_monotonic_clock.diff | (download)

config.tests/unix/clock-gettime/clock-gettime.pri | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 fix monotonic clock detection on kfreebsd
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=624679
powerpc_designer_gstabs.diff | (download)

tools/designer/src/components/signalsloteditor/signalsloteditor.pri | 7 7 + 0 - 0 !
1 file changed, 7 insertions(+)

 workaround ftbfs on powerpc/gcc 4.6 in signalsloteditor
qt multiarch plugin path compat.diff | (download)

src/corelib/kernel/qcoreapplication.cpp | 17 17 + 0 - 0 !
src/declarative/qml/qdeclarativeimport.cpp | 16 16 + 0 - 0 !
2 files changed, 33 insertions(+)

 include legacy pre-multiarch plugin paths
 A full multiarch system requires an architecture-qualified plugin path for
 Qt, but installed systems may still have plugins (e.g., from other
 distribution packages) in another pre-multiarch directory.  When constructing
 the plugin path, include both the configured plugin path and a plugin path
 with the architecture triplet stripped out.
 .
 This applies to the general plugin loading system, and to the QML one.
s390x_jscore.diff | (download)

src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h | 14 13 + 1 - 0 !
1 file changed, 13 insertions(+), 1 deletion(-)

 add support for s390/s390x architectures
add_missing_method_for_QBasicAtomicPointer_on_s390.patch | (download)

src/corelib/arch/qatomic_s390.h | 10 10 + 0 - 0 !
1 file changed, 10 insertions(+)

 add missing method for qbasicatomicpointer on s390(x)
no_libicu_message.diff | (download)

src/corelib/tools/qlocale_icu.cpp | 4 4 + 0 - 0 !
1 file changed, 4 insertions(+)

 disable the warnings about not being able to dlopen icu libraries.
 Most of the applications don't need ICU-based functions for locale-aware
 string upper- and lower-casing and comparison. If not present, Qt will use the
 own ways (i.e. those used also in Qt < 4.8).
QTBUG 25324_assistant_segfault_on_start_with_gcc_4.7.patch | (download)

tools/assistant/tools/assistant/mainwindow.cpp | 3 1 + 2 - 0 !
1 file changed, 1 insertion(+), 2 deletions(-)

 fixes segfault on assistant's startup
 This patch calls the static method QApplication::allWidgets()
 intead of storing them first.
qt everywhere opensource src 4.8.5 QTBUG 22829.patch | (download)

src/tools/moc/main.cpp | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 fix moc in 4.x tripping over boost
qtdoc build offline docs.patch | (download)

doc/doc.pri | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 build html documentation suited for offline usage

Currently, the generated documentation includes a search box which relies on an
external search service, and which does not work for local usage. Therefore, the
generated search box does not work and confuses users, so it is best to build
the documentation in offline format which does not include the search box, but
does also not confuse users.

remove_addsense.patch | (download)

examples/webkit/webkit-guide/_index.html | 10 0 + 10 - 0 !
1 file changed, 10 deletions(-)

 remove commented out addsense script from static webpage
 Even if the script is commented out and so not functional lintian
 would find it and complain.
 I could also override lintian, but some people might not find that enough.
parisc atomic.patch | (download)

src/corelib/arch/parisc/arch.pri | 2 0 + 2 - 0 !
src/corelib/arch/qatomic_parisc.h | 71 8 + 63 - 0 !
src/corelib/thread/qatomic.h | 12 0 + 12 - 0 !
src/corelib/thread/qbasicatomic.h | 16 1 + 15 - 0 !
4 files changed, 9 insertions(+), 92 deletions(-)

 revise parisc atomic support to use gcc atomic builtins
  The current atomic support for PARISC uses a four word object
  to dynamically address the alignment requirements of the ldcw
  instruction.  Unfortunately, the current implementation breaks
  the smokeqt package build <http://bugs.debian.org/708200>.
  This change uses the GCC atomic builtin support available on
  linux for qt4-x11 atomic operations.  It is derived from the
  AVR32 implementation.  This allows atomic operations on integer
  objects. 
QtScript_x32_config.diff | (download)

src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h | 4 4 + 0 - 0 !
1 file changed, 4 insertions(+)

---