diff options
Diffstat (limited to 'debian/patches')
46 files changed, 285 insertions, 821 deletions
diff --git a/debian/patches/0167-fix-group-reading.diff b/debian/patches/0167-fix-group-reading.diff deleted file mode 100644 index 60e2efc..0000000 --- a/debian/patches/0167-fix-group-reading.diff +++ /dev/null @@ -1,28 +0,0 @@ -qt-bugs@ issue : none -Trolltech task ID : none yet -bugs.kde.org number : None -applied: no -author: Dirk Mueller <mueller@kde.org> - -in big user environments, getgrgid_r() needs more memory than sysconf() returns. -Try a bit harder. - ---- a/src/corelib/io/qfsfileengine_unix.cpp -+++ b/src/corelib/io/qfsfileengine_unix.cpp -@@ -857,9 +857,13 @@ - size_max = sysconf(_SC_GETGR_R_SIZE_MAX); - if (size_max == -1) - size_max = 1024; -- buf.resize(size_max); -- struct group entry; -- getgrgid_r(ownerId(own), &entry, buf.data(), buf.size(), &gr); -+ for (;size_max < 256000; size_max += size_max) { -+ buf.resize(size_max); -+ struct group entry; -+ if (!getgrgid_r(ownerId(own), &entry, buf.data(), buf.size(), &gr) || errno != ERANGE) -+ break; -+ -+ } - #else - gr = getgrgid(ownerId(own)); - #endif diff --git a/debian/patches/0180-window-role.diff b/debian/patches/0180-window-role.diff index a26ef89..15c8706 100644 --- a/debian/patches/0180-window-role.diff +++ b/debian/patches/0180-window-role.diff @@ -14,7 +14,7 @@ this makes the window role set in many cases (which KWin uses for window identif --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp -@@ -1037,9 +1037,18 @@ +@@ -988,9 +988,18 @@ void QObject::setObjectName(const QStrin { Q_D(QObject); d->objectName = name; @@ -35,7 +35,7 @@ this makes the window role set in many cases (which KWin uses for window identif QObject::child is compat but needs to call itself recursively, --- a/src/corelib/kernel/qobject_p.h +++ b/src/corelib/kernel/qobject_p.h -@@ -146,6 +146,9 @@ +@@ -139,6 +139,9 @@ public: mutable quint32 connectedSignals; QString objectName; @@ -47,17 +47,17 @@ this makes the window role set in many cases (which KWin uses for window identif struct Connection --- a/src/gui/kernel/qwidget_p.h +++ b/src/gui/kernel/qwidget_p.h -@@ -333,6 +333,7 @@ +@@ -355,6 +355,7 @@ public: #if defined(Q_WS_X11) void setWindowRole(); + virtual void checkWindowRole(); void sendStartupMessage(const char *message) const; void setNetWmWindowTypes(); - #endif + void x11UpdateIsOpaque(); --- a/src/gui/kernel/qwidget_x11.cpp +++ b/src/gui/kernel/qwidget_x11.cpp -@@ -719,13 +719,17 @@ +@@ -761,13 +761,17 @@ void QWidgetPrivate::create_sys(WId wind data.fstrut_dirty = 1; // declare the widget's window role @@ -81,7 +81,7 @@ this makes the window role set in many cases (which KWin uses for window identif } // set client leader property -@@ -2719,6 +2723,17 @@ +@@ -2733,6 +2737,17 @@ void QWidgetPrivate::setWindowRole() (unsigned char *)windowRole.constData(), windowRole.length()); } diff --git a/debian/patches/0195-compositing-properties.diff b/debian/patches/0195-compositing-properties.diff index 1e5b453..fc7814e 100644 --- a/debian/patches/0195-compositing-properties.diff +++ b/debian/patches/0195-compositing-properties.diff @@ -9,7 +9,7 @@ so they can be used when compositing. --- a/src/gui/kernel/qwidget_x11.cpp +++ b/src/gui/kernel/qwidget_x11.cpp -@@ -662,6 +662,11 @@ +@@ -702,6 +702,11 @@ void QWidgetPrivate::create_sys(WId wind Q_ASSERT(id); XChangeWindowAttributes(dpy, id, CWOverrideRedirect | CWSaveUnder, &wsa); @@ -21,7 +21,7 @@ so they can be used when compositing. } else if (topLevel && !desktop) { // top-level widget if (!X11->wm_client_leader) create_wm_client_leader(); -@@ -710,13 +715,21 @@ +@@ -752,13 +757,21 @@ void QWidgetPrivate::create_sys(WId wind // set EWMH window types setNetWmWindowTypes(); @@ -45,7 +45,7 @@ so they can be used when compositing. // declare the widget's window role QByteArray windowRole; -@@ -736,10 +749,6 @@ +@@ -778,10 +791,6 @@ void QWidgetPrivate::create_sys(WId wind XChangeProperty(dpy, id, ATOM(WM_CLIENT_LEADER), XA_WINDOW, 32, PropModeReplace, (unsigned char *)&X11->wm_client_leader, 1); diff --git a/debian/patches/0203-qtexthtmlparser-link-color.diff b/debian/patches/0203-qtexthtmlparser-link-color.diff deleted file mode 100644 index 54b6dca..0000000 --- a/debian/patches/0203-qtexthtmlparser-link-color.diff +++ /dev/null @@ -1,18 +0,0 @@ -qt-bugs@ issue : N190509 -Trolltech task ID : 190904 (Status: closed; Version fix: 4.5.0) -applied: no -author: Rafael Fernández López <ereslibre@kde.org> - -Links are assigned a foreground color according to the system current color scheme. - ---- a/src/gui/text/qtexthtmlparser.cpp -+++ b/src/gui/text/qtexthtmlparser.cpp -@@ -1056,7 +1056,7 @@ - && !attributes.at(i + 1).isEmpty()) { - hasHref = true; - charFormat.setUnderlineStyle(QTextCharFormat::SingleUnderline); -- charFormat.setForeground(Qt::blue); -+ charFormat.setForeground(QApplication::palette().link()); - } - } - diff --git a/debian/patches/0209-prevent-qt-mixing.diff b/debian/patches/0209-prevent-qt-mixing.diff index e16793c..628c0fb 100644 --- a/debian/patches/0209-prevent-qt-mixing.diff +++ b/debian/patches/0209-prevent-qt-mixing.diff @@ -15,7 +15,7 @@ It only further enforces using the same sources for the whole Qt build. --- a/src/corelib/kernel/qobject_p.h +++ b/src/corelib/kernel/qobject_p.h -@@ -85,7 +85,9 @@ +@@ -78,7 +78,9 @@ extern QSignalSpyCallbackSet Q_CORE_EXPO inline QObjectData::~QObjectData() {} diff --git a/debian/patches/0216-allow-isystem-for-headers.diff b/debian/patches/0216-allow-isystem-for-headers.diff index 7e1d1dd..e59688f 100644 --- a/debian/patches/0216-allow-isystem-for-headers.diff +++ b/debian/patches/0216-allow-isystem-for-headers.diff @@ -24,7 +24,7 @@ directory at the end of the compiler's header search path. --- a/configure +++ b/configure -@@ -833,6 +833,11 @@ +@@ -845,6 +845,11 @@ while [ "$#" -gt 0 ]; do VAL=`echo $1 | sed 's,-D,,'` fi ;; @@ -36,7 +36,7 @@ directory at the end of the compiler's header search path. -I?*|-I) VAR="add_ipath" if [ "$1" = "-I" ]; then -@@ -1740,6 +1745,9 @@ +@@ -1805,6 +1810,9 @@ while [ "$#" -gt 0 ]; do add_ipath) I_FLAGS="$I_FLAGS -I\"${VAL}\"" ;; diff --git a/debian/patches/0224-fast-qpixmap-fill.diff b/debian/patches/0224-fast-qpixmap-fill.diff deleted file mode 100644 index 1fc721f..0000000 --- a/debian/patches/0224-fast-qpixmap-fill.diff +++ /dev/null @@ -1,46 +0,0 @@ -qt-bugs@ issue : None -Trolltech task ID : None -bugs.kde.org number : None -applied: no -author: Fredrik Höglund <fredrik@kde.org> - -Since there's no way to specify that a QPixmap should have an alpha channel -when it's created, it's quite common to call pixmap.fill(Qt::transparent) -immediately after creating it, to force Qt to recreate it with an alpha -channel. Unfortunately QPixmap::fill() does this by creating a QImage, -filling it with the specified color, and then converting it to a QPixmap. - -This patch avoids the expensive image->pixmap conversion by simply discarding -the old pixmap, creating a new one with the correct format, and doing the -fill server side. - ---- a/src/gui/image/qpixmap_x11.cpp -+++ b/src/gui/image/qpixmap_x11.cpp -@@ -1121,7 +1121,26 @@ - { - if (fillColor.alpha() != 255) { - #ifndef QT_NO_XRENDER -- if (picture && d == 32) { -+ if (X11->use_xrender) { -+ if (!picture || d != 32) { -+ if (picture) -+ XRenderFreePicture(X11->display, picture); -+ if (mask_picture) -+ XRenderFreePicture(X11->display, mask_picture); -+ if (x11_mask) -+ XFreePixmap(X11->display, x11_mask); -+ if (hd) -+ XFreePixmap(X11->display, hd); -+ if (hd2) -+ XFreePixmap(X11->display, hd2); -+ XRenderPictFormat *format = XRenderFindStandardFormat(X11->display, PictStandardARGB32); -+ hd = XCreatePixmap(X11->display, RootWindow(X11->display, xinfo.screen()), width(), height(), 32); -+ picture = XRenderCreatePicture(X11->display, hd, format, 0, 0); -+ mask_picture = 0; -+ x11_mask = 0; -+ hd2 = 0; -+ d = 32; -+ } - ::Picture src = X11->getSolidFill(xinfo.screen(), fillColor); - XRenderComposite(X11->display, PictOpSrc, src, 0, picture, - 0, 0, width(), height(), diff --git a/debian/patches/0225-invalidate-tabbar-geometry-on-refresh.patch b/debian/patches/0225-invalidate-tabbar-geometry-on-refresh.patch index a02361c..1b5a1e9 100644 --- a/debian/patches/0225-invalidate-tabbar-geometry-on-refresh.patch +++ b/debian/patches/0225-invalidate-tabbar-geometry-on-refresh.patch @@ -1,5 +1,5 @@ -qt-bugs@ issue : None -Trolltech task ID : None +qt-bugs@ issue : 208185 +Trolltech task ID : 208349 bugs.kde.org number : 159014 applied: no author: Robert Knight <robertknight@gmail.com> @@ -21,7 +21,7 @@ This patch fixes the problem by calling updateGeometry() whenever the tab bar's --- a/src/gui/widgets/qtabbar.cpp +++ b/src/gui/widgets/qtabbar.cpp -@@ -533,8 +533,8 @@ +@@ -673,8 +673,8 @@ void QTabBarPrivate::refresh() layoutTabs(); makeVisible(currentIndex); q->update(); diff --git a/debian/patches/0226-qtreeview-column_resize_when_needed.diff b/debian/patches/0226-qtreeview-column_resize_when_needed.diff deleted file mode 100644 index 986b652..0000000 --- a/debian/patches/0226-qtreeview-column_resize_when_needed.diff +++ /dev/null @@ -1,104 +0,0 @@ -qt-bugs@ issue : N209927 -Trolltech task ID : 210390 -bugs.kde.org number : None -applied: no -author: Rafael Fernández López <ereslibre@kde.org> - -If we have no header, or not visible header on a QTreeView, we can end up with -an unusable widget if we expand lots of child widgets of the kind - -a - b - c - d - ... - -This patch assures that if no header is shown, or if we only have one column (so -no other columns become shrinked), the contents will be visible. - ---- a/src/gui/itemviews/qtreeview.h -+++ b/src/gui/itemviews/qtreeview.h -@@ -229,6 +229,7 @@ - Q_PRIVATE_SLOT(d_func(), void _q_columnsAboutToBeRemoved(const QModelIndex &, int, int)) - Q_PRIVATE_SLOT(d_func(), void _q_columnsRemoved(const QModelIndex &, int, int)) - Q_PRIVATE_SLOT(d_func(), void _q_modelAboutToBeReset()) -+ Q_PRIVATE_SLOT(d_func(), void _q_forceColumnResizeToFitContents()) - }; - - #endif // QT_NO_TREEVIEW ---- a/src/gui/itemviews/qtreeview.cpp -+++ b/src/gui/itemviews/qtreeview.cpp -@@ -248,6 +248,19 @@ - - connect(d->model, SIGNAL(modelAboutToBeReset()), SLOT(_q_modelAboutToBeReset())); - -+ // we connect these signals from the model to a slot that will call -+ // resizeColumnToContents. This is important because if we call it only on -+ // expand() method, when we expand a node, the filling of the model can be -+ // delayed. So, we call it again after the model has finished its job. -+ connect(d->model, SIGNAL(layoutChanged()), -+ this, SLOT(_q_forceColumnResizeToFitContents())); -+ connect(d->model, SIGNAL(rowsInserted(QModelIndex,int,int)), -+ this, SLOT(_q_forceColumnResizeToFitContents())); -+ connect(d->model, SIGNAL(rowsRemoved(QModelIndex,int,int)), -+ this, SLOT(_q_forceColumnResizeToFitContents())); -+ -+ -+ - if (d->sortingEnabled) - sortByColumn(header()->sortIndicatorSection()); - } -@@ -2815,6 +2828,8 @@ - } - if (model->canFetchMore(index)) - model->fetchMore(index); -+ -+ _q_forceColumnResizeToFitContents(); - } - - void QTreeViewPrivate::collapse(int item, bool emitSignal) -@@ -2854,6 +2869,8 @@ - else - emit q->collapsed(modelIndex); - } -+ -+ _q_forceColumnResizeToFitContents(); - } - - void QTreeViewPrivate::prepareAnimatedOperation(int item, AnimatedOperation::Type type) -@@ -2965,6 +2982,25 @@ - viewItems.clear(); - } - -+void QTreeViewPrivate::_q_forceColumnResizeToFitContents() -+{ -+ Q_Q(QTreeView); -+ -+ /** -+ * if: -+ * -+ * a) The tree view has no header (user cannot resize the column) OR -+ * b) The tree view has a header, but hidden (user cannot resize the column) OR -+ * c) The tree view has a visible header, but with _only_ one (or zero) column (that -+ * means: no other information will be affected). -+ * -+ * We can expand the column to make the contents properly visible. -+ */ -+ if (!header || !header->isVisible() || ((header->count() - header->hiddenSectionCount()) <= 1)) { -+ q->resizeColumnToContents(q->currentIndex().column()); -+ } -+} -+ - void QTreeViewPrivate::_q_columnsAboutToBeRemoved(const QModelIndex &parent, int start, int end) - { - Q_UNUSED(parent); ---- a/src/gui/itemviews/qtreeview_p.h -+++ b/src/gui/itemviews/qtreeview_p.h -@@ -101,6 +101,7 @@ - QPixmap after; - }; - -+ void _q_forceColumnResizeToFitContents(); - void expand(int item, bool emitSignal); - void collapse(int item, bool emitSignal); - diff --git a/debian/patches/0234-fix-mysql-threaded.diff b/debian/patches/0234-fix-mysql-threaded.diff index 3ccc006..fcd4d12 100644 --- a/debian/patches/0234-fix-mysql-threaded.diff +++ b/debian/patches/0234-fix-mysql-threaded.diff @@ -9,7 +9,7 @@ mysql server in a multithreaded environment --- a/src/sql/drivers/mysql/qsql_mysql.cpp +++ b/src/sql/drivers/mysql/qsql_mysql.cpp -@@ -1248,6 +1248,10 @@ +@@ -1252,6 +1252,10 @@ bool QMYSQLDriver::open(const QString& d d->preparedQuerysEnabled = false; #endif @@ -20,7 +20,7 @@ mysql server in a multithreaded environment setOpen(true); setOpenError(false); return true; -@@ -1256,6 +1260,9 @@ +@@ -1260,6 +1264,9 @@ bool QMYSQLDriver::open(const QString& d void QMYSQLDriver::close() { if (isOpen()) { @@ -28,5 +28,5 @@ mysql server in a multithreaded environment + mysql_thread_end(); +#endif mysql_close(d->mysql); + d->mysql = NULL; setOpen(false); - setOpenError(false); diff --git a/debian/patches/0238-fix-qt-qttabbar-size.diff b/debian/patches/0238-fix-qt-qttabbar-size.diff deleted file mode 100644 index 8b35ab0..0000000 --- a/debian/patches/0238-fix-qt-qttabbar-size.diff +++ /dev/null @@ -1,20 +0,0 @@ -qt-bugs@ issue : N216195 -Trolltech task ID : 216537 (Applied in Qt 4.5) -bugs.kde.org number : 162737 -applied: no -author: Michael Leupold <lemma@confuego.org> - -This patch fixes some characters in a tabbar being cut-off due -to a wrong size hint (visible if using a kstyle). - ---- a/src/gui/widgets/qtabbar.cpp -+++ b/src/gui/widgets/qtabbar.cpp -@@ -1078,7 +1078,7 @@ QSize QTabBar::tabSizeHint(int index) co - QStyleOptionTabV2 opt; - initStyleOption(&opt, index); - opt.text = d->tabList.at(index).text; -- QSize iconSize = tab->icon.isNull() ? QSize() : opt.iconSize; -+ QSize iconSize = tab->icon.isNull() ? QSize(0, 0) : opt.iconSize; - int hframe = style()->pixelMetric(QStyle::PM_TabBarTabHSpace, &opt, this); - int vframe = style()->pixelMetric(QStyle::PM_TabBarTabVSpace, &opt, this); - const QFontMetrics fm = fontMetrics(); diff --git a/debian/patches/0245-fix-randr-changes-detecting.diff b/debian/patches/0245-fix-randr-changes-detecting.diff index 5eaf5a9..e77e0e3 100644 --- a/debian/patches/0245-fix-randr-changes-detecting.diff +++ b/debian/patches/0245-fix-randr-changes-detecting.diff @@ -9,7 +9,7 @@ Fix QDesktopWidget not detecting some changes in multiscreen setups --- a/src/gui/kernel/qapplication_x11.cpp +++ b/src/gui/kernel/qapplication_x11.cpp -@@ -2994,11 +2994,11 @@ int QApplication::x11ProcessEvent(XEvent +@@ -3339,11 +3339,11 @@ int QApplication::x11ProcessEvent(XEvent QSize oldSize(w->size()); w->data->crect.setWidth(DisplayWidth(X11->display, scr)); w->data->crect.setHeight(DisplayHeight(X11->display, scr)); diff --git a/debian/patches/0248-fix-qwidget-scroll-slowness.diff b/debian/patches/0248-fix-qwidget-scroll-slowness.diff deleted file mode 100644 index 8e0353b..0000000 --- a/debian/patches/0248-fix-qwidget-scroll-slowness.diff +++ /dev/null @@ -1,39 +0,0 @@ -qt-bugs@ issue : N227210 -Trolltech task ID : 228764 -bugs.kde.org number : 167739 -applied: no -author: Germain Garand <germain@ebooksfrance.org> - -QWidgetPrivate::scrollRect doesn't account for it's rect argument -but rather examine the whole widget surface when pondering if -it can apply accelerated blitting, resulting in unnecessarily slow -and non-blitting QWidget::scroll calls. - ---- a/src/gui/painting/qbackingstore.cpp -+++ b/src/gui/painting/qbackingstore.cpp -@@ -517,7 +517,8 @@ void QWidgetPrivate::scrollRect(const QR - } - - bool overlapped = false; -- bool accelerateScroll = accelEnv && isOpaque() && !(overlapped = isOverlapped(data.crect)); -+ QRect cRect = clipRect(); -+ bool accelerateScroll = accelEnv && isOpaque() && !(overlapped = isOverlapped(rect & cRect)); - - #if defined(Q_WS_QWS) - QWSWindowSurface *surface; -@@ -552,13 +553,13 @@ void QWidgetPrivate::scrollRect(const QR - #ifdef Q_WS_QWS - QWSWindowSurface *surface = static_cast<QWSWindowSurface*>(wbs->windowSurface); - const QRegion clip = surface->clipRegion().translated(-toplevelOffset) -- & clipRect(); -+ & cRect; - const QRect scrollRect = rect & clip.boundingRect(); - const QRect destRect = scrollRect.translated(dx, dy) - & scrollRect - & clip.boundingRect(); - #else -- QRect scrollRect = rect & clipRect(); -+ QRect scrollRect = rect & cRect; - - QRect destRect = scrollRect.isValid() ? scrollRect.translated(dx,dy).intersected(scrollRect) : QRect(); - diff --git a/debian/patches/0249-webkit-stale-frame-pointer.diff b/debian/patches/0249-webkit-stale-frame-pointer.diff deleted file mode 100644 index c966d9a..0000000 --- a/debian/patches/0249-webkit-stale-frame-pointer.diff +++ /dev/null @@ -1,161 +0,0 @@ -qt-bugs@ issue : none yet -Trolltech task ID : none yet -bugs.kde.org number : none -applied: no -author: Apple - -this fixes CVE-2008-3632: - -Use-after-free vulnerability in WebKit in Apple iPod touch 1.1 through 2.0.2, -and iPhone 1.0 through 2.0.2, allows remote attackers to execute arbitrary code -or cause a denial of service (application crash) via a web page with crafted -Cascading Style Sheets (CSS) import statements. - - ---- a/src/3rdparty/webkit/WebCore/dom/Document.cpp -+++ b/src/3rdparty/webkit/WebCore/dom/Document.cpp -@@ -291,9 +291,8 @@ Document::Document(DOMImplementation* im - m_renderArena = 0; - - m_axObjectCache = 0; -- -- // FIXME: DocLoader probably no longer needs the frame argument -- m_docLoader = new DocLoader(frame, this); -+ -+ m_docLoader = new DocLoader(this); - - visuallyOrdered = false; - m_bParsing = false; -@@ -1169,15 +1168,23 @@ void Document::detach() - if (render) - render->destroy(); - -- // FIXME: is this needed or desirable? -- m_frame = 0; -- -+ // This is required, as our Frame might delete itself as soon as it detaches -+ // us. However, this violates Node::detach() symantics, as it's never -+ // possible to re-attach. Eventually Document::detach() should be renamed -+ // or this call made explicit in each of the callers of Document::detach(). -+ clearFramePointer(); -+ - if (m_renderArena) { - delete m_renderArena; - m_renderArena = 0; - } - } - -+void Document::clearFramePointer() -+{ -+ m_frame = 0; -+} -+ - void Document::removeAllEventListenersFromAllNodes() - { - m_windowEventListeners.clear(); ---- a/src/3rdparty/webkit/WebCore/dom/Document.h -+++ b/src/3rdparty/webkit/WebCore/dom/Document.h -@@ -344,6 +344,8 @@ public: - virtual void attach(); - virtual void detach(); - -+ void clearFramePointer(); -+ - RenderArena* renderArena() { return m_renderArena; } - - AXObjectCache* axObjectCache() const; ---- a/src/3rdparty/webkit/WebCore/loader/DocLoader.cpp -+++ b/src/3rdparty/webkit/WebCore/loader/DocLoader.cpp -@@ -40,10 +40,9 @@ - - namespace WebCore { - --DocLoader::DocLoader(Frame *frame, Document* doc) -+DocLoader::DocLoader(Document* doc) - : m_cache(cache()) - , m_cachePolicy(CachePolicyVerify) -- , m_frame(frame) - , m_doc(doc) - , m_requestCount(0) - , m_autoLoadImages(true) -@@ -53,6 +52,11 @@ DocLoader::DocLoader(Frame *frame, Docum - m_cache->addDocLoader(this); - } - -+Frame* DocLoader::frame() const -+{ -+ return m_doc->frame(); -+} -+ - DocLoader::~DocLoader() - { - HashMap<String, CachedResource*>::iterator end = m_docResources.end(); -@@ -146,7 +150,7 @@ CachedResource* DocLoader::requestResour - } - } - -- if (m_frame && m_frame->loader()->isReloading()) -+ if (frame() && frame()->loader()->isReloading()) - setCachePolicy(CachePolicyReload); - - checkForReload(fullURL); -@@ -197,8 +201,8 @@ void DocLoader::removeCachedResource(Cac - void DocLoader::setLoadInProgress(bool load) - { - m_loadInProgress = load; -- if (!load && m_frame) -- m_frame->loader()->loadDone(); -+ if (!load && frame()) -+ frame()->loader()->loadDone(); - } - - void DocLoader::checkCacheObjectStatus(CachedResource* resource) -@@ -217,7 +221,7 @@ void DocLoader::checkCacheObjectStatus(C - } - - // Notify the caller that we "loaded". -- if (!m_frame || m_frame->loader()->haveToldBridgeAboutLoad(resource->url())) -+ if (!frame() || frame()->loader()->haveToldBridgeAboutLoad(resource->url())) - return; - - ResourceRequest request(resource->url()); -@@ -226,9 +230,9 @@ void DocLoader::checkCacheObjectStatus(C - - if (resource->sendResourceLoadCallbacks()) { - // FIXME: If the WebKit client changes or cancels the request, WebCore does not respect this and continues the load. -- m_frame->loader()->loadedResourceFromMemoryCache(request, response, data ? data->size() : 0); -+ frame()->loader()->loadedResourceFromMemoryCache(request, response, data ? data->size() : 0); - } -- m_frame->loader()->didTellBridgeAboutLoad(resource->url()); -+ frame()->loader()->didTellBridgeAboutLoad(resource->url()); - } - - void DocLoader::incrementRequestCount() ---- a/src/3rdparty/webkit/WebCore/loader/DocLoader.h -+++ b/src/3rdparty/webkit/WebCore/loader/DocLoader.h -@@ -49,7 +49,7 @@ friend class Cache; - friend class HTMLImageLoader; - - public: -- DocLoader(Frame*, Document*); -+ DocLoader(Document*); - ~DocLoader(); - - CachedImage* requestImage(const String& url); -@@ -73,7 +73,7 @@ public: - CachePolicy cachePolicy() const { return m_cachePolicy; } - void setCachePolicy(CachePolicy); - -- Frame* frame() const { return m_frame; } -+ Frame* frame() const; // Can be NULL - Document* doc() const { return m_doc; } - - void removeCachedResource(CachedResource*) const; -@@ -100,7 +100,6 @@ private: - HashSet<String> m_reloadedURLs; - mutable HashMap<String, CachedResource*> m_docResources; - CachePolicy m_cachePolicy; -- Frame* m_frame; - Document *m_doc; - - int m_requestCount; diff --git a/debian/patches/0254-fix-qgraphicsproxywidget-deletion-crash.diff b/debian/patches/0254-fix-qgraphicsproxywidget-deletion-crash.diff deleted file mode 100644 index e9eefe9..0000000 --- a/debian/patches/0254-fix-qgraphicsproxywidget-deletion-crash.diff +++ /dev/null @@ -1,23 +0,0 @@ -qt-bugs@ issue : none -Trolltech task ID : None -applied: no -author: Alexis Menard <alexis.menard@trolltech.com> - -Fix deletion of a qgraphicsproxywidget if it is in a layout - -Will be included in 4.4.4 - ---- a/src/gui/graphicsview/qgraphicsproxywidget.cpp -+++ b/src/gui/graphicsview/qgraphicsproxywidget.cpp -@@ -515,9 +515,8 @@ QGraphicsProxyWidget::~QGraphicsProxyWid - { - Q_D(QGraphicsProxyWidget); - if (d->widget) { -- QWidget *w = d->widget; -- setWidget(0); -- delete w; -+ QObject::disconnect(d->widget, SIGNAL(destroyed()), this, SLOT(_q_removeWidgetSlot())); -+ delete d->widget; - } - } - diff --git a/debian/patches/0255-qtreeview-selection-columns-hidden.diff b/debian/patches/0255-qtreeview-selection-columns-hidden.diff index 4a15b35..6409a38 100644 --- a/debian/patches/0255-qtreeview-selection-columns-hidden.diff +++ b/debian/patches/0255-qtreeview-selection-columns-hidden.diff @@ -31,10 +31,10 @@ range (even when there are hidden columns). --- a/src/gui/itemviews/qtreeview.cpp +++ b/src/gui/itemviews/qtreeview.cpp -@@ -3530,7 +3530,7 @@ QList<QPair<int, int> > QTreeViewPrivate +@@ -3526,7 +3526,7 @@ QList<QPair<int, int> > QTreeViewPrivate current.first = -2; // -1 is not enough because -1+1 = 0 current.second = -2; - foreach(int logicalColumn, logicalIndexes) { + foreach (int logicalColumn, logicalIndexes) { - if (current.second + 1 != logicalColumn) { + if (current.second + 1 != logicalColumn && !header->isSectionHidden(current.second + 1)) { if (current.first != -2) { diff --git a/debian/patches/0256-fix-recursive-backingstore-sync-crash.diff b/debian/patches/0256-fix-recursive-backingstore-sync-crash.diff deleted file mode 100644 index 9665d5a..0000000 --- a/debian/patches/0256-fix-recursive-backingstore-sync-crash.diff +++ /dev/null @@ -1,38 +0,0 @@ -qt-bugs@ issue : N227209 -Trolltech task ID : none yet -bugs.kde.org number : 174065 -applied: yes -author: Szymon Tomasz Stefanek <s.stefanek@gmail.com> - -This patch fixes a crash deep inside the qt painting engine. - -The toplevel shared painter is instantiated by the topmost window -which "owns" the backingstore buffer. The topmost window then recursively -asks the children to paint themselves with the shared painter. -With certain widget hierarchies it turns out that the topmost window -may be asked to paint itself deep inside the recursive painting stack: -a sort of "hierarchy-looping recursion". -The window will do the job and then happily destroy the shared -painter leaving the outer stack frames with a dangling pointer. - -This patch stops the "looping recursion" when it's triggered -with a shared painter already active. The bug doesn't seem to -be present in qt 4.5 snapshots, but in the meantime we need this fix. - - ---- a/src/gui/painting/qbackingstore.cpp -+++ b/src/gui/painting/qbackingstore.cpp -@@ -988,8 +988,12 @@ void QWidgetBackingStore::cleanRegion(co - return; - } - -- if (tlw->updatesEnabled()) { -+ // With certain widget hierarchies we may end up being called recursively -+ // on the same toplevel. This is likely to explode once the painter is released -+ // in the code below (since there is no reference counting). Avoid it. -+ bool alreadyPainting = tlwExtra->sharedPainter && tlwExtra->sharedPainter->isActive(); - -+ if (tlw->updatesEnabled() && !alreadyPainting) { - // hw: XXX the toClean region is not correct if !dirtyWidgets.isEmpty() - - // Pre render config diff --git a/debian/patches/0257-qurl-validate-speedup.diff b/debian/patches/0257-qurl-validate-speedup.diff deleted file mode 100644 index eefd01f..0000000 --- a/debian/patches/0257-qurl-validate-speedup.diff +++ /dev/null @@ -1,21 +0,0 @@ -qt-bugs@ issue : N234179 -Trolltech task ID : none -bugs.kde.org number : 174144 -applied: no -author: David Faure <faure@kde.org> (and Qt Software, independently) - -QUrl is supposed to have flags for parsing and validating a given URL only once. -However it only sets the Validated flag on error, not after successful validation. -So a valid url will be validated over and over again, every time e.g. port() or isValid() is called. - ---- a/src/corelib/io/qurl.cpp -+++ b/src/corelib/io/qurl.cpp -@@ -3440,6 +3440,8 @@ void QUrlPrivate::validate() const - that->encodedOriginal = that->toEncoded(); // may detach - parse(ParseOnly); - -+ QURL_SETFLAG(that->stateFlags, Validated); -+ - if (!isValid) - return; - diff --git a/debian/patches/0260-fix-qgraphicswidget-deletionclearFocus.diff b/debian/patches/0260-fix-qgraphicswidget-deletionclearFocus.diff deleted file mode 100644 index 3936f34..0000000 --- a/debian/patches/0260-fix-qgraphicswidget-deletionclearFocus.diff +++ /dev/null @@ -1,20 +0,0 @@ -qt-bugs@ issue : none -Trolltech task ID : None -applied: no -author: Alexis Menard <alexis.menard@trolltech.com> - -Fix deletion of a qgraphicswidget on clear focus even if it doesn't have the focus. - -Will be included in 4.4.4 - ---- a/src/gui/graphicsview/qgraphicsitem.cpp -+++ b/src/gui/graphicsview/qgraphicsitem.cpp -@@ -1951,7 +1951,7 @@ void QGraphicsItem::setFocus(Qt::FocusRe - */ - void QGraphicsItem::clearFocus() - { -- if (!d_ptr->scene || !hasFocus()) -+ if (!d_ptr->scene) - return; - if (d_ptr->isWidget) { - // Invisible widget items with focus must explicitly clear subfocus. diff --git a/debian/patches/0261-sync-before-reset-errorhandler.patch b/debian/patches/0261-sync-before-reset-errorhandler.patch deleted file mode 100644 index 2128ba8..0000000 --- a/debian/patches/0261-sync-before-reset-errorhandler.patch +++ /dev/null @@ -1,22 +0,0 @@ -qt-bugs@ issue : 236401 -Trolltech task ID : none -bugs.kde.org number : none -applied: no -author: Lubos Lunak <l.lunak@kde.org> - -Sync X connection before resetting X error handler to the one provided -by Xlib (which just aborts), in case there are still queued requests -that may result in an error. - - ---- a/src/gui/kernel/qapplication_x11.cpp -+++ b/src/gui/kernel/qapplication_x11.cpp -@@ -2312,6 +2312,8 @@ void qt_cleanup() - #endif - - // Reset the error handlers -+ if (qt_is_gui_used) -+ XSync(X11->display, False); // sync first to process all possible errors - XSetErrorHandler(original_x_errhandler); - XSetIOErrorHandler(original_xio_errhandler); - diff --git a/debian/patches/0262-fix-treeview-animation-crash.diff b/debian/patches/0262-fix-treeview-animation-crash.diff deleted file mode 100644 index e307f3a..0000000 --- a/debian/patches/0262-fix-treeview-animation-crash.diff +++ /dev/null @@ -1,44 +0,0 @@ -Trolltech task ID : 236454 -bugs.kde.org number : 176045 -applied: no -author: Olivier Goffart - -This patch makes sure no deleted items are being accessed during an animation of the treeview -It will also be contained in the upcoming Qt snapshots ---- a/src/gui/itemviews/qtreeview.cpp -+++ b/src/gui/itemviews/qtreeview.cpp -@@ -2815,10 +2815,9 @@ void QTreeViewPrivate::expand(int item, - q->setState(oldState); - - if (emitSignal) { -+ emit q->expanded(index); - if (animationsEnabled) - beginAnimatedOperation(); -- else -- emit q->expanded(index); - } - if (model->canFetchMore(index)) - model->fetchMore(index); -@@ -2858,10 +2857,9 @@ void QTreeViewPrivate::collapse(int item - q->setState(oldState); - - if (emitSignal) { -+ emit q->collapsed(modelIndex); - if (animationsEnabled) - beginAnimatedOperation(); -- else -- emit q->collapsed(modelIndex); - } - - _q_forceColumnResizeToFitContents(); -@@ -2918,10 +2916,6 @@ void QTreeViewPrivate::_q_endAnimatedOpe - animatedOperation.before = QPixmap(); - animatedOperation.after = QPixmap(); - q->setState(QAbstractItemView::NoState); -- if (animatedOperation.type == AnimatedOperation::Expand) -- emit q->expanded(viewItems.at(animatedOperation.item).index); -- else // operation == AnimatedOperation::Collapse -- emit q->collapsed(viewItems.at(animatedOperation.item).index); - q->updateGeometries(); - viewport->update(); - } diff --git a/debian/patches/0273-odbc-64bit-compile.diff b/debian/patches/0273-odbc-64bit-compile.diff new file mode 100644 index 0000000..b043d79 --- /dev/null +++ b/debian/patches/0273-odbc-64bit-compile.diff @@ -0,0 +1,23 @@ +qt-bugs@ issue: +QtSw task ID: +applied: no +author: Alex Merry + +--- a/src/sql/drivers/odbc/qsql_odbc.cpp ++++ b/src/sql/drivers/odbc/qsql_odbc.cpp +@@ -64,13 +64,13 @@ QT_BEGIN_NAMESPACE + #endif + + // newer platform SDKs use SQLLEN instead of SQLINTEGER +-#if defined(SQLLEN) || defined(Q_OS_WIN64) ++#if defined(SQLLEN) || defined(Q_OS_WIN64) || (defined(Q_OS_UNIX) && !defined(Q_OS_MAC)) + # define QSQLLEN SQLLEN + #else + # define QSQLLEN SQLINTEGER + #endif + +-#if defined(SQLULEN) || defined(Q_OS_WIN64) ++#if defined(SQLULEN) || defined(Q_OS_WIN64) || (defined(Q_OS_UNIX) && !defined(Q_OS_MAC)) + # define QSQLULEN SQLULEN + #else + # define QSQLULEN SQLUINTEGER diff --git a/debian/patches/02_launch_assistant-qt4.diff b/debian/patches/02_launch_assistant-qt4.diff index f086432..44ee566 100644 --- a/debian/patches/02_launch_assistant-qt4.diff +++ b/debian/patches/02_launch_assistant-qt4.diff @@ -1,6 +1,6 @@ --- a/demos/qtdemo/menumanager.cpp +++ b/demos/qtdemo/menumanager.cpp -@@ -285,7 +285,7 @@ void MenuManager::showDocInAssistant(con +@@ -284,7 +284,7 @@ void MenuManager::showDocInAssistant(con if (this->assistantProcess.state() != QProcess::Running){ QString app = QLibraryInfo::location(QLibraryInfo::BinariesPath) + QDir::separator(); #if !defined(Q_OS_MAC) diff --git a/debian/patches/03_launch_moc-qt4.diff b/debian/patches/03_launch_moc-qt4.diff index e5bfcf4..990cd83 100644 --- a/debian/patches/03_launch_moc-qt4.diff +++ b/debian/patches/03_launch_moc-qt4.diff @@ -4,7 +4,7 @@ Ensure the Qt4 version of moc is launched. --- a/tools/qdbus/qdbuscpp2xml/qdbuscpp2xml.cpp +++ b/tools/qdbus/qdbuscpp2xml/qdbuscpp2xml.cpp -@@ -392,7 +392,7 @@ int main(int argc, char **argv) +@@ -391,7 +391,7 @@ int main(int argc, char **argv) else { // run moc on this file QProcess proc; diff --git a/debian/patches/04_launch_uic-qt4.diff b/debian/patches/04_launch_uic-qt4.diff index eedb093..bd0e511 100644 --- a/debian/patches/04_launch_uic-qt4.diff +++ b/debian/patches/04_launch_uic-qt4.diff @@ -2,7 +2,7 @@ author: Fathi Boudra <fabo@debian.org> --- a/tools/designer/src/lib/shared/qdesigner_utils.cpp +++ b/tools/designer/src/lib/shared/qdesigner_utils.cpp -@@ -482,7 +482,7 @@ namespace qdesigner_internal +@@ -663,7 +663,7 @@ namespace qdesigner_internal binary += QDir::separator(); switch (mode) { case UIC_GenerateCode: diff --git a/debian/patches/05_append_qt4_target.diff b/debian/patches/05_append_qt4_target.diff index 32dfeea..cb5811e 100644 --- a/debian/patches/05_append_qt4_target.diff +++ b/debian/patches/05_append_qt4_target.diff @@ -57,7 +57,7 @@ author: Fathi Boudra <fabo@debian.org> if [ "$VERBOSE" = "yes" ]; then --- a/configure +++ b/configure -@@ -3789,7 +3789,7 @@ END { +@@ -3935,7 +3935,7 @@ END { } # build qmake @@ -66,7 +66,7 @@ author: Fathi Boudra <fabo@debian.org> echo "Creating qmake. Please wait..." OLD_QCONFIG_H= -@@ -6031,8 +6031,8 @@ QMAKE_ABSOLUTE_SOURCE_ROOT = \$\$QT_SOUR +@@ -6511,8 +6511,8 @@ QMAKE_ABSOLUTE_SOURCE_ROOT = \$\$QT_SOUR QMAKE_MOC_SRC = \$\$QT_BUILD_TREE/src/moc #local paths that cannot be queried from the QT_INSTALL_* properties while building QTDIR @@ -77,7 +77,7 @@ author: Fathi Boudra <fabo@debian.org> QMAKE_UIC3 = \$\$QT_BUILD_TREE/bin/uic3 QMAKE_RCC = \$\$QT_BUILD_TREE/bin/rcc QMAKE_QDBUSXML2CPP = \$\$QT_BUILD_TREE/bin/qdbusxml2cpp -@@ -6333,11 +6333,11 @@ EXEC="" +@@ -6861,11 +6861,11 @@ EXEC="" #------------------------------------------------------------------------------- echo "Finding project files. Please wait..." @@ -91,7 +91,7 @@ author: Fathi Boudra <fabo@debian.org> fi # .projects -> projects to process -@@ -6510,7 +6510,7 @@ for file in .projects .projects.3; do +@@ -7038,7 +7038,7 @@ for file in .projects .projects.3; do echo " for $a\c" fi @@ -102,7 +102,7 @@ author: Fathi Boudra <fabo@debian.org> if echo '\c' | grep '\c' >/dev/null; then --- a/projects.pro +++ b/projects.pro -@@ -116,7 +116,7 @@ qmake.path=$$[QT_INSTALL_BINS] +@@ -115,7 +115,7 @@ qmake.path=$$[QT_INSTALL_BINS] win32 { qmake.files=$$QT_BUILD_TREE/bin/qmake.exe } else { @@ -113,7 +113,7 @@ author: Fathi Boudra <fabo@debian.org> --- a/qmake/Makefile.unix +++ b/qmake/Makefile.unix -@@ -98,17 +98,17 @@ CPPFLAGS = -I. -Igenerators -Igenerators +@@ -99,17 +99,17 @@ CPPFLAGS = -I. -Igenerators -Igenerators CXXFLAGS = @QMAKE_CXXFLAGS@ $(CPPFLAGS) @@ -137,26 +137,22 @@ author: Fathi Boudra <fabo@debian.org> makedepend -D__MAKEDEPEND__ $(CPPFLAGS) $(DEPEND_SRC) --- a/tools/linguist/lrelease/lrelease.pro +++ b/tools/linguist/lrelease/lrelease.pro -@@ -29,7 +29,7 @@ HEADERS += $$PROPARSERPATH/proitems.h \ - SOURCES += $$PROPARSERPATH/proitems.cpp \ - $$PROPARSERPATH/proreader.cpp - +@@ -1,5 +1,5 @@ + TEMPLATE = app -TARGET = lrelease +TARGET = lrelease-qt4 - INCLUDEPATH += ../shared DESTDIR = ../../../bin + QT -= gui --- a/tools/linguist/lupdate/lupdate.pro +++ b/tools/linguist/lupdate/lupdate.pro -@@ -42,7 +42,7 @@ SOURCES += $$PROPARSERPATH/proitems.cpp - $$PROPARSERPATH/proreader.cpp - - +@@ -1,5 +1,5 @@ + TEMPLATE = app -TARGET = lupdate +TARGET = lupdate-qt4 - INCLUDEPATH += ../shared DESTDIR = ../../../bin + QT -= gui --- a/src/tools/moc/moc.pro +++ b/src/tools/moc/moc.pro @@ -1,5 +1,5 @@ @@ -164,19 +160,17 @@ author: Fathi Boudra <fabo@debian.org> -TARGET = moc +TARGET = moc-qt4 - CONFIG += console qtinc - CONFIG -= qt + DEFINES += QT_MOC + DESTDIR = ../../../bin --- a/src/tools/uic/uic.pro +++ b/src/tools/uic/uic.pro -@@ -9,7 +9,7 @@ build_all:!build_pass { - - unix:!contains(QT_CONFIG, zlib):LIBS += -lz - +@@ -1,5 +1,5 @@ + TEMPLATE = app -TARGET = uic +TARGET = uic-qt4 - DESTDIR = ../../../bin - DEFINES += QT_BOOTSTRAPPED QT_UIC QT_LITE_UNICODE QT_NO_DATASTREAM \ + DESTDIR = ../../../bin + DEFINES += QT_UIC --- a/tools/assistant/tools/assistant/assistant.pro +++ b/tools/assistant/tools/assistant/assistant.pro @@ -2,7 +2,7 @@ include($$QT_SOURCE_TREE/tools/shared/fo @@ -201,10 +195,10 @@ author: Fathi Boudra <fabo@debian.org> include($$QT_SOURCE_TREE/tools/shared/qttoolbardialog/qttoolbardialog.pri) --- a/tools/linguist/linguist/linguist.pro +++ b/tools/linguist/linguist/linguist.pro -@@ -67,7 +67,7 @@ HEADERS += batchtranslationdialog.h \ +@@ -68,7 +68,7 @@ HEADERS += \ + contains(QT_PRODUCT, OpenSource.*):DEFINES *= QT_OPENSOURCE DEFINES += QT_KEYWORDS - DESTDIR = ../../../bin -TARGET = linguist +TARGET = linguist-qt4 win32:RC_FILE = linguist.rc diff --git a/debian/patches/07_trust_dpkg-arch_over_uname-m.diff b/debian/patches/07_trust_dpkg-arch_over_uname-m.diff index 48fa1ae..730132c 100644 --- a/debian/patches/07_trust_dpkg-arch_over_uname-m.diff +++ b/debian/patches/07_trust_dpkg-arch_over_uname-m.diff @@ -1,5 +1,7 @@ author: Sune Vuorela -Reported to trolltech as N180631 - and task 181882 +qt-bugs@ issue : N180631 +Trolltech task ID : 181882 + --- a/configure +++ b/configure @@ -94,7 +94,50 @@ getQMakeConf() diff --git a/debian/patches/09_qmake_lflags_as-needed.diff b/debian/patches/09_qmake_lflags_as-needed.diff index 4a191bf..93a9ebf 100644 --- a/debian/patches/09_qmake_lflags_as-needed.diff +++ b/debian/patches/09_qmake_lflags_as-needed.diff @@ -5,7 +5,7 @@ Bug reported to Trolltech. --- a/configure +++ b/configure -@@ -463,6 +463,8 @@ mkdir -p "$outpath/config.tests" +@@ -495,6 +495,8 @@ mkdir -p "$outpath/config.tests" rm -f "$outpath/config.tests/.qmake.cache" cp "$QMAKE_VARS_FILE" "$outpath/config.tests/.qmake.cache" diff --git a/debian/patches/12_fix_qmake_pkgconfig.diff b/debian/patches/12_fix_qmake_pkgconfig.diff deleted file mode 100644 index 1535dce..0000000 --- a/debian/patches/12_fix_qmake_pkgconfig.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- a/qmake/generators/unix/unixmake2.cpp -+++ b/qmake/generators/unix/unixmake2.cpp -@@ -1434,6 +1434,8 @@ UnixMakefileGenerator::writePkgConfigFil - pkgConfiglibName = "-l" + lname.left(lname.length()-Option::libtool_ext.length()); - } - t << pkgConfiglibDir << " " << pkgConfiglibName << " "; -+ t << endl; -+ t << "Libs.private: "; - for(QStringList::ConstIterator it = libs.begin(); it != libs.end(); ++it) { - t << project->values((*it)).join(" ") << " "; - } diff --git a/debian/patches/14_add_libraries_to_gui_build_where_actually_needed.diff b/debian/patches/14_add_libraries_to_gui_build_where_actually_needed.diff index aa988de..1c10c7b 100644 --- a/debian/patches/14_add_libraries_to_gui_build_where_actually_needed.diff +++ b/debian/patches/14_add_libraries_to_gui_build_where_actually_needed.diff @@ -1,6 +1,6 @@ --- a/src/gui/kernel/kernel.pri +++ b/src/gui/kernel/kernel.pri -@@ -141,6 +141,8 @@ embedded { +@@ -146,6 +146,8 @@ embedded { HEADERS += \ kernel/qeventdispatcher_glib_qws_p.h QMAKE_CXXFLAGS += $$QT_CFLAGS_GLIB @@ -11,9 +11,9 @@ --- a/src/gui/painting/painting.pri +++ b/src/gui/painting/painting.pri -@@ -63,6 +63,8 @@ SOURCES += \ - painting/qpathclipper.cpp \ - painting/qmemrotate.cpp +@@ -78,6 +78,8 @@ SOURCES += \ + painting/qtextureglyphcache.cpp \ + painting/qtransform.cpp \ +LIBS += -lz + diff --git a/debian/patches/15_fix_qmake_makefile_generation.diff b/debian/patches/15_fix_qmake_makefile_generation.diff index 17f810b..0ea1af5 100644 --- a/debian/patches/15_fix_qmake_makefile_generation.diff +++ b/debian/patches/15_fix_qmake_makefile_generation.diff @@ -1,6 +1,6 @@ --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp -@@ -2328,7 +2328,7 @@ MakefileGenerator::writeSubTargets(QText +@@ -2329,7 +2329,7 @@ MakefileGenerator::writeSubTargets(QText QString mkfile = subtarget->makefile; if(!in_directory.isEmpty()) diff --git a/debian/patches/16_hide_std_symbols_on_qtwebkit.diff b/debian/patches/16_hide_std_symbols_on_qtwebkit.diff index 3ecbd99..c54b5ba 100644 --- a/debian/patches/16_hide_std_symbols_on_qtwebkit.diff +++ b/debian/patches/16_hide_std_symbols_on_qtwebkit.diff @@ -1,13 +1,13 @@ --- a/src/3rdparty/webkit/WebKit.pri +++ b/src/3rdparty/webkit/WebKit.pri -@@ -27,6 +27,7 @@ CONFIG(release) { +@@ -26,6 +26,7 @@ CONFIG(release) { + BASE_DIR = $$PWD - qt-port:INCLUDEPATH += \ - $$PWD/WebKit/qt/Api -+qt-port:QMAKE_LFLAGS += -Wl,--version-script,$$BASE_DIR/symbols.filter - gtk-port:INCLUDEPATH += \ - $$BASE_DIR/WebCore/platform/gtk \ - $$BASE_DIR/WebCore/platform/network/curl \ + INCLUDEPATH += $$PWD/WebKit/qt/Api ++QMAKE_LFLAGS += -Wl,--version-script,$$BASE_DIR/symbols.filter + + # + # For builds inside Qt we interpret the output rule and the input of each extra compiler manually --- /dev/null +++ b/src/3rdparty/webkit/symbols.filter @@ -0,0 +1,5 @@ diff --git a/debian/patches/17_add_postgresql_8.3_support.diff b/debian/patches/17_add_postgresql_8.3_support.diff index 7edc391..889ad50 100644 --- a/debian/patches/17_add_postgresql_8.3_support.diff +++ b/debian/patches/17_add_postgresql_8.3_support.diff @@ -2,7 +2,7 @@ Enable PostgreSQL 8.3 support. --- a/src/sql/drivers/psql/qsql_psql.cpp +++ b/src/sql/drivers/psql/qsql_psql.cpp -@@ -633,9 +633,12 @@ static QPSQLDriver::Protocol getPSQLVers +@@ -632,9 +632,12 @@ static QPSQLDriver::Protocol getPSQLVers serverVersion = QPSQLDriver::Version81; break; case 2: @@ -16,7 +16,7 @@ Enable PostgreSQL 8.3 support. } break; default: -@@ -916,6 +919,7 @@ QSqlIndex QPSQLDriver::primaryIndex(cons +@@ -915,6 +918,7 @@ QSqlIndex QPSQLDriver::primaryIndex(cons case QPSQLDriver::Version8: case QPSQLDriver::Version81: case QPSQLDriver::Version82: @@ -24,7 +24,7 @@ Enable PostgreSQL 8.3 support. stmt = QLatin1String("SELECT pg_attribute.attname, pg_attribute.atttypid::int, " "pg_class.relname " "FROM pg_attribute, pg_class " -@@ -989,6 +993,7 @@ QSqlRecord QPSQLDriver::record(const QSt +@@ -988,6 +992,7 @@ QSqlRecord QPSQLDriver::record(const QSt case QPSQLDriver::Version8: case QPSQLDriver::Version81: case QPSQLDriver::Version82: @@ -34,7 +34,7 @@ Enable PostgreSQL 8.3 support. "pg_attrdef.adsrc " --- a/src/sql/drivers/psql/qsql_psql.h +++ b/src/sql/drivers/psql/qsql_psql.h -@@ -100,7 +100,8 @@ public: +@@ -99,7 +99,8 @@ public: Version74 = 10, Version8 = 11, Version81 = 12, diff --git a/debian/patches/18_enable_qt3support_qtwebkit_debug_info.diff b/debian/patches/18_enable_qt3support_qtwebkit_debug_info.diff new file mode 100644 index 0000000..f07b2ad --- /dev/null +++ b/debian/patches/18_enable_qt3support_qtwebkit_debug_info.diff @@ -0,0 +1,26 @@ +author: Fathi Boudra <fabo@debian.org> + +On Qt >= 4.5, debug info are disabled for Qt3Support and QtWebkit. +This patch enable them. + +--- a/src/3rdparty/webkit/WebCore/WebCore.pro ++++ b/src/3rdparty/webkit/WebCore/WebCore.pro +@@ -2030,9 +2030,3 @@ HEADERS += $$WEBKIT_API_HEADERS + } + } + +-CONFIG(QTDIR_build):isEqual(QT_MAJOR_VERSION, 4):greaterThan(QT_MINOR_VERSION, 4) { +- # start with 4.5 +- CONFIG -= separate_debug_info +- CONFIG += no_debug_info +-} +- +--- a/src/qt3support/qt3support.pro ++++ b/src/qt3support/qt3support.pro +@@ -34,6 +34,3 @@ MOCDIR = .moc + + *-g++*: QMAKE_CXXFLAGS += -fno-strict-aliasing + +-CONFIG -= separate_debug_info +-CONFIG += no_debug_info +- diff --git a/debian/patches/19_install_qdoc3.diff b/debian/patches/19_install_qdoc3.diff new file mode 100644 index 0000000..c86bcb3 --- /dev/null +++ b/debian/patches/19_install_qdoc3.diff @@ -0,0 +1,21 @@ +--- a/tools/qdoc3/qdoc3.pro ++++ b/tools/qdoc3/qdoc3.pro +@@ -106,3 +106,8 @@ win32 { + QT_WINCONFIG = debug + } + } ++ ++TARGET = qdoc3 ++target.path = $$[QT_INSTALL_BINS] ++INSTALLS += target ++ +--- a/tools/tools.pro ++++ b/tools/tools.pro +@@ -13,6 +13,7 @@ no-png { + SUBDIRS += designer + } + SUBDIRS += linguist ++ SUBDIRS += qdoc3 + wince*: SUBDIRS = qtestlib designer + unix:!mac:!embedded:contains(QT_CONFIG, qt3support):SUBDIRS += qtconfig + win32:!wince*:!contains(QT_EDITION, OpenSource|Console):SUBDIRS += activeqt diff --git a/debian/patches/20_fix_ftbfs_callgrindChildExitCode.diff b/debian/patches/20_fix_ftbfs_callgrindChildExitCode.diff new file mode 100644 index 0000000..48480fa --- /dev/null +++ b/debian/patches/20_fix_ftbfs_callgrindChildExitCode.diff @@ -0,0 +1,28 @@ +--- a/src/testlib/qtestcase.cpp ++++ b/src/testlib/qtestcase.cpp +@@ -1359,6 +1359,9 @@ int QTest::qExec(QObject *testObject, in + QBenchmarkGlobalData benchmarkData; + QBenchmarkGlobalData::current = &benchmarkData; + ++#ifdef QTESTLIB_USE_VALGRIND ++ int callgrindChildExitCode = 0; ++#endif + + #ifdef Q_WS_MAC + bool macNeedsActivate = qApp && qstrcmp(qApp->metaObject()->className(), "QApplicaion"); +@@ -1411,7 +1414,6 @@ int QTest::qExec(QObject *testObject, in + QTestResult::setCurrentTestObject(metaObject->className()); + qParseArgs(argc, argv); + #ifdef QTESTLIB_USE_VALGRIND +- int callgrindChildExitCode; + if (QBenchmarkGlobalData::current->mode() == QBenchmarkGlobalData::CallgrindParentProcess) { + const QStringList origAppArgs(QCoreApplication::arguments()); + if (!QBenchmarkValgrindUtils::rerunThroughCallgrind(origAppArgs, callgrindChildExitCode)) +@@ -1436,6 +1438,7 @@ int QTest::qExec(QObject *testObject, in + QTestResult::setCurrentTestFunction(0); + } + ++ QTestLog::stopLogging(); + #ifdef QT_MAC_USE_COCOA + if (macNeedsActivate) { + IOPMAssertionRelease(powerID); diff --git a/debian/patches/20_mips_atomic_ops.diff b/debian/patches/20_mips_atomic_ops.diff deleted file mode 100644 index 11b7fb2..0000000 --- a/debian/patches/20_mips_atomic_ops.diff +++ /dev/null @@ -1,92 +0,0 @@ -author: Thiemo Seufer <ths@debian.org> - -Fix compilation for Linux MIPS-I code. - ---- a/src/corelib/arch/mips/qatomic32.s -+++ b/src/corelib/arch/mips/qatomic32.s -@@ -7,10 +7,12 @@ - .ent q_atomic_test_and_set_int - .set mips2 - q_atomic_test_and_set_int: -+ .set mips2 - 1: ll $8,0($4) - bne $8,$5,2f - move $2,$6 - sc $2,0($4) -+ .set mips0 - beqz $2,1b - nop - jr $31 -@@ -24,6 +26,7 @@ q_atomic_test_and_set_int: - .ent q_atomic_test_and_set_acquire_int - .set mips2 - q_atomic_test_and_set_acquire_int: -+ .set mips2 - 1: ll $8,0($4) - bne $8,$5,2f - move $2,$6 -@@ -33,6 +36,7 @@ q_atomic_test_and_set_acquire_int: - jr $31 - nop - 2: sync -+ .set mips0 - jr $31 - move $2,$0 - .set mips0 -@@ -42,11 +46,13 @@ q_atomic_test_and_set_acquire_int: - .ent q_atomic_test_and_set_release_int - .set mips2 - q_atomic_test_and_set_release_int: -+ .set mips2 - sync - 1: ll $8,0($4) - bne $8,$5,2f - move $2,$6 - sc $2,0($4) -+ .set mips0 - beqz $2,1b - nop - jr $31 -@@ -60,10 +66,12 @@ q_atomic_test_and_set_release_int: - .ent q_atomic_test_and_set_ptr - .set mips2 - q_atomic_test_and_set_ptr: -+ .set mips2 - 1: ll $8,0($4) - bne $8,$5,2f - move $2,$6 - sc $2,0($4) -+ .set mips0 - beqz $2,1b - nop - jr $31 -@@ -77,6 +85,7 @@ q_atomic_test_and_set_ptr: - .ent q_atomic_test_and_set_acquire_ptr - .set mips2 - q_atomic_test_and_set_acquire_ptr: -+ .set mips2 - 1: ll $8,0($4) - bne $8,$5,2f - move $2,$6 -@@ -86,6 +95,7 @@ q_atomic_test_and_set_acquire_ptr: - jr $31 - nop - 2: sync -+ .set mips0 - jr $31 - move $2,$0 - .set mips0 -@@ -95,11 +105,13 @@ q_atomic_test_and_set_acquire_ptr: - .ent q_atomic_test_and_set_release_ptr - .set mips2 - q_atomic_test_and_set_release_ptr: -+ .set mips2 - sync - 1: ll $8,0($4) - bne $8,$5,2f - move $2,$6 - sc $2,0($4) -+ .set mips0 - beqz $2,1b - nop - jr $31 diff --git a/debian/patches/21_fix_ppc_build.diff b/debian/patches/21_fix_ppc_build.diff new file mode 100644 index 0000000..5f4a12b --- /dev/null +++ b/debian/patches/21_fix_ppc_build.diff @@ -0,0 +1,11 @@ +--- a/src/corelib/arch/qatomic_powerpc.h ++++ b/src/corelib/arch/qatomic_powerpc.h +@@ -188,7 +188,7 @@ inline bool QBasicAtomicInt::testAndSetR + "lwarx %[result]," _Q_VALUE "\n" + "xor. %[result], %[result], %[expectedValue]\n" + "bne $+12\n" +- "stwcx. %[newValue],0,%[_q_value]\n" ++ "stwcx. %[newValue]," _Q_VALUE "\n" + "bne- $-16\n" + : [result] "=&r" (result), + _Q_VALUE_MEMORY_OPERAND diff --git a/debian/patches/22_fix_qiconvcodec.diff b/debian/patches/22_fix_qiconvcodec.diff new file mode 100644 index 0000000..42dad6a --- /dev/null +++ b/debian/patches/22_fix_qiconvcodec.diff @@ -0,0 +1,68 @@ +--- a/src/corelib/codecs/qiconvcodec.cpp ++++ b/src/corelib/codecs/qiconvcodec.cpp +@@ -83,6 +83,8 @@ static Ptr_iconv_close ptr_iconv_close = + + QT_BEGIN_NAMESPACE + ++extern bool qt_locale_initialized; ++ + QIconvCodec::QIconvCodec() + : utf16Codec(0) + { +@@ -182,8 +184,9 @@ QString QIconvCodec::convertToUnicode(co + } + } else { + QThreadStorage<QIconvCodec::IconvState *> *ts = toUnicodeState(); +- if (!ts) { ++ if (!qt_locale_initialized || !ts) { + // we're running after the Q_GLOBAL_STATIC has been deleted ++ // or before the QCoreApplication initialization + // bad programmer, no cookie for you + return QString::fromLatin1(chars, len); + } +@@ -305,9 +308,14 @@ QByteArray QIconvCodec::convertFromUnico + #endif + + QThreadStorage<QIconvCodec::IconvState *> *ts = fromUnicodeState(); +- if (!ts) { ++ if (!qt_locale_initialized || !ts) { + // we're running after the Q_GLOBAL_STATIC has been deleted ++ // or before the QCoreApplication initialization + // bad programmer, no cookie for you ++ if (!len) ++ // this is a special case - zero-sized string should be ++ // translated to empty but not-null QByteArray. ++ return QByteArray(""); + return QString::fromRawData(uc, len).toLatin1(); + } + IconvState *&state = ts->localData(); +@@ -384,8 +392,8 @@ QByteArray QIconvCodec::convertFromUnico + // fall through + case EINVAL: + { +- ++inBytes; +- --inBytesLeft; ++ inBytes += sizeof(QChar); ++ inBytesLeft -= sizeof(QChar); + break; + } + case E2BIG: +--- a/src/corelib/kernel/qcoreapplication.cpp ++++ b/src/corelib/kernel/qcoreapplication.cpp +@@ -163,6 +163,8 @@ void Q_CORE_EXPORT qt_call_post_routines + bool QCoreApplicationPrivate::is_app_running = false; + // app closing down if true + bool QCoreApplicationPrivate::is_app_closing = false; ++// initialized in qcoreapplication and in qtextstream autotest when setlocale is called. ++Q_AUTOTEST_EXPORT bool qt_locale_initialized = false; + + + Q_CORE_EXPORT uint qGlobalPostedEventsCount() +@@ -440,6 +442,7 @@ void QCoreApplication::init() + + #ifdef Q_OS_UNIX + setlocale(LC_ALL, ""); // use correct char set mapping ++ qt_locale_initialized = true; + #endif + + #ifdef Q_WS_WIN diff --git a/debian/patches/30_webkit_unaligned_access.diff b/debian/patches/30_webkit_unaligned_access.diff index 8bc9211..57cb5a7 100644 --- a/debian/patches/30_webkit_unaligned_access.diff +++ b/debian/patches/30_webkit_unaligned_access.diff @@ -14,7 +14,7 @@ a real problem yet. --- a/src/3rdparty/webkit/JavaScriptCore/wtf/FastMalloc.cpp +++ b/src/3rdparty/webkit/JavaScriptCore/wtf/FastMalloc.cpp -@@ -1267,14 +1267,14 @@ static TCMalloc_Central_FreeListPadded c +@@ -1936,13 +1936,13 @@ static TCMalloc_Central_FreeListPadded c // Page-level allocator static SpinLock pageheap_lock = SPINLOCK_INITIALIZER; @@ -24,16 +24,15 @@ a real problem yet. // Avoid extra level of indirection by making "pageheap" be just an alias // of pageheap_memory. - typedef union { - void* m_memory; + uint64_t* m_memory; - TCMalloc_PageHeap m_pageHeap; + TCMalloc_PageHeap* m_pageHeap; } PageHeapUnion; --- a/src/3rdparty/webkit/JavaScriptCore/wtf/ListHashSet.h +++ b/src/3rdparty/webkit/JavaScriptCore/wtf/ListHashSet.h -@@ -122,7 +122,7 @@ namespace WTF { +@@ -127,7 +127,7 @@ namespace WTF { : m_freeList(pool()) , m_isDoneWithInitialFreeList(false) { @@ -42,7 +41,7 @@ a real problem yet. } Node* allocate() -@@ -166,7 +166,7 @@ namespace WTF { +@@ -171,7 +171,7 @@ namespace WTF { } private: @@ -51,7 +50,7 @@ a real problem yet. Node* pastPool() { return pool() + m_poolSize; } bool inPool(Node* node) -@@ -177,10 +177,7 @@ namespace WTF { +@@ -182,10 +182,7 @@ namespace WTF { Node* m_freeList; bool m_isDoneWithInitialFreeList; static const size_t m_poolSize = 256; @@ -65,8 +64,8 @@ a real problem yet. template<typename ValueArg> struct ListHashSetNode { --- a/src/3rdparty/webkit/JavaScriptCore/wtf/Platform.h +++ b/src/3rdparty/webkit/JavaScriptCore/wtf/Platform.h -@@ -167,6 +167,23 @@ - #define WTF_PLATFORM_X86_64 1 +@@ -233,6 +233,23 @@ + # endif #endif +/* PLATFORM(SPARC) */ @@ -89,32 +88,20 @@ a real problem yet. /* Compiler */ /* COMPILER(MSVC) */ ---- a/src/3rdparty/webkit/JavaScriptCore/wtf/Vector.h -+++ b/src/3rdparty/webkit/JavaScriptCore/wtf/Vector.h -@@ -355,8 +355,7 @@ namespace WTF { - static const size_t m_inlineBufferSize = inlineCapacity * sizeof(T); - T* inlineBuffer() { return reinterpret_cast<T*>(&m_inlineBuffer); } - -- // FIXME: Nothing guarantees this buffer is appropriately aligned to hold objects of type T. -- char m_inlineBuffer[m_inlineBufferSize]; -+ uint64_t m_inlineBuffer[(m_inlineBufferSize + sizeof(uint64_t) - 1) / sizeof(uint64_t)]; - }; - - template<typename T, size_t inlineCapacity = 0> ---- a/src/3rdparty/webkit/WebCore/platform/AtomicString.cpp -+++ b/src/3rdparty/webkit/WebCore/platform/AtomicString.cpp -@@ -104,7 +104,7 @@ struct UCharBufferTranslator { - if (strLength != bufLength) - return false; +--- a/src/3rdparty/webkit/WebCore/platform/text/AtomicString.cpp ++++ b/src/3rdparty/webkit/WebCore/platform/text/AtomicString.cpp +@@ -101,7 +101,7 @@ static inline bool equal(StringImpl* str + if (string->length() != length) + return false; -#if PLATFORM(ARM) +#if PLATFORM(ARM) || PLATFORM(SPARC) - const UChar* strChars = str->characters(); - const UChar* bufChars = buf.s; - ---- a/src/3rdparty/webkit/WebCore/platform/StringHash.h -+++ b/src/3rdparty/webkit/WebCore/platform/StringHash.h -@@ -44,6 +44,15 @@ namespace WTF { + const UChar* stringCharacters = string->characters(); + for (unsigned i = 0; i != length; ++i) { + if (*stringCharacters++ != *characters++) +--- a/src/3rdparty/webkit/WebCore/platform/text/StringHash.h ++++ b/src/3rdparty/webkit/WebCore/platform/text/StringHash.h +@@ -47,6 +47,15 @@ namespace WebCore { if (aLength != bLength) return false; @@ -130,11 +117,11 @@ a real problem yet. const uint32_t* aChars = reinterpret_cast<const uint32_t*>(a->characters()); const uint32_t* bChars = reinterpret_cast<const uint32_t*>(b->characters()); -@@ -56,6 +65,7 @@ namespace WTF { +@@ -59,6 +68,7 @@ namespace WebCore { return false; return true; +#endif } - }; - + + static unsigned hash(const RefPtr<StringImpl>& key) { return key->hash(); } diff --git a/debian/patches/40_alpha_ice.diff b/debian/patches/40_alpha_ice.diff index 621bc8a..45a0a9d 100644 --- a/debian/patches/40_alpha_ice.diff +++ b/debian/patches/40_alpha_ice.diff @@ -1,6 +1,6 @@ --- a/src/corelib/global/qlibraryinfo.cpp +++ b/src/corelib/global/qlibraryinfo.cpp -@@ -72,14 +72,7 @@ class QLibraryInfoPrivate +@@ -71,14 +71,7 @@ class QLibraryInfoPrivate { public: static QSettings *findConfiguration(); @@ -16,7 +16,7 @@ static QSettings *configuration() { #ifdef QT_NO_THREAD -@@ -98,6 +91,15 @@ public: +@@ -97,6 +90,15 @@ public: } }; @@ -34,7 +34,7 @@ settings = QLibraryInfoPrivate::findConfiguration(); --- a/src/corelib/tools/qhash.h +++ b/src/corelib/tools/qhash.h -@@ -493,7 +493,7 @@ Q_INLINE_TEMPLATE void QHash<Key, T>::de +@@ -492,7 +492,7 @@ Q_INLINE_TEMPLATE void QHash<Key, T>::de } template <class Key, class T> diff --git a/debian/patches/41_disable_opengl_visibility.diff b/debian/patches/41_disable_opengl_visibility.diff index 6557b2d..0580944 100644 --- a/debian/patches/41_disable_opengl_visibility.diff +++ b/debian/patches/41_disable_opengl_visibility.diff @@ -2,11 +2,11 @@ temporary fix because of alpha, has to be dropped as soon as gcc's bug is fixed. --- a/src/opengl/opengl.pro +++ b/src/opengl/opengl.pro -@@ -6,6 +6,7 @@ DEFINES += QT_NO_USING_NAMESPACE - win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x63000000 - solaris-cc*:QMAKE_CXXFLAGS_RELEASE -= -O2 +@@ -53,6 +53,7 @@ contains(QT_CONFIG, opengles2) { + gl2paintengineex/qpaintengineex_opengl2_p.h + } +QMAKE_CXXFLAGS_HIDESYMS -= -fvisibility-inlines-hidden - include(../qbase.pri) - + x11 { + contains(QT_CONFIG, opengles1)|contains(QT_CONFIG, opengles1cl)|contains(QT_CONFIG, opengles2) { diff --git a/debian/patches/50_kfreebsd_build_fix.diff b/debian/patches/50_kfreebsd_build_fix.diff index 03a9cb4..4a4932b 100644 --- a/debian/patches/50_kfreebsd_build_fix.diff +++ b/debian/patches/50_kfreebsd_build_fix.diff @@ -4,7 +4,7 @@ Fixes FTBFS on GNU/kFreeBSD by creating new Q_OS_GLIBC. --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h -@@ -204,6 +204,12 @@ namespace QT_NAMESPACE {} +@@ -208,6 +208,12 @@ namespace QT_NAMESPACE {} # define Q_OS_RELIANT #elif defined(__linux__) || defined(__linux) # define Q_OS_LINUX @@ -17,7 +17,7 @@ Fixes FTBFS on GNU/kFreeBSD by creating new Q_OS_GLIBC. #elif defined(__FreeBSD__) || defined(__DragonFly__) # define Q_OS_FREEBSD # define Q_OS_BSD4 -@@ -224,8 +230,6 @@ namespace QT_NAMESPACE {} +@@ -228,8 +234,6 @@ namespace QT_NAMESPACE {} # define Q_OS_AIX #elif defined(__Lynx__) # define Q_OS_LYNX @@ -28,7 +28,7 @@ Fixes FTBFS on GNU/kFreeBSD by creating new Q_OS_GLIBC. #elif defined(__QNXNTO__) --- a/src/corelib/plugin/qlibrary.cpp +++ b/src/corelib/plugin/qlibrary.cpp -@@ -286,13 +286,13 @@ static bool qt_parse_pattern(const char +@@ -285,13 +285,13 @@ static bool qt_parse_pattern(const char #if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) && !defined(QT_NO_PLUGIN_CHECK) @@ -46,7 +46,7 @@ Fixes FTBFS on GNU/kFreeBSD by creating new Q_OS_GLIBC. const char *pattern, ulong p_len) --- a/src/corelib/tools/qlocale.cpp +++ b/src/corelib/tools/qlocale.cpp -@@ -74,7 +74,7 @@ QT_END_NAMESPACE +@@ -73,7 +73,7 @@ QT_END_NAMESPACE #include <qdebug.h> #include <time.h> @@ -55,7 +55,7 @@ Fixes FTBFS on GNU/kFreeBSD by creating new Q_OS_GLIBC. # include <fenv.h> #endif -@@ -6253,7 +6253,7 @@ Q_CORE_EXPORT char *qdtoa ( double d, in +@@ -6536,7 +6536,7 @@ Q_CORE_EXPORT char *qdtoa ( double d, in _control87(MCW_EM, MCW_EM); #endif @@ -64,7 +64,7 @@ Fixes FTBFS on GNU/kFreeBSD by creating new Q_OS_GLIBC. fenv_t envp; feholdexcept(&envp); #endif -@@ -6269,7 +6269,7 @@ Q_CORE_EXPORT char *qdtoa ( double d, in +@@ -6552,7 +6552,7 @@ Q_CORE_EXPORT char *qdtoa ( double d, in #endif //_M_X64 #endif //Q_OS_WIN diff --git a/debian/patches/71_hppa_unaligned_access_fix_458133.diff b/debian/patches/71_hppa_unaligned_access_fix_458133.diff index 4d22cbc..78a0a08 100644 --- a/debian/patches/71_hppa_unaligned_access_fix_458133.diff +++ b/debian/patches/71_hppa_unaligned_access_fix_458133.diff @@ -4,7 +4,7 @@ Fix unaligned access on hppa --- a/src/3rdparty/sha1/sha1.cpp +++ b/src/3rdparty/sha1/sha1.cpp -@@ -145,10 +145,10 @@ static inline void sha1ProcessChunk(Sha1 +@@ -144,10 +144,10 @@ static inline void sha1ProcessChunk(Sha1 quint32 d = state->h3; quint32 e = state->h4; @@ -18,7 +18,7 @@ Fix unaligned access on hppa for (int i = 0; i < 16; ++i) chunk->words[i] = qFromBigEndian(chunk->words[i]); -@@ -184,7 +184,7 @@ static inline void sha1ProcessChunk(Sha1 +@@ -183,7 +183,7 @@ static inline void sha1ProcessChunk(Sha1 // Wipe variables #ifdef SHA1_WIPE_VARIABLES a = b = c = d = e = 0; diff --git a/debian/patches/80_hurd_max_path.diff b/debian/patches/80_hurd_max_path.diff index a6983cc..0a28da7 100644 --- a/debian/patches/80_hurd_max_path.diff +++ b/debian/patches/80_hurd_max_path.diff @@ -2,7 +2,7 @@ author: Brian Nelson <pyro@debian.org> --- a/src/corelib/io/qfsfileengine_unix.cpp +++ b/src/corelib/io/qfsfileengine_unix.cpp -@@ -60,6 +60,10 @@ +@@ -59,6 +59,10 @@ QT_BEGIN_NAMESPACE diff --git a/debian/patches/series b/debian/patches/series index e1b1327..79313b2 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,25 +1,13 @@ # qt-copy patches -0167-fix-group-reading.diff 0180-window-role.diff 0195-compositing-properties.diff -0203-qtexthtmlparser-link-color.diff 0209-prevent-qt-mixing.diff 0216-allow-isystem-for-headers.diff -0224-fast-qpixmap-fill.diff 0225-invalidate-tabbar-geometry-on-refresh.patch -0226-qtreeview-column_resize_when_needed.diff 0234-fix-mysql-threaded.diff -0238-fix-qt-qttabbar-size.diff 0245-fix-randr-changes-detecting.diff -0248-fix-qwidget-scroll-slowness.diff -0249-webkit-stale-frame-pointer.diff -0254-fix-qgraphicsproxywidget-deletion-crash.diff 0255-qtreeview-selection-columns-hidden.diff -0256-fix-recursive-backingstore-sync-crash.diff -0257-qurl-validate-speedup.diff -0260-fix-qgraphicswidget-deletionclearFocus.diff -0261-sync-before-reset-errorhandler.patch -0262-fix-treeview-animation-crash.diff +0273-odbc-64bit-compile.diff # debian patches 01_qmake_for_debian.diff @@ -30,12 +18,15 @@ 07_trust_dpkg-arch_over_uname-m.diff 09_qmake_lflags_as-needed.diff 10_config_tests_fixes.diff -12_fix_qmake_pkgconfig.diff 14_add_libraries_to_gui_build_where_actually_needed.diff 15_fix_qmake_makefile_generation.diff 16_hide_std_symbols_on_qtwebkit.diff 17_add_postgresql_8.3_support.diff -20_mips_atomic_ops.diff +18_enable_qt3support_qtwebkit_debug_info.diff +19_install_qdoc3.diff +20_fix_ftbfs_callgrindChildExitCode.diff +21_fix_ppc_build.diff +22_fix_qiconvcodec.diff 30_webkit_unaligned_access.diff 40_alpha_ice.diff 41_disable_opengl_visibility.diff |