Tag: cws_dev300_dba30c
User: oj      
Date: 2008-05-08 07:18:50+0000
Modified:
   dba/connectivity/source/drivers/dbase/DTable.cxx

Log:
 #153616# only copy not deleted rows

File Changes:

Directory: /dba/connectivity/source/drivers/dbase/
==================================================

File [changed]: DTable.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/connectivity/source/drivers/dbase/DTable.cxx?r1=1.105.10.2&r2=1.105.10.3
Delta lines:  +4 -10
--------------------
--- DTable.cxx  2008-05-06 11:26:18+0000        1.105.10.2
+++ DTable.cxx  2008-05-08 07:18:48+0000        1.105.10.3
@@ -7,7 +7,7 @@
  * OpenOffice.org - a multi-platform office productivity suite
  *
  * $RCSfile: DTable.cxx,v $
- * $Revision: 1.105.10.2 $
+ * $Revision: 1.105.10.3 $
  *
  * This file is part of OpenOffice.org.
  *
@@ -120,7 +120,6 @@
        }
        else
        {
-        m_eEncoding = getConnection()->getTextEncoding();
                // Konsistenzpruefung des Header:
                m_aHeader.db_typ = (DBFType)nType;
                switch (m_aHeader.db_typ)
@@ -297,6 +296,7 @@
        m_aHeader.db_anz        = 0;
        m_aHeader.db_kopf       = 0;
        m_aHeader.db_slng       = 0;
+    m_eEncoding = getConnection()->getTextEncoding();
 }
 // -------------------------------------------------------------------------
 ODbaseTable::ODbaseTable(sdbcx::OCollection* _pTables,ODbaseConnection* 
_pConnection,
@@ -313,6 +313,7 @@
                                ,m_pMemoStream(NULL)
                                ,m_bWriteableMemo(sal_False)
 {
+    m_eEncoding = getConnection()->getTextEncoding();
 }
 
 // 
-----------------------------------------------------------------------------
@@ -2202,7 +2203,7 @@
         if ( bOk )
                {
             bOk = fetchRow( aRow, m_aColumns.getBody(), sal_True, sal_True);
-            if ( bOk )
+            if ( bOk && !aRow->isDeleted() ) // copy only not deleted rows
                        {
                                // special handling when pos == 0 then we don't 
have to distinguish     between the two rows
                                if(_nPos)
@@ -2220,13 +2221,6 @@
                                }
                                bOk = 
_pNewTable->InsertRow(*aInsertRow,sal_True,_pNewTable->m_pColumns);
                                OSL_ENSURE(bOk,"Row could not be inserted!");
-                               // now adjust the delete state
-                               if ( aRow->isDeleted() )
-                               {
-                                       sal_Int32 nNewTablePos = 0;
-                                       _pNewTable->seekRow( 
IResultSetHelper::LAST , 0, nNewTablePos );
-                                       
_pNewTable->DeleteRow(*_pNewTable->m_aColumns);
-                               }
                        }
                        else
                                OSL_ENSURE(bOk,"Row could not be fetched!");




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

Reply via email to