orig = io.getOpenFileChecked();
fptr = dest.MakeOpenFile();
// orig is the visible one here but we lock both anyway
boolean locked1 = orig.lock();
boolean locked2 = fptr.lock();
try {
io.flush(context);
/* copy rb_io_t structure */
fptr.setMode(orig.getMode() & ~OpenFile.PREP);