diff options
author | Andreas Bregas <ab@openoffice.org> | 2002-08-30 12:22:15 +0000 |
---|---|---|
committer | Andreas Bregas <ab@openoffice.org> | 2002-08-30 12:22:15 +0000 |
commit | 7322e33e2758b736cfe96f55fcdf82677b0b6c95 (patch) | |
tree | 4af6bd659d6c4e535142003511135a86dc888d13 /basic | |
parent | 16c8d0064ca68a33c6e0d94756856cce82c13b87 (diff) |
#102797# Reversed dialog disposing order
Diffstat (limited to 'basic')
-rw-r--r-- | basic/source/runtime/runtime.cxx | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/basic/source/runtime/runtime.cxx b/basic/source/runtime/runtime.cxx index f5f2be16ef64..5ca51fa23353 100644 --- a/basic/source/runtime/runtime.cxx +++ b/basic/source/runtime/runtime.cxx @@ -2,9 +2,9 @@ * * $RCSfile: runtime.cxx,v $ * - * $Revision: 1.11 $ + * $Revision: 1.12 $ * - * last change: $Author: ab $ $Date: 2002-01-18 11:51:29 $ + * last change: $Author: ab $ $Date: 2002-08-30 13:22:15 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -313,14 +313,15 @@ SbiInstance::~SbiInstance() try { - // Dispose components, especially dialogs created in CreateUnoDialog - ComponentVector_t::const_iterator iPos( ComponentVector.begin() ); - while( iPos != ComponentVector.end() ) + int nSize = ComponentVector.size(); + if( nSize ) { - Reference< XComponent > xDlgComponent = *iPos ; - if( xDlgComponent.is() ) - xDlgComponent->dispose(); - ++iPos; + for( int i = nSize - 1 ; i >= 0 ; --i ) + { + Reference< XComponent > xDlgComponent = ComponentVector[i]; + if( xDlgComponent.is() ) + xDlgComponent->dispose(); + } } } catch( const Exception& ) |