In unregister_savevm(), free se->compat only if it was allocated earlier.
Signed-off-by: Bharata B Rao <bhar...@linux.vnet.ibm.com> --- migration/savevm.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/migration/savevm.c b/migration/savevm.c index 352a8f2..7a268ec 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -648,7 +648,9 @@ void unregister_savevm(DeviceState *dev, const char *idstr, void *opaque) QTAILQ_FOREACH_SAFE(se, &savevm_state.handlers, entry, new_se) { if (strcmp(se->idstr, id) == 0 && se->opaque == opaque) { QTAILQ_REMOVE(&savevm_state.handlers, se, entry); - g_free(se->compat); + if (dev) { + g_free(se->compat); + } g_free(se->ops); g_free(se); } -- 2.7.4