* Wed Dec 08 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> 4.7.1-5

- make the Assistant QtWebKit dependency removal (#660287) F15+ only for now
- fix QTextCursor crash in Lokalize and Psi (QTBUG-15857, kde#249373, #660028)
- add some more NULL checks to the glib_eventloop_nullcheck patch (#622164)
This commit is contained in:
Kevin Kofler 2010-12-08 22:58:25 +01:00
parent 8be6ad84de
commit 7497f5d973
4 changed files with 82 additions and 11 deletions

View File

@ -1,7 +1,7 @@
diff -up qt-everywhere-opensource-src-4.6.3/src/gui/kernel/qguieventdispatcher_glib.cpp.glib_eventloop_nullcheck qt-everywhere-opensource-src-4.6.3/src/gui/kernel/qguieventdispatcher_glib.cpp
--- qt-everywhere-opensource-src-4.6.3/src/gui/kernel/qguieventdispatcher_glib.cpp.glib_eventloop_nullcheck 2010-06-01 21:03:15.000000000 -0500
+++ qt-everywhere-opensource-src-4.6.3/src/gui/kernel/qguieventdispatcher_glib.cpp 2010-06-29 14:58:12.299073784 -0500
@@ -76,7 +76,7 @@ static gboolean x11EventSourcePrepare(GS
diff -ur qt-everywhere-opensource-src-4.6.3/src/gui/kernel/qguieventdispatcher_glib.cpp qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck/src/gui/kernel/qguieventdispatcher_glib.cpp
--- qt-everywhere-opensource-src-4.6.3/src/gui/kernel/qguieventdispatcher_glib.cpp 2010-06-02 04:03:15.000000000 +0200
+++ qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck/src/gui/kernel/qguieventdispatcher_glib.cpp 2010-12-08 22:22:38.000000000 +0100
@@ -76,7 +76,7 @@
GX11EventSource *source = reinterpret_cast<GX11EventSource *>(s);
return (XEventsQueued(X11->display, QueuedAfterFlush)
|| (!(source->flags & QEventLoop::ExcludeUserInputEvents)
@ -10,7 +10,7 @@ diff -up qt-everywhere-opensource-src-4.6.3/src/gui/kernel/qguieventdispatcher_g
}
static gboolean x11EventSourceCheck(GSource *s)
@@ -84,7 +84,7 @@ static gboolean x11EventSourceCheck(GSou
@@ -84,7 +84,7 @@
GX11EventSource *source = reinterpret_cast<GX11EventSource *>(s);
return (XEventsQueued(X11->display, QueuedAfterFlush)
|| (!(source->flags & QEventLoop::ExcludeUserInputEvents)
@ -19,3 +19,51 @@ diff -up qt-everywhere-opensource-src-4.6.3/src/gui/kernel/qguieventdispatcher_g
}
static gboolean x11EventSourceDispatch(GSource *s, GSourceFunc callback, gpointer user_data)
@@ -95,7 +95,7 @@
do {
XEvent event;
if (!(source->flags & QEventLoop::ExcludeUserInputEvents)
- && !source->d->queuedUserInputEvents.isEmpty()) {
+ && source->d && !source->d->queuedUserInputEvents.isEmpty()) {
// process a pending user input event
event = source->d->queuedUserInputEvents.takeFirst();
} else if (XEventsQueued(X11->display, QueuedAlready)) {
@@ -112,7 +112,8 @@
case XKeyRelease:
case EnterNotify:
case LeaveNotify:
- source->d->queuedUserInputEvents.append(event);
+ if (source->d)
+ source->d->queuedUserInputEvents.append(event);
continue;
case ClientMessage:
@@ -127,7 +128,8 @@
break;
}
}
- source->d->queuedUserInputEvents.append(event);
+ if (source->d)
+ source->d->queuedUserInputEvents.append(event);
continue;
default:
@@ -140,7 +142,7 @@
}
// send through event filter
- if (source->q->filterEvent(&event))
+ if (source->q && source->q->filterEvent(&event))
continue;
if (qApp->x11ProcessEvent(&event) == 1)
@@ -152,7 +154,8 @@
out:
- source->d->runTimersOnceWithNormalPriority();
+ if (source->d)
+ source->d->runTimersOnceWithNormalPriority();
if (callback)
callback(user_data);

View File

@ -0,0 +1,12 @@
--- a/src/gui/text/qtextcursor.cpp
+++ b/src/gui/text/qtextcursor.cpp
@@ -363,6 +363,9 @@
bool adjustX = true;
QTextBlock blockIt = block();
+ if (!blockIt.isValid())
+ return false;
+
if (op >= QTextCursor::Left && op <= QTextCursor::WordRight
&& blockIt.textDirection() == Qt::RightToLeft) {
if (op == QTextCursor::Left)

23
qt.spec
View File

@ -18,7 +18,7 @@ Summary: Qt toolkit
Name: qt
Epoch: 1
Version: 4.7.1
Release: 4%{?dist}
Release: 5%{?dist}
# See LGPL_EXCEPTIONS.txt, LICENSE.GPL3, respectively, for exception details
License: (LGPLv2 with exceptions or GPLv3 with exceptions) and ASL 2.0 and BSD and FTL and MIT
@ -56,7 +56,7 @@ Patch19: qt-everywhere-opensource-src-4.7.0-beta2-phonon_servicesfile.patch
# workaround for gdal/grass crashers wrt glib_eventloop null deref's
Patch23: qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck.patch
# remove depenency of webkit in assistant
# remove dependency of webkit in assistant
Patch24: qt-everywhere-opensource-src-4.7.1-webkit.patch
## upstreamable bits
@ -90,7 +90,11 @@ Patch64: qt-everywhere-opensource-src-4.7.1-QTBUG-14467.patch
# upstream patches
# Reordering of Malayalam Rakar not working properly
Patch100: qt-everywhere-opensource-src-4.7.1-ml_IN-bz528303
Patch100: qt-everywhere-opensource-src-4.7.1-ml_IN-bz528303.patch
# fix QTextCursor crash in Lokalize and Psi (QTBUG-15857, kde#249373, #660028)
# http://qt.gitorious.org/qt/qt/commit/6ae84f1183e91c910ca92a55e37f8254ace805c0
Patch101: qt-everywhere-opensource-src-4.7.1-qtextcursor-crash.patch
# kde-qt git patches
Patch202: 0002-This-patch-makes-override-redirect-windows-popup-men.patch
@ -432,7 +436,9 @@ Qt libraries used for drawing widgets and OpenGL items.
#patch16 -p1 -b .kde4_plugins
%patch19 -p1 -b .phonon_servicesfile
%patch23 -p1 -b .glib_eventloop_nullcheck
%if 0%{?fedora} > 14
%patch24 -p1 -b .webkit
%endif
## TODO: still worth carrying? if so, upstream it.
%patch53 -p1 -b .qatomic-inline-asm
## TODO: upstream me
@ -448,7 +454,8 @@ Qt libraries used for drawing widgets and OpenGL items.
%patch64 -p1 -b .QTBUG-14467
# upstream patches
%patch100 -p1 -b .ml_IN-redering
%patch100 -p1 -b .ml_IN-rendering
%patch101 -p1 -b .qtextcursor-crash
# kde-qt branch
%if 0%{?kde_qt}
@ -1117,9 +1124,13 @@ fi
%changelog
* Wed Dec 08 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> 4.7.1-5
- make the Assistant QtWebKit dependency removal (#660287) F15+ only for now
- fix QTextCursor crash in Lokalize and Psi (QTBUG-15857, kde#249373, #660028)
- add some more NULL checks to the glib_eventloop_nullcheck patch (#622164)
* Mon Dec 06 2010 Than Ngo <than@redhat.com> 4.7.1-4
- bz#660287, using QTextBrowser in assistant to drop
qtwebkit dependency
- bz#660287, using QTextBrowser in assistant to drop qtwebkit dependency
* Tue Nov 23 2010 Rex Dieter <rdieter@fedoraproject.org> - 4.7.1-3
- Fails to create debug build of Qt projects on mingw (#653674, QTBUG-14467)