//*****************************************************************************
// Copy the data from one MiniMd to another.
//*****************************************************************************
__checkReturn
HRESULT
CMiniMdRW::ApplyRecordDelta(
    CMiniMdRW   &mdDelta,               // The delta MetaData.
    ULONG       ixTbl,                  // The table with the data.
    void        *pDelta,                // The delta MetaData record.
    void        *pRecord)               // The record to update.
{
    HRESULT hr = S_OK;
    ULONG   mask = m_SuppressedDeltaColumns[ixTbl];

    for (ULONG ixCol = 0; ixCol<m_TableDefs[ixTbl].m_cCols; ++ixCol, mask >>= 1)
    {   // Skip certain pointer columns.
        if (mask & 0x01)
            continue;

        ULONG val = mdDelta.GetCol(ixTbl, ixCol, pDelta);
        IfFailRet(PutCol(ixTbl, ixCol, pRecord, val));
    }
    return hr;
} // CMiniMdRW::ApplyRecordDelta