Looked twice and it still seems fine. Of course this doesn't rule my eventual inability to see the truth. On what code path File::doUndo() may be called from server? (In such case we have exactly same issue with XAttributes because instances are constructed using string constructors)