Il 09/04/2013 14:17, Juan Quintela ha scritto: >> > This test assumes that it makes sense to call qemu_get_byte on a >> > write-opened QEMUFile. This is not true anymore after this patch. >> > After eliminating is_write, the right thing to do is abort. > > But this would not abort, it would do a segmenation fault! > > I would not complain to a: > > assert(!f->ops->get_buffer); > > It would told us from where we got the "invalid" call, but this removal > will change a "silent fail" (that I don't like either) to a segmentation > fault (that is even worse).
It would still assert if you open a file in the wrong mode: - if (!f->ops->get_buffer) - return; - - if (f->is_write) - abort(); + assert(!qemu_file_is_writable(f)); It would segfault if you declare the QEMUFileOps wrong (e.g. no *_buffer operation), but that's a bug in the QEMUFile implementation rather than the usage. I think a segfault is acceptable for that. Paolo