---- src/jrd/vio.cpp 2011/09/29 03:27:33 53487
-+++ jrd/vio.cpp 2011/09/29 07:45:12 53488
-@@ -1821,7 +1821,6 @@
-
-
- bool VIO_get_current(thread_db* tdbb,
-- //record_param* old_rpb,
- record_param* rpb,
- jrd_tra* transaction,
- MemoryPool* pool,
-@@ -2025,12 +2024,14 @@
- if (rpb->rpb_flags & rpb_deleted)
- return !foreign_key;
-
-- if (rpb->rpb_flags & rpb_uk_modified)
-- return !foreign_key;
--
-- // clear lock error from status vector
-- fb_utils::init_status(tdbb->tdbb_status_vector);
-- return true;
-+ if (foreign_key)
-+ {
-+ // clear lock error from status vector
-+ fb_utils::init_status(tdbb->tdbb_status_vector);
-+ return !(rpb->rpb_flags & rpb_uk_modified);
-+ }
-+
-+ return !foreign_key;
-
- case tra_dead:
- if (transaction->tra_attachment->att_flags & ATT_no_cleanup) {
-