diff options
author | Michał Masłowski <mtjm@mtjm.eu> | 2012-12-10 18:30:22 +0100 |
---|---|---|
committer | Michał Masłowski <mtjm@mtjm.eu> | 2012-12-10 18:30:22 +0100 |
commit | 422ddbe135468a35d04170922ea3d25d18246aca (patch) | |
tree | 39b4d1c3999a4d3a24331974af195f58ede88e29 /libre | |
parent | 9c9dcb7ee95f321e5a4243792500f059231722cb (diff) | |
parent | 4aef0a374e20e36cf2bf6e779d93789d9a5791ae (diff) |
Merge branch 'master' of ssh://parabolagnulinux.org:1863/home/parabola/abslibre-pre-mips64el
Conflicts:
community/chicken/PKGBUILD
community/sqliteman/PKGBUILD
extra/exo/PKGBUILD
extra/pyqt/PKGBUILD
extra/sip/PKGBUILD
extra/tumbler/PKGBUILD
extra/xorg-server/PKGBUILD
Diffstat (limited to 'libre')
-rw-r--r-- | libre/chroottools/PKGBUILD | 4 | ||||
-rw-r--r-- | libre/kdebase-konqueror-libre/PKGBUILD | 12 | ||||
-rw-r--r-- | libre/kdebase-konqueror-libre/kde-baseapps-4.9.4-fix-bugs-311206-311246.diff | 232 | ||||
-rw-r--r-- | libre/libretools/PKGBUILD | 16 |
4 files changed, 246 insertions, 18 deletions
diff --git a/libre/chroottools/PKGBUILD b/libre/chroottools/PKGBUILD index 049f33286..90e0e4fd0 100644 --- a/libre/chroottools/PKGBUILD +++ b/libre/chroottools/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Luke Shumaker <lukeshu@sbcglobal.net> pkgname=chroottools -pkgver=20121128.6 +pkgver=20121202 pkgdesc='Chroot tools for Arch and Parabola package maintainers' url='http://projects.parabolagnulinux.org/packages/chroottools.git/' license=('GPL') @@ -25,4 +25,4 @@ package() { make PREFIX=/usr DESTDIR=${pkgdir} install } -md5sums=('32f0cc7fe772a946d8184125011154e1') +md5sums=('68bb7fb792c55031ad68a970b65ab793') diff --git a/libre/kdebase-konqueror-libre/PKGBUILD b/libre/kdebase-konqueror-libre/PKGBUILD index f47b71243..26b14ff86 100644 --- a/libre/kdebase-konqueror-libre/PKGBUILD +++ b/libre/kdebase-konqueror-libre/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 172214 2012-12-02 07:43:07Z andrea $ +# $Id: PKGBUILD 172988 2012-12-08 05:56:10Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> # Maintainer (Parabola): Michał Masłowski <mtjm@mtjm.eu> @@ -7,15 +7,17 @@ _pkgname='kdebase-konqueror' pkgname='kdebase-konqueror-libre' pkgver=4.9.4 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64' 'mips64el') url="http://kde.org/applications/internet/konqueror/" license=('GPL' 'LGPL' 'FDL') groups=('kde' 'kdebase') makedepends=('kdelibs' 'cmake' 'automoc4' 'tidyhtml') source=("http://download.kde.org/stable/${pkgver}/src/kde-baseapps-${pkgver}.tar.xz" + 'kde-baseapps-4.9.4-fix-bugs-311206-311246.diff' "konq-about-fsdg.diff") sha1sums=('b68e76766331272a45b1d897adf4c1928a11e747' + '998f1db2309744dd2c054aec3462a717bc107c2e' 'd6cbb53c04179b8180f9439eca156b7ff2e76b3a') pkgdesc='KDE File Manager & Web Browser (without Google and nonfree software recommendation)' depends=('kdebase-dolphin' 'kdebase-keditbookmarks') @@ -26,12 +28,14 @@ replaces=('kdebase-nsplugins' 'kdebase-konqueror') provides=("kdebase-konqueror=$pkgver") build() { - cd "${srcdir}"/kde-baseapps-${pkgver} + cd kde-baseapps-${pkgver} + patch -p1 -i "${srcdir}"/kde-baseapps-4.9.4-fix-bugs-311206-311246.diff # Don't recommend nonfree software or Google. patch -Np1 -i "${srcdir}/konq-about-fsdg.diff" - cd ${srcdir} + cd ../ + mkdir build cd build cmake ../kde-baseapps-${pkgver} \ diff --git a/libre/kdebase-konqueror-libre/kde-baseapps-4.9.4-fix-bugs-311206-311246.diff b/libre/kdebase-konqueror-libre/kde-baseapps-4.9.4-fix-bugs-311206-311246.diff new file mode 100644 index 000000000..9f328ec60 --- /dev/null +++ b/libre/kdebase-konqueror-libre/kde-baseapps-4.9.4-fix-bugs-311206-311246.diff @@ -0,0 +1,232 @@ +diff --git a/dolphin/src/kitemviews/kstandarditemlistwidget.cpp b/dolphin/src/kitemviews/kstandarditemlistwidget.cpp +index f92cab5..af16954 100644 +--- a/dolphin/src/kitemviews/kstandarditemlistwidget.cpp ++++ b/dolphin/src/kitemviews/kstandarditemlistwidget.cpp +@@ -193,7 +193,8 @@ KStandardItemListWidget::KStandardItemListWidget(KItemListWidgetInformant* infor + m_additionalInfoTextColor(), + m_overlay(), + m_rating(), +- m_roleEditor(0) ++ m_roleEditor(0), ++ m_oldRoleEditor(0) + { + } + +@@ -203,6 +204,7 @@ KStandardItemListWidget::~KStandardItemListWidget() + m_textInfo.clear(); + + delete m_roleEditor; ++ delete m_oldRoleEditor; + } + + void KStandardItemListWidget::setLayout(Layout layout) +@@ -609,13 +611,16 @@ void KStandardItemListWidget::editedRoleChanged(const QByteArray& current, const + this, SLOT(slotRoleEditingCanceled(int,QByteArray,QVariant))); + disconnect(m_roleEditor, SIGNAL(roleEditingFinished(int,QByteArray,QVariant)), + this, SLOT(slotRoleEditingFinished(int,QByteArray,QVariant))); +- // Do not delete the role editor using deleteLater() because we might be +- // inside a nested event loop which has been started by one of its event +- // handlers (contextMenuEvent() or drag&drop inside mouseMoveEvent()). +- m_roleEditor->deleteWhenIdle(); ++ m_oldRoleEditor = m_roleEditor; ++ m_roleEditor->hide(); + m_roleEditor = 0; + } + return; ++ } else if (m_oldRoleEditor) { ++ // Delete the old editor before constructing the new one to ++ // prevent a memory leak. ++ m_oldRoleEditor->deleteLater(); ++ m_oldRoleEditor = 0; + } + + Q_ASSERT(!m_roleEditor); +@@ -1267,21 +1272,19 @@ QRectF KStandardItemListWidget::roleEditingRect(const QByteArray& role) const + + void KStandardItemListWidget::closeRoleEditor() + { ++ disconnect(m_roleEditor, SIGNAL(roleEditingCanceled(int,QByteArray,QVariant)), ++ this, SLOT(slotRoleEditingCanceled(int,QByteArray,QVariant))); ++ disconnect(m_roleEditor, SIGNAL(roleEditingFinished(int,QByteArray,QVariant)), ++ this, SLOT(slotRoleEditingFinished(int,QByteArray,QVariant))); ++ + if (m_roleEditor->hasFocus()) { + // If the editing was not ended by a FocusOut event, we have + // to transfer the keyboard focus back to the KItemListContainer. + scene()->views()[0]->parentWidget()->setFocus(); + } + +- disconnect(m_roleEditor, SIGNAL(roleEditingCanceled(int,QByteArray,QVariant)), +- this, SLOT(slotRoleEditingCanceled(int,QByteArray,QVariant))); +- disconnect(m_roleEditor, SIGNAL(roleEditingFinished(int,QByteArray,QVariant)), +- this, SLOT(slotRoleEditingFinished(int,QByteArray,QVariant))); +- +- // Do not delete the role editor using deleteLater() because we might be +- // inside a nested event loop which has been started by one of its event +- // handlers (contextMenuEvent() or drag&drop inside mouseMoveEvent()). +- m_roleEditor->deleteWhenIdle(); ++ m_oldRoleEditor = m_roleEditor; ++ m_roleEditor->hide(); + m_roleEditor = 0; + } + +diff --git a/dolphin/src/kitemviews/kstandarditemlistwidget.h b/dolphin/src/kitemviews/kstandarditemlistwidget.h +index 787722d..386f60e 100644 +--- a/dolphin/src/kitemviews/kstandarditemlistwidget.h ++++ b/dolphin/src/kitemviews/kstandarditemlistwidget.h +@@ -241,6 +241,7 @@ private: + QPixmap m_rating; + + KItemListRoleEditor* m_roleEditor; ++ KItemListRoleEditor* m_oldRoleEditor; + + friend class KStandardItemListWidgetInformant; // Accesses private static methods to be able to + // share a common layout calculation +diff --git a/dolphin/src/kitemviews/private/kitemlistroleeditor.cpp b/dolphin/src/kitemviews/private/kitemlistroleeditor.cpp +index 78dbfe9..1e4b5fd 100644 +--- a/dolphin/src/kitemviews/private/kitemlistroleeditor.cpp ++++ b/dolphin/src/kitemviews/private/kitemlistroleeditor.cpp +@@ -26,9 +26,7 @@ KItemListRoleEditor::KItemListRoleEditor(QWidget *parent) : + KTextEdit(parent), + m_index(0), + m_role(), +- m_blockFinishedSignal(false), +- m_eventHandlingLevel(0), +- m_deleteAfterEventHandling(false) ++ m_blockFinishedSignal(false) + { + setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); +@@ -66,20 +64,6 @@ QByteArray KItemListRoleEditor::role() const + return m_role; + } + +-void KItemListRoleEditor::deleteWhenIdle() +-{ +- if (m_eventHandlingLevel > 0) { +- // We are handling an event at the moment. It could be that we +- // are in a nested event loop run by contextMenuEvent() or a +- // call of mousePressEvent() which results in drag&drop. +- // -> do not call deleteLater() to prevent a crash when we +- // return from the nested event loop. +- m_deleteAfterEventHandling = true; +- } else { +- deleteLater(); +- } +-} +- + bool KItemListRoleEditor::eventFilter(QObject* watched, QEvent* event) + { + if (watched == parentWidget() && event->type() == QEvent::Resize) { +@@ -91,42 +75,13 @@ bool KItemListRoleEditor::eventFilter(QObject* watched, QEvent* event) + + bool KItemListRoleEditor::event(QEvent* event) + { +- ++m_eventHandlingLevel; +- + if (event->type() == QEvent::FocusOut) { + QFocusEvent* focusEvent = static_cast<QFocusEvent*>(event); + if (focusEvent->reason() != Qt::PopupFocusReason) { + emitRoleEditingFinished(); + } + } +- +- const int result = KTextEdit::event(event); +- --m_eventHandlingLevel; +- +- if (m_deleteAfterEventHandling && m_eventHandlingLevel == 0) { +- // Schedule this object for deletion and make sure that we do not try +- // to deleteLater() again when the DeferredDelete event is received. +- deleteLater(); +- m_deleteAfterEventHandling = false; +- } +- +- return result; +-} +- +-bool KItemListRoleEditor::viewportEvent(QEvent* event) +-{ +- ++m_eventHandlingLevel; +- const bool result = KTextEdit::viewportEvent(event); +- --m_eventHandlingLevel; +- +- if (m_deleteAfterEventHandling && m_eventHandlingLevel == 0) { +- // Schedule this object for deletion and make sure that we do not try +- // to deleteLater() again when the DeferredDelete event is received. +- deleteLater(); +- m_deleteAfterEventHandling = false; +- } +- +- return result; ++ return KTextEdit::event(event); + } + + void KItemListRoleEditor::keyPressEvent(QKeyEvent* event) +@@ -144,8 +99,7 @@ void KItemListRoleEditor::keyPressEvent(QKeyEvent* event) + return; + case Qt::Key_Enter: + case Qt::Key_Return: +- // TODO: find a better way to fix the bug 309760 +- clearFocus(); // emitRoleEditingFinished(); results in a crash ++ emitRoleEditingFinished(); + event->accept(); + return; + default: +diff --git a/dolphin/src/kitemviews/private/kitemlistroleeditor.h b/dolphin/src/kitemviews/private/kitemlistroleeditor.h +index a2f7058..aa2c977 100644 +--- a/dolphin/src/kitemviews/private/kitemlistroleeditor.h ++++ b/dolphin/src/kitemviews/private/kitemlistroleeditor.h +@@ -47,15 +47,6 @@ public: + void setRole(const QByteArray& role); + QByteArray role() const; + +- /** +- * Calls deleteLater() if no event is being handled at the moment. +- * Otherwise, the deletion is deferred until the event handling is +- * finished. This prevents that the deletion happens inside a nested +- * event loop which might be run in contextMenuEvent() or +- * mouseMoveEvent() because this would probably cause a crash. +- */ +- void deleteWhenIdle(); +- + virtual bool eventFilter(QObject* watched, QEvent* event); + + signals: +@@ -64,7 +55,6 @@ signals: + + protected: + virtual bool event(QEvent* event); +- virtual bool viewportEvent(QEvent* event); + virtual void keyPressEvent(QKeyEvent* event); + + private slots: +@@ -85,8 +75,6 @@ private: + int m_index; + QByteArray m_role; + bool m_blockFinishedSignal; +- int m_eventHandlingLevel; +- bool m_deleteAfterEventHandling; + }; + + #endif +diff --git a/dolphin/src/views/dolphinview.cpp b/dolphin/src/views/dolphinview.cpp +index 70a7394..0e97c5a 100644 +--- a/dolphin/src/views/dolphinview.cpp ++++ b/dolphin/src/views/dolphinview.cpp +@@ -1227,11 +1227,14 @@ void DolphinView::updateViewState() + + QSet<int> selectedItems = selectionManager->selectedItems(); + +- for (QList<KUrl>::iterator it = m_selectedUrls.begin(); it != m_selectedUrls.end(); ++it) { ++ QList<KUrl>::iterator it = m_selectedUrls.begin(); ++ while (it != m_selectedUrls.end()) { + const int index = m_model->index(*it); + if (index >= 0) { + selectedItems.insert(index); +- m_selectedUrls.erase(it); ++ it = m_selectedUrls.erase(it); ++ } else { ++ ++it; + } + } + diff --git a/libre/libretools/PKGBUILD b/libre/libretools/PKGBUILD index 01d835b1a..a5d718ad1 100644 --- a/libre/libretools/PKGBUILD +++ b/libre/libretools/PKGBUILD @@ -3,8 +3,8 @@ # Contributor: fauno <fauno@kiwwwi.com.ar> pkgbase=libretools -pkgname=(libretools libretools-pr libretools-mips64el) -pkgver=20121128.3 +pkgname=(libretools libretools-mips64el) +pkgver=20121209 pkgdesc="Programs for Parabola development" url="https://projects.parabolagnulinux.org/libretools.git/" license=('GPL3+' 'GPL2') @@ -12,7 +12,7 @@ license=('GPL3+' 'GPL2') pkgrel=1 arch=('any') groups=(base-devel) -depends=(openssh rsync git wget chroottools tokyocabinet) +depends=(openssh rsync git wget 'chroottools>=20121202' tokyocabinet) source=(https://projects.parabolagnulinux.org/$pkgbase.git/snapshot/$pkgbase-$pkgver.tar) build() { @@ -29,14 +29,6 @@ package_libretools() { install -Dm755 rePKGBUILD.proto ${pkgdir}/usr/share/pacman/rePKGBUILD.proto } -package_libretools-pr() { - pkgdesc="Scripts for Parabola development (pr)" - backup=('etc/libretools.d/prtools.conf') - - cd "$srcdir/$pkgbase-$pkgver" - make install-libretools-pr DESTDIR="$pkgdir" -} - package_libretools-mips64el() { pkgdesc="Scripts for Parabola development (for mips64el architecture)" backup=('etc/libretools.d/mips64el.conf') @@ -45,4 +37,4 @@ package_libretools-mips64el() { make install-libretools-mips64el DESTDIR="$pkgdir" } -md5sums=('510f69ff043095b60f8a23ee28fd0a16') +md5sums=('0a9bea328886b7745a513fa322f16d88') |