@@ -32,7 +32,7 @@ static void check_stop_event(QTestState *who)
32
32
QDict * wait_command_fd (QTestState * who , int fd , const char * command , ...)
33
33
{
34
34
va_list ap ;
35
- QDict * resp ;
35
+ QDict * resp , * ret ;
36
36
37
37
va_start (ap , command );
38
38
qtest_qmp_vsend_fds (who , & fd , 1 , command , ap );
@@ -44,7 +44,11 @@ QDict *wait_command_fd(QTestState *who, int fd, const char *command, ...)
44
44
g_assert (!qdict_haskey (resp , "error" ));
45
45
g_assert (qdict_haskey (resp , "return" ));
46
46
47
- return qdict_get_qdict (resp , "return" );
47
+ ret = qdict_get_qdict (resp , "return" );
48
+ qobject_ref (ret );
49
+ qobject_unref (resp );
50
+
51
+ return ret ;
48
52
}
49
53
50
54
/*
@@ -53,7 +57,7 @@ QDict *wait_command_fd(QTestState *who, int fd, const char *command, ...)
53
57
QDict * wait_command (QTestState * who , const char * command , ...)
54
58
{
55
59
va_list ap ;
56
- QDict * resp ;
60
+ QDict * resp , * ret ;
57
61
58
62
va_start (ap , command );
59
63
resp = qtest_vqmp (who , command , ap );
@@ -64,7 +68,11 @@ QDict *wait_command(QTestState *who, const char *command, ...)
64
68
g_assert (!qdict_haskey (resp , "error" ));
65
69
g_assert (qdict_haskey (resp , "return" ));
66
70
67
- return qdict_get_qdict (resp , "return" );
71
+ ret = qdict_get_qdict (resp , "return" );
72
+ qobject_ref (ret );
73
+ qobject_unref (resp );
74
+
75
+ return ret ;
68
76
}
69
77
70
78
/*
0 commit comments