summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregorio Guidi <greg_g@gentoo.org>2005-12-05 16:46:04 +0000
committerGregorio Guidi <greg_g@gentoo.org>2005-12-05 16:46:04 +0000
commit22804d9b002db0fa0ee138b374d9714172d43b0e (patch)
tree10c43b14c5ae03a78a558c07a15ef442ed797635 /kde-base/kmail/files
parentMade warning notice about sys-apps/miscfiles conditional. (diff)
downloadhistorical-22804d9b002db0fa0ee138b374d9714172d43b0e.tar.gz
historical-22804d9b002db0fa0ee138b374d9714172d43b0e.tar.bz2
historical-22804d9b002db0fa0ee138b374d9714172d43b0e.zip
Add patch to fix crash when using filters (#114118).
Package-Manager: portage-2.0.51.22-r3
Diffstat (limited to 'kde-base/kmail/files')
-rw-r--r--kde-base/kmail/files/digest-kmail-3.5.0-r11
-rw-r--r--kde-base/kmail/files/kdepim-3.5.0-filter-crash.patch75
2 files changed, 76 insertions, 0 deletions
diff --git a/kde-base/kmail/files/digest-kmail-3.5.0-r1 b/kde-base/kmail/files/digest-kmail-3.5.0-r1
new file mode 100644
index 000000000000..8cfd9db2e7e4
--- /dev/null
+++ b/kde-base/kmail/files/digest-kmail-3.5.0-r1
@@ -0,0 +1 @@
+MD5 e19a2a40e422ecd483884ce6e9ac8925 kdepim-3.5.0.tar.bz2 12865623
diff --git a/kde-base/kmail/files/kdepim-3.5.0-filter-crash.patch b/kde-base/kmail/files/kdepim-3.5.0-filter-crash.patch
new file mode 100644
index 000000000000..0120d7afc3a2
--- /dev/null
+++ b/kde-base/kmail/files/kdepim-3.5.0-filter-crash.patch
@@ -0,0 +1,75 @@
+diff -Nur kdepim-3.5.0.orig/kmail/kmcommands.cpp kdepim-3.5.0/kmail/kmcommands.cpp
+--- kdepim-3.5.0.orig/kmail/kmcommands.cpp 2005-10-10 17:02:11.000000000 +0200
++++ kdepim-3.5.0/kmail/kmcommands.cpp 2005-12-05 15:16:02.000000000 +0100
+@@ -1496,30 +1496,30 @@
+
+ void KMMetaFilterActionCommand::start()
+ {
+-#if 0 // use action scheduler
+- KMFilterMgr::FilterSet set = KMFilterMgr::All;
+- QPtrList<KMFilter> filters;
+- filters.append( mFilter );
+- ActionScheduler *scheduler = new ActionScheduler( set, filters, mHeaders );
+- scheduler->setAlwaysMatch( true );
+- scheduler->setAutoDestruct( true );
+-
+- int contentX, contentY;
+- HeaderItem *nextItem = mHeaders->prepareMove( &contentX, &contentY );
+- QPtrList<KMMsgBase> msgList = *mHeaders->selectedMsgs(true);
+- mHeaders->finalizeMove( nextItem, contentX, contentY );
+-
+-
+- for (KMMsgBase *msg = msgList.first(); msg; msg = msgList.next())
+- scheduler->execFilters( msg );
+-#else
+- KMCommand *filterCommand = new KMFilterActionCommand( mMainWidget,
+- *mHeaders->selectedMsgs(), mFilter);
+- filterCommand->start();
+- int contentX, contentY;
+- HeaderItem *item = mHeaders->prepareMove( &contentX, &contentY );
+- mHeaders->finalizeMove( item, contentX, contentY );
+-#endif
++ if (ActionScheduler::isEnabled() ) {
++ // use action scheduler
++ KMFilterMgr::FilterSet set = KMFilterMgr::All;
++ QValueList<KMFilter*> filters;
++ filters.append( mFilter );
++ ActionScheduler *scheduler = new ActionScheduler( set, filters, mHeaders );
++ scheduler->setAlwaysMatch( true );
++ scheduler->setAutoDestruct( true );
++
++ int contentX, contentY;
++ HeaderItem *nextItem = mHeaders->prepareMove( &contentX, &contentY );
++ QPtrList<KMMsgBase> msgList = *mHeaders->selectedMsgs(true);
++ mHeaders->finalizeMove( nextItem, contentX, contentY );
++
++ for (KMMsgBase *msg = msgList.first(); msg; msg = msgList.next())
++ scheduler->execFilters( msg );
++ } else {
++ KMCommand *filterCommand = new KMFilterActionCommand( mMainWidget,
++ *mHeaders->selectedMsgs(), mFilter);
++ filterCommand->start();
++ int contentX, contentY;
++ HeaderItem *item = mHeaders->prepareMove( &contentX, &contentY );
++ mHeaders->finalizeMove( item, contentX, contentY );
++ }
+ }
+
+ FolderShortcutCommand::FolderShortcutCommand( KMMainWidget *mainwidget,
+diff -Nur kdepim-3.5.0.orig/kmail/kmkernel.cpp kdepim-3.5.0/kmail/kmkernel.cpp
+--- kdepim-3.5.0.orig/kmail/kmkernel.cpp 2005-11-08 23:33:29.000000000 +0100
++++ kdepim-3.5.0/kmail/kmkernel.cpp 2005-12-05 15:16:02.000000000 +0100
+@@ -1432,11 +1432,11 @@
+ the_msgIndex = 0;
+ #endif
+
+-#if 0
++//#if 0
+ the_weaver = new KPIM::ThreadWeaver::Weaver( this );
+ the_weaverLogger = new KPIM::ThreadWeaver::WeaverThreadLogger(this);
+ the_weaverLogger->attach (the_weaver);
+-#endif
++//#endif
+
+ connect( the_folderMgr, SIGNAL( folderRemoved(KMFolder*) ),
+ this, SIGNAL( folderRemoved(KMFolder*) ) );