Hello community,
here is the log from the commit of package kdepimlibs4
checked in at Mon Sep 15 17:52:00 CEST 2008.
--------
--- KDE/kdepimlibs4/kdepimlibs4.changes 2008-08-28 12:35:59.000000000 +0200
+++ /mounts/work_src_done/STABLE/kdepimlibs4/kdepimlibs4.changes 2008-09-15 17:35:11.000000000 +0200
@@ -1,0 +2,12 @@
+Mon Sep 15 17:34:51 CEST 2008 - dmueller@suse.de
+
+- branch diff update
+ * check for self-assignment
+
+-------------------------------------------------------------------
+Fri Sep 5 11:18:14 CEST 2008 - wstephenson@suse.de
+
+- 4_1_branch diff update
+ * Fix crash in displaying mails with calendar entries (r856768)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdepimlibs4.spec ++++++
--- /var/tmp/diff_new_pack.T22505/_old 2008-09-15 17:51:52.000000000 +0200
+++ /var/tmp/diff_new_pack.T22505/_new 2008-09-15 17:51:52.000000000 +0200
@@ -24,7 +24,7 @@
Summary: KDE PIM Libraries
Url: http://www.kde.org
Version: 4.1.1
-Release: 1
+Release: 12
Source0: kdepimlibs-%version.tar.bz2
Source1: _upstream
Patch0: 4_1_BRANCH.diff
@@ -189,6 +189,12 @@
%_kde_share_dir/config.kcfg/mailtransport.kcfg
%changelog
+* Mon Sep 15 2008 dmueller@suse.de
+- branch diff update
+ * check for self-assignment
+* Fri Sep 05 2008 wstephenson@suse.de
+- 4_1_branch diff update
+ * Fix crash in displaying mails with calendar entries (r856768)
* Thu Aug 28 2008 dmueller@suse.de
- update to 4.1.1
* see http://kde.org/announcements/changelogs/changelog4_1to4_1_1.php
++++++ 4_1_BRANCH.diff ++++++
--- /var/tmp/diff_new_pack.T22505/_old 2008-09-15 17:51:52.000000000 +0200
+++ /var/tmp/diff_new_pack.T22505/_new 2008-09-15 17:51:52.000000000 +0200
@@ -3,5 +3,181 @@
--- BRANCH_STATUS
+++ BRANCH_STATUS
@@ -0,0 +1,2 @@
-+current HEAD: 853806
-+svn di between //tags/KDE/4.1.1/kdepimlibs and //tags/KDE/4.1.1/kdepimlibs
++current HEAD:
++svn di between //tags/KDE/4.1.1/kdepimlibs and //branches/KDE/4.1/kdepimlibs
+--- kpimutils/tests/testemail.cpp (Revision 861248)
++++ kpimutils/tests/testemail.cpp (Revision 861248)
+@@ -513,6 +513,7 @@
+ checkNormalizeAddressesAndDecodeIDNs( "=?us-ascii?Q?Surname=2C=20Name?= ", "\"Surname, Name\" " );
+ checkNormalizeAddressesAndDecodeIDNs( "=?iso-8859-1?B?5Hf8b2xmLPZBbmRyZWFz?= ", QString::fromUtf8("\"äwüolf,öAndreas\" ") );
+ checkNormalizeAddressesAndDecodeIDNs( QString::fromUtf8("\"Andreas Straß\" "), QString::fromUtf8("\"Andreas Straß\" ") );
++ checkNormalizeAddressesAndDecodeIDNs( QString::fromUtf8("\"András\" \"Manţia\" "), QString::fromUtf8("\"András\" \"Manţia\" ") );
+
+ // check the "quote if necessary" method
+ checkQuoteIfNecessary( "Matt Douhan", "Matt Douhan" );
+--- kpimutils/email.cpp (Revision 861248)
++++ kpimutils/email.cpp (Revision 861248)
+@@ -898,7 +898,11 @@
+ if ( displayName.isEmpty() && comment.isEmpty() ) {
+ return addrSpec;
+ } else if ( comment.isEmpty() ) {
+- return quoteNameIfNecessary( displayName ) + " <" + addrSpec + '>';
++ if ( !displayName.startsWith('\"') ) {
++ return quoteNameIfNecessary( displayName ) + " <" + addrSpec + '>';
++ } else {
++ return displayName + " <" + addrSpec + '>';
++ }
+ } else if ( displayName.isEmpty() ) {
+ QString commentStr = comment;
+ return quoteNameIfNecessary( commentStr ) + " <" + addrSpec + '>';
+--- kpimutils/CMakeLists.txt (Revision 861248)
++++ kpimutils/CMakeLists.txt (Revision 861248)
+@@ -12,7 +12,7 @@
+
+ kde4_add_library(kpimutils SHARED ${kpimutils_LIB_SRCS})
+
+-target_link_libraries(kpimutils ${KDE4_KDEUI_LIBS} ${KDE4_KUTILS_LIBRARY} kmime)
++target_link_libraries(kpimutils ${KDE4_KDEUI_LIBS} ${KDE4_KUTILS_LIBS} kmime)
+
+ set_target_properties(kpimutils PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} )
+ install(TARGETS kpimutils ${INSTALL_TARGETS_DEFAULT_ARGS})
+--- kcal/calendarlocal.cpp (Revision 861248)
++++ kcal/calendarlocal.cpp (Revision 861248)
+@@ -382,6 +382,29 @@
+ // or internally in the Event itself when certain things change.
+ // need to verify with ical documentation.
+
++ if ( incidence->type() == "Event" ) {
++ Event *event = static_cast( incidence );
++ removeIncidenceFromMultiHashByUID(
++ d->mEventsForDate, event->dtStart().date().toString(), event->uid() );
++ if ( !event->recurs() && !event->isMultiDay() ) {
++ d->mEventsForDate.insert( event->dtStart().date().toString(), event );
++ }
++ } else if ( incidence->type() == "Todo" ) {
++ Todo *todo = static_cast( incidence );
++ removeIncidenceFromMultiHashByUID(
++ d->mTodosForDate, todo->dtDue().date().toString(), todo->uid() );
++ if ( todo->hasDueDate() ) {
++ d->mTodosForDate.insert( todo->dtDue().date().toString(), todo );
++ }
++ } else if ( incidence->type() == "Journal" ) {
++ Journal *journal = static_cast( incidence );
++ removeIncidenceFromMultiHashByUID(
++ d->mJournalsForDate, journal->dtStart().date().toString(), journal->uid() );
++ d->mJournalsForDate.insert( journal->dtStart().date().toString(), journal );
++ } else {
++ Q_ASSERT( false );
++ }
++
+ // The static_cast is ok as the CalendarLocal only observes Incidence objects
+ notifyIncidenceChanged( static_cast( incidence ) );
+
+--- kcal/icaltimezones.cpp (Revision 861248)
++++ kcal/icaltimezones.cpp (Revision 861248)
+@@ -624,6 +624,10 @@
+
+ ICalTimeZoneData &ICalTimeZoneData::operator=( const ICalTimeZoneData &rhs )
+ {
++ // check for self assignment
++ if ( &rhs == this )
++ return *this;
++
+ KTimeZoneData::operator=( rhs );
+ d->location = rhs.d->location;
+ d->url = rhs.d->url;
+--- kcal/incidenceformatter.cpp (Revision 861248)
++++ kcal/incidenceformatter.cpp (Revision 861248)
+@@ -1132,6 +1132,9 @@
+ IncidenceCompareVisitor() : mExistingIncidence( 0 ) {}
+ bool act( IncidenceBase *incidence, Incidence *existingIncidence )
+ {
++ if (!existingIncidence) {
++ return false;
++ }
+ Incidence *inc = dynamic_cast( incidence );
+ if ( inc && inc->revision() <= existingIncidence->revision() ) {
+ return false;
+@@ -1295,6 +1298,7 @@
+ }
+
+ IncidenceBase *incBase = msg->event();
++ incBase->shiftTimes( mCalendar->timeSpec(), KDateTime::Spec::LocalZone() );
+
+ Incidence *existingIncidence = 0;
+ if ( helper->calendar() ) {
+@@ -1491,25 +1495,22 @@
+ event->dtStartDateStr(
+ true, event->dtStart().timeSpec() ) );
+ if ( !event->allDay() ) {
+- if ( event->dtStartTimeStr( true, event->dtStart().timeSpec() ) ==
+- event->dtEndTimeStr( true, event->dtEnd().timeSpec() ) ) {
++ const QString dtStartTime = event->dtStartTimeStr( true, event->dtStart().timeSpec() );
++ const QString dtEndTime = event->dtEndTimeStr( true, event->dtEnd().timeSpec() );
++ if ( dtStartTime == dtEndTime ) {
+ // to prevent 'Time: 17:00 - 17:00'
+ tmp = "<br>" +
+ // TODO: the comment is no longer true, is not needed anymore, I leave
+ // because of the string freeze
+ i18nc( "time for event, to prevent ugly line breaks", "<i>Time:</i> %1",
+- event->dtStartTimeStr(
+- true, event->dtStart().timeSpec() ) );
++ dtStartTime );
+ } else {
+ tmp = "<br>" +
+ // TODO: the comment is no longer true, is not needed anymore, I leave
+ // because of the string freeze
+ i18nc( "time range for event, to prevent ugly line breaks",
+ "<i>Time:</i> %1 - %2",
+- event->dtStartTimeStr(
+- true, event->dtStart().timeSpec() ),
+- event->dtEndTimeStr(
+- true, event->dtEnd().timeSpec() ) );
++ dtStartTime, dtEndTime );
+ }
+ ret += tmp;
+ }
+--- kcal/incidencebase.cpp (Revision 861248)
++++ kcal/incidencebase.cpp (Revision 861248)
+@@ -61,6 +61,10 @@
+ { mAttendees.setAutoDelete( true ); }
+
+ Private( const Private &other )
++ : mUpdateGroupLevel( 0 ),
++ mUpdatedPending( false ),
++ mAllDay( true ),
++ mHasDuration( false )
+ {
+ mAttendees.setAutoDelete( true );
+ init( other );
+--- kcal/incidence.cpp (Revision 861248)
++++ kcal/incidence.cpp (Revision 861248)
+@@ -205,6 +205,10 @@
+ //@endcond
+ Incidence &Incidence::operator=( const Incidence &other )
+ {
++ // check for self assignment
++ if ( &other == this )
++ return *this;
++
+ d->clear();
+ //TODO: should relations be cleared out, as in destructor???
+ IncidenceBase::operator=( other );
+--- akonadi/collection.h (Revision 861248)
++++ akonadi/collection.h (Revision 861248)
+@@ -79,8 +79,8 @@
+ CanCreateItem = 0x2, ///< Can create new items in this collection
+ CanDeleteItem = 0x4, ///< Can delete items in this collection
+ CanChangeCollection = 0x8, ///< Can change subcollections in this collection
+- CanCreateCollection = 0x16, ///< Can create new subcollections in this collection
+- CanDeleteCollection = 0x32, ///< Can delete subcollections in this collection
++ CanCreateCollection = 0x10, ///< Can create new subcollections in this collection
++ CanDeleteCollection = 0x20, ///< Can delete subcollections in this collection
+ AllRights = (CanChangeItem | CanCreateItem | CanDeleteItem |
+ CanChangeCollection | CanCreateCollection | CanDeleteCollection) ///< Has all rights on this collection
+ };
+
+Eigenschaftsänderungen: .
+___________________________________________________________________
+Gelöscht: svn:mergeinfo
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org