* Juan Quintela (quint...@redhat.com) wrote: > If there is an error while loading a field, we should stop reading and > not continue with the rest of fields. And we should also set an error > in qemu_file. > > Signed-off-by: Juan Quintela <quint...@redhat.com> > --- > vmstate.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/vmstate.c b/vmstate.c > index bfa34cc..bcf1cde 100644 > --- a/vmstate.c > +++ b/vmstate.c > @@ -74,7 +74,13 @@ int vmstate_load_state(QEMUFile *f, const > VMStateDescription *vmsd, > ret = field->info->get(f, addr, size); > > } > + if (ret >= 0) { > + ret = qemu_file_get_error(f); > + } > if (ret < 0) { > + if (!qemu_file_get_error(f)) { > + qemu_file_set_error(f, ret); > + }
qemu_file_set_error already checks for an existing error, so you don't need that check. Dve > trace_vmstate_load_field_error(field->name, ret); > return ret; > } > -- > 1.9.0 > > -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK