From abdfa188d5915c2142f3bb80ad26f88317851127 Mon Sep 17 00:00:00 2001 From: hvlad Date: Tue, 19 Jan 2010 18:38:52 +0000 Subject: [PATCH] Preserve record's flags when gathering record from fragments. Its used in prepare_update() to check if primary record was backed out. --- src/jrd/vio.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/jrd/vio.cpp b/src/jrd/vio.cpp index 4de1acf270..42c9aa04b7 100644 --- a/src/jrd/vio.cpp +++ b/src/jrd/vio.cpp @@ -1096,6 +1096,7 @@ void VIO_data(thread_db* tdbb, record_param* rpb, MemoryPool* pool) { const ULONG back_page = rpb->rpb_b_page; const USHORT back_line = rpb->rpb_b_line; + const USHORT flags = rpb->rpb_flags; while (rpb->rpb_flags & rpb_incomplete) { DPM_fetch_fragment(tdbb, rpb, LCK_read); @@ -1104,6 +1105,7 @@ void VIO_data(thread_db* tdbb, record_param* rpb, MemoryPool* pool) } rpb->rpb_b_page = back_page; rpb->rpb_b_line = back_line; + rpb->rpb_flags = flags; } CCH_RELEASE(tdbb, &rpb->getWindow(tdbb));