diff options
Diffstat (limited to 'savevm.c')
-rw-r--r-- | savevm.c | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -1147,6 +1147,9 @@ int vmstate_load_state(QEMUFile *f, const VMStateDescription *vmsd, if (field->flags & VMS_VBUFFER) { size = *(int32_t *)(opaque+field->size_offset); + if (field->flags & VMS_MULTIPLY) { + size *= field->size; + } } if (field->flags & VMS_ARRAY) { n_elems = field->num; @@ -1200,6 +1203,9 @@ void vmstate_save_state(QEMUFile *f, const VMStateDescription *vmsd, if (field->flags & VMS_VBUFFER) { size = *(int32_t *)(opaque+field->size_offset); + if (field->flags & VMS_MULTIPLY) { + size *= field->size; + } } if (field->flags & VMS_ARRAY) { n_elems = field->num; |