Tag: cws_src680_dba205b
User: oj      
Date: 2006/08/03 05:51:46

Modified:
   dba/dbaccess/source/ui/querydesign/JoinTableView.cxx
   dba/dbaccess/source/ui/querydesign/QueryDesignView.cxx

Log:
 #137963# work on copy of tablewindows to avoid illegal iterators

File Changes:

Directory: /dba/dbaccess/source/ui/querydesign/
===============================================

File [changed]: JoinTableView.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/dbaccess/source/ui/querydesign/JoinTableView.cxx?r1=1.53&r2=1.53.32.1
Delta lines:  +8 -10
--------------------
--- JoinTableView.cxx   20 Jun 2006 03:26:01 -0000      1.53
+++ JoinTableView.cxx   3 Aug 2006 12:51:44 -0000       1.53.32.1
@@ -4,9 +4,9 @@
  *
  *  $RCSfile: JoinTableView.cxx,v $
  *
- *  $Revision: 1.53 $
+ *  $Revision: 1.53.32.1 $
  *
- *  last change: $Author: hr $ $Date: 2006/06/20 03:26:01 $
+ *  last change: $Author: oj $ $Date: 2006/08/03 12:51:44 $
  *
  *  The Contents of this file are made available subject to
  *  the terms of GNU Lesser General Public License Version 2.1.
@@ -1596,13 +1596,11 @@
        OTableWindowMap* pTabWins = GetTabWinMap();
        if ( pTabWins )
        {
-               OTableWindowMap::iterator aIter = pTabWins->begin();
-               while(aIter != pTabWins->end())
-               {
-                       OTableWindow* pTabWin = aIter->second;
-                       ++aIter;
-                       RemoveTabWin(pTabWin);
-               }
+        // working on a copy because the real list will be cleared in inner 
calls
+        OTableWindowMap aCopy(*pTabWins);
+               OTableWindowMap::iterator aIter = aCopy.begin();
+               for(;aIter != aCopy.end();++aIter)
+                       RemoveTabWin(aIter->second);
        }
 
        m_pView->getController()->setModified(sal_True);

File [changed]: QueryDesignView.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/dbaccess/source/ui/querydesign/QueryDesignView.cxx?r1=1.80.18.1&r2=1.80.18.2
Delta lines:  +5 -5
-------------------
--- QueryDesignView.cxx 2 Aug 2006 15:52:54 -0000       1.80.18.1
+++ QueryDesignView.cxx 3 Aug 2006 12:51:44 -0000       1.80.18.2
@@ -4,9 +4,9 @@
  *
  *  $RCSfile: QueryDesignView.cxx,v $
  *
- *  $Revision: 1.80.18.1 $
+ *  $Revision: 1.80.18.2 $
  *
- *  last change: $Author: oj $ $Date: 2006/08/02 15:52:54 $
+ *  last change: $Author: oj $ $Date: 2006/08/03 12:51:44 $
  *
  *  The Contents of this file are made available subject to
  *  the terms of GNU Lesser General Public License Version 2.1.
@@ -1931,9 +1931,9 @@
                                }
 
                                // now delete the data for which we haven't any 
tablewindow
-                               OJoinTableView::OTableWindowMap* pTableMap = 
pTableView->GetTabWinMap();
-                               OJoinTableView::OTableWindowMap::iterator 
aIterTableMap = pTableMap->begin();
-                               for(;aIterTableMap != 
pTableMap->end();++aIterTableMap)
+                               OJoinTableView::OTableWindowMap 
aTableMap(*pTableView->GetTabWinMap());
+                               OJoinTableView::OTableWindowMap::iterator 
aIterTableMap = aTableMap.begin();
+                               for(;aIterTableMap != 
aTableMap.end();++aIterTableMap)
                                {
                                        
if(aMap.find(aIterTableMap->second->GetComposedName())  == aMap.end() &&
                                                aMap.find(aIterTableMap->first) 
                                        == aMap.end())




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to