diff --git a/src/app/qgisapp.cpp b/src/app/qgisapp.cpp index 7ce2a15..d8c4dff 100644 --- a/src/app/qgisapp.cpp +++ b/src/app/qgisapp.cpp @@ -1604,14 +1604,19 @@ void QgisApp::showStyleManagerV2() void QgisApp::writeAnnotationItemsToProject( QDomDocument& doc ) { QList items = annotationItems(); - QList::const_iterator itemIt = items.constBegin(); - for ( ; itemIt != items.constEnd(); ++itemIt ) + QgsAnnotationItem* item; + QListIterator i( items ); + // save lowermost annotation (at end of list) first + i.toBack(); + while ( i.hasPrevious() ) { - if ( ! *itemIt ) + item = i.previous(); + + if ( ! item ) { continue; } - ( *itemIt )->writeXML( doc ); + item->writeXML( doc ); } }