Package: qt4-x11 / 4:4.8.2+dfsg-11

Metadata

Package Version Patches format
qt4-x11 4:4.8.2+dfsg-11 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 14724_close_orphaned_file_descriptors_after_printing.patch | (download)

src/gui/painting/qpdf.cpp | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 QPainter together with QPrinter leaves a lot of temporary files in
 /tmp with every printout. That is a problem for embedded devices,
 which have not such a large /tmp-partition. We are using 80 MByte as
 tmpfs, i.e. in RAM. After some printounts cups deactivates the printer
 because there is no space to copy the temporary files to /tmp.

 What happened: In QPdfBaseEnginePrivate::openPrintDevice() noone
 remembers the file descriptor opened by tempFile() which is a call to
 the cups library to cupsTempFile()

 Later in closePrintDevice the check for fd<0 fails, so no one closes
 the file descriptor. If you later remove the file, the descriptor is
 still open and cannot removed until you close the application.

 If you print 20 times and more during your application is running and
 you print out large files (complicate forms with a lot of elements
 produces files with 3-4 MByte) your temporary file can be full, but
 you don't see (with ls) files in it.

Bug: https://bugreports.qt.nokia.com/browse/QTBUG-14724
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

QElfParser fix type of sh_size.patch | (download)

src/corelib/plugin/qelfparser_p.cpp | 4 2 + 2 - 0 !
src/corelib/plugin/qelfparser_p.h | 2 1 + 1 - 0 !
2 files changed, 3 insertions(+), 3 deletions(-)

 [patch] qelfparser: fix type of sh_size

The type of the sh_size field of a section header is either Elf32_Word or Elf64_Xword,
so the type used cannot be qelfword_t (always 32 bits) but qelfoff_t.

Fix cursor truncate to include line position.patch | (download)

src/gui/text/qtextlayout.cpp | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 fix cursor truncate to include line position
 Since we could have moved the line position (QTextLine::setPosition),
 the truncating position should be adjusted with that.

disable SSL compression by default.patch | (download)

src/network/ssl/qssl.cpp | 5 3 + 2 - 0 !
src/network/ssl/qsslconfiguration.cpp | 4 3 + 1 - 0 !
src/network/ssl/qsslconfiguration_p.h | 4 3 + 1 - 0 !
3 files changed, 9 insertions(+), 4 deletions(-)

: disable ssl compression by default.
 Disable SSL compression by default since this appears to be the a likely
 cause of the currently hyped CRIME attack.
 .
 This is a backport of 5ea896fbc63593f424a7dfbb11387599c0025c74
fix_jit_crash_on_x86_64.patch | (download)

src/3rdparty/javascriptcore/JavaScriptCore/ChangeLog | 27 27 + 0 - 0 !
src/3rdparty/javascriptcore/JavaScriptCore/JavaScriptCore.pri | 1 1 + 0 - 0 !
src/3rdparty/javascriptcore/JavaScriptCore/jit/ExecutableAllocator.cpp | 21 21 + 0 - 0 !
src/3rdparty/javascriptcore/JavaScriptCore/jit/ExecutableAllocatorFixedVMPool.cpp | 31 21 + 10 - 0 !
src/3rdparty/javascriptcore/JavaScriptCore/jit/ExecutableAllocatorPosix.cpp | 29 2 + 27 - 0 !
src/3rdparty/javascriptcore/JavaScriptCore/jit/ExecutableAllocatorSymbian.cpp | 2 1 + 1 - 0 !
src/3rdparty/javascriptcore/JavaScriptCore/jit/ExecutableAllocatorWin.cpp | 2 1 + 1 - 0 !
src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h | 10 10 + 0 - 0 !
8 files changed, 84 insertions(+), 39 deletions(-)

 [patch] fix jit crash on x86-64 (avoid 32-bit branch offset
 overflow)

Cherry-picked from webkit commit
a5b3261a8c4386b4e14ce40a34c7fc933a5f7001

Task-number: QTBUG-23871
add_missing_map_noreserve.patch | (download)

src/3rdparty/javascriptcore/JavaScriptCore/jit/ExecutableAllocatorFixedVMPool.cpp | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 [patch] fix mmap usage.

Add missing MAP_NORESERVE and fix error checking.

Special thanks to Olivier JG for debugging the issue.

Task-number: QTBUG-27322
make_rules_for_redirect_stricter.patch | (download)

src/declarative/qml/qdeclarativexmlhttprequest.cpp | 8 5 + 3 - 0 !
1 file changed, 5 insertions(+), 3 deletions(-)

 [patch] make the rules for redirects a bit stricter.

SSL certificates blacklist mis issued Turktrust cert.patch | (download)

src/network/ssl/qsslcertificate.cpp | 3 3 + 0 - 0 !
tests/auto/qsslcertificate/more-certificates/blacklisted-turktrust-e-islem.kktcmerkezbankasi.org.pem | 24 24 + 0 - 0 !
tests/auto/qsslcertificate/more-certificates/blacklisted-turktrust-ego.gov.tr.pem | 31 31 + 0 - 0 !
3 files changed, 58 insertions(+)

 [patch] ssl certificates: blacklist mis-issued turktrust
 certificates

Those certificates have erroneously set the CA attribute to true,
meaning everybody in possesion of their keys can issue certificates on
their own.

backport of bf5e7fb2652669599a508e049b46ebd5cd3206e5 from qtbase

Task-number: QTBUG-28937
Fix_binary_incompatibility_between_openssl_versions.patch | (download)

src/network/ssl/qsslsocket_openssl.cpp | 2 1 + 1 - 0 !
src/network/ssl/qsslsocket_openssl_symbols.cpp | 8 8 + 0 - 0 !
src/network/ssl/qsslsocket_openssl_symbols_p.h | 4 4 + 0 - 0 !
3 files changed, 13 insertions(+), 1 deletion(-)

 [patch] fix binary incompatibility between openssl versions

OpenSSL changed the layout of X509_STORE_CTX between 0.9 and 1.0
So we have to consider this struct as private implementation, and use
the access functions instead.

change_all_shmget_calls_to_use_user only_memory.patch | (download)

src/corelib/kernel/qsharedmemory_unix.cpp | 6 3 + 3 - 0 !
src/corelib/kernel/qsystemsemaphore_unix.cpp | 4 2 + 2 - 0 !
src/gui/image/qnativeimage.cpp | 2 1 + 1 - 0 !
src/gui/image/qpixmap_x11.cpp | 2 1 + 1 - 0 !
src/plugins/platforms/xcb/qxcbwindowsurface.cpp | 2 1 + 1 - 0 !
src/plugins/platforms/xlib/qxlibwindowsurface.cpp | 2 1 + 1 - 0 !
tools/qvfb/qvfbshmem.cpp | 4 2 + 2 - 0 !
7 files changed, 11 insertions(+), 11 deletions(-)

 [patch] change all shmget calls to user-only memory
 Drop the read and write permissions for group and other users in the
 system.
 .
 The tests/auto/qtipc/qsharedmemory/tst_qsharedmemory.cpp does
 not exists in the current Debian tarball, so we removed it.

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

config.tests/unix/compile.test | 2 1 + 1 - 0 !
config.tests/unix/doubleformat.test | 2 1 + 1 - 0 !
config.tests/unix/endian.test | 2 1 + 1 - 0 !
config.tests/unix/ptrsize.test | 2 1 + 1 - 0 !
config.tests/x11/notype.test | 2 1 + 1 - 0 !
configure | 12 6 + 6 - 0 !
demos/qtdemo/menumanager.cpp | 2 1 + 1 - 0 !
mkspecs/common/linux.conf | 4 2 + 2 - 0 !
mkspecs/features/moc.prf | 2 1 + 1 - 0 !
mkspecs/features/uic.prf | 2 1 + 1 - 0 !
mkspecs/hurd-g++/qmake.conf | 4 2 + 2 - 0 !
projects.pro | 2 1 + 1 - 0 !
qmake/Makefile.unix | 8 4 + 4 - 0 !
src/tools/moc/moc.pro | 2 1 + 1 - 0 !
src/tools/uic/uic.pro | 2 1 + 1 - 0 !
tools/assistant/tools/assistant/assistant.pro | 2 1 + 1 - 0 !
tools/designer/src/designer/assistantclient.cpp | 2 1 + 1 - 0 !
tools/designer/src/designer/designer.pro | 2 1 + 1 - 0 !
tools/designer/src/lib/shared/qdesigner_utils.cpp | 2 1 + 1 - 0 !
tools/linguist/linguist/linguist.pro | 2 1 + 1 - 0 !
tools/linguist/lrelease/lrelease.pro | 2 1 + 1 - 0 !
tools/linguist/lupdate/lupdate.pro | 2 1 + 1 - 0 !
tools/qdbus/qdbuscpp2xml/qdbuscpp2xml.cpp | 2 1 + 1 - 0 !
tools/qtconfig/qtconfig.pro | 2 1 + 1 - 0 !
translations/translations.pro | 6 3 + 3 - 0 !
25 files changed, 37 insertions(+), 37 deletions(-)

 append a -qt4 suffix to some tools.
 To allow co-installation of the development tools of Qt4 with the Qt3 ones,
 we append a -qt4 suffix to the executable names of some development tools:
 assistant, designer, linguist, lrelease, lupdate, moc, qmake, qtconfig, uic.
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 | 45 44 + 1 - 0 !
1 file changed, 44 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)
CVE 2011 3922.patch | (download)

src/3rdparty/harfbuzz/src/harfbuzz-myanmar.c | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 stack-buffer-overflow in glyph handling.
 Credit to Google Chrome Security Team (Cris Neckar).


qt_atomic_sparc64.patch | (download)

src/corelib/arch/qatomic_sparc.h | 18 10 + 8 - 0 !
1 file changed, 10 insertions(+), 8 deletions(-)

 fix atomic support on sparc64
Bug: https://bugreports.qt-project.org/browse/QTBUG-22479
Bug-Debian: http://bugs.debian.org/647265


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.
fix_use_after_free_qlocale_unix.patch | (download)

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

 fix use after free in qlocale_unix.cpp
 This patch avoids the use of the returned variable when the destructor
 gets called.
 .
 Lisandro: this patch will certainly work within all architectures
 that Debian supports, although I don't know if it will work in QNX.