From: David M. <ig...@us...> - 2006-01-18 09:14:48
|
Update of /cvsroot/myoledb/myoledb3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15556 Modified Files: irowset.cpp rowiden.cpp rowlocate.cpp Log Message: Change from using the ACTIVE_ROWS_LIMIT constant to using the m_dwTotalRows member of the query Index: rowiden.cpp =================================================================== RCS file: /cvsroot/myoledb/myoledb3/rowiden.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- rowiden.cpp 20 Sep 2005 14:44:50 -0000 1.1.1.1 +++ rowiden.cpp 18 Jan 2006 09:14:37 -0000 1.2 @@ -39,7 +39,7 @@ INTERFACE_METHOD_START( "IRowsetIdentity::IsSameRow" ); // if row handle bad ? - if (hThisRow > ACTIVE_ROWS_LIMIT || hThatRow >ACTIVE_ROWS_LIMIT) + if (hThisRow > m_pObj->m_pData->m_dwTotalRows || hThatRow > m_pObj->m_pData->m_dwTotalRows) return DB_E_BADROWHANDLE; // IsSlotSet returns S_OK if row is marked. Index: irowset.cpp =================================================================== RCS file: /cvsroot/myoledb/myoledb3/irowset.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- irowset.cpp 16 Jan 2006 11:35:54 -0000 1.2 +++ irowset.cpp 18 Jan 2006 09:14:37 -0000 1.3 @@ -335,8 +335,8 @@ //We need to workaround case when consumer asks for huge amount of rows //otherwise memory allocation may fail - if (cBRows > ACTIVE_ROWS_LIMIT) - cBRows = ACTIVE_ROWS_LIMIT; + if (cBRows > m_pObj->m_pData->m_dwTotalRows) + cBRows = m_pObj->m_pData->m_dwTotalRows; //Create temporary HROW array if (!bSingleGranularity) @@ -430,7 +430,7 @@ bRowFound = FALSE; // finding the same rows in the buffer - for ( krow = 0; krow < ACTIVE_ROWS_LIMIT; krow++ ) + for ( krow = 0; krow < m_pObj->m_pData->m_dwTotalRows; krow++ ) { if (m_pObj->m_SlotRef[krow].Status == 0) continue; @@ -513,7 +513,7 @@ // let us decide what the code to return: if (!blnIfFreeSlotsAvailable && lUnRoomedRows > 0) { - if (abs(cRows) > ACTIVE_ROWS_LIMIT) + if (abs(cRows) > m_pObj->m_pData->m_dwTotalRows) hr = DB_S_ROWLIMITEXCEEDED; else hr = DB_S_STOPLIMITREACHED; @@ -610,11 +610,11 @@ // begin release handles for (ihRow = 0; ihRow < cRows; ihRow++) { - for ( i = 0; i < ACTIVE_ROWS_LIMIT; i++ ) + for ( i = 0; i < m_pObj->m_pData->m_dwTotalRows; i++ ) if ( rghRows[ihRow] == m_pObj->m_SlotRef[ i ].hRow ) break; - if (i == ACTIVE_ROWS_LIMIT) + if (i == m_pObj->m_pData->m_dwTotalRows) goto InvalidRow; Index: rowlocate.cpp =================================================================== RCS file: /cvsroot/myoledb/myoledb3/rowlocate.cpp,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- rowlocate.cpp 20 Sep 2005 14:44:36 -0000 1.1.1.1 +++ rowlocate.cpp 18 Jan 2006 09:14:37 -0000 1.2 @@ -284,7 +284,7 @@ if (bRowsetIdentity) { bRowFound = FALSE; - for (krow = 1; krow < ACTIVE_ROWS_LIMIT; krow++) + for (krow = 1; krow < m_pObj->m_pData->m_dwTotalRows; krow++) { if (m_pObj->m_SlotRef[ krow ].Status == 0) continue; |