void FSFile::close() { if (closed) return; HANDLE_BASE * h = (HANDLE_BASE*)handle; h->close(); delete h; closed = true; }
void BaseFile::close() { if (flags & CLOSED) return; HANDLE_BASE * h = (HANDLE_BASE*)handle; h->close(); delete h; flags |= CLOSED; }