Changes between KDE 3.5.10 tag and KDE 3.5 branch r865247. Only looking at subdirectory kdenetwork/kopete here. Logs since r849627 of the branch but this might be wrong. r865056 | wstephens This doesn't need a parent as it is deleted manually M protocols/groupwise/gwaccount.cpp r865247 | wstephens Backport r842122 from trunk - fix for https://bugzilla.novell.com:443/show_bug.cgi?id=354139 M protocols/groupwise/libgroupwise/tasks/getdetailstask.cpp Index: protocols/groupwise/gwaccount.cpp =================================================================== --- kdenetwork/kopete/protocols/groupwise/gwaccount.cpp (.../tags/KDE/3.5.10) (revision 850549) +++ kdenetwork/kopete/protocols/groupwise/gwaccount.cpp (.../branches/KDE/3.5) (revision 865247) @@ -294,7 +294,7 @@ // not implemented: error QObject::connect( m_clientStream, SIGNAL( error(int) ), SLOT( slotCSError(int) ) ); - m_client = new Client( this, CMSGPRES_GW_6_5 ); + m_client = new Client( 0, CMSGPRES_GW_6_5 ); // NB these are prefixed with QObject:: to avoid any chance of a clash with our connect() methods. // we connected successfully Index: protocols/groupwise/libgroupwise/tasks/getdetailstask.cpp =================================================================== --- kdenetwork/kopete/protocols/groupwise/libgroupwise/tasks/getdetailstask.cpp (.../tags/KDE/3.5.10) (revision 850549) +++ kdenetwork/kopete/protocols/groupwise/libgroupwise/tasks/getdetailstask.cpp (.../branches/KDE/3.5) (revision 865247) @@ -104,10 +104,27 @@ const Field::FieldListIterator end = fl.end(); for ( Field::FieldListIterator it = fl.begin(); it != end; ++it ) { - Field::SingleField * propField = static_cast( *it ); - QString propName = propField->tag(); - QString propValue = propField->value().toString(); - propMap.insert( propName, propValue ); + Field::SingleField * propField = dynamic_cast( *it ); + if ( propField ) { + QString propName = propField->tag(); + QString propValue = propField->value().toString(); + propMap.insert( propName, propValue ); + } else { + Field::MultiField * mf2; + if ( ( mf2 = dynamic_cast( *it ) ) ) { + Field::FieldList fl2 = mf2->fields(); + const Field::FieldListIterator end = fl2.end(); + for ( Field::FieldListIterator it2 = fl2.begin(); it2 != end; ++it2 ) + { + propField = dynamic_cast( *it2 ); + if ( propField ) { + QString propName = propField->tag(); + QString propValue = propField->value().toString(); + propMap.insert( propName, propValue ); + } + } + } + } } } if ( !propMap.empty() )