Message ID | 156335156198.82682.8756968724044750843.stgit@lep8c.aus.stglabs.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ppc: Fix some memory leaks | expand |
On Wed, 17 Jul 2019 03:19:43 -0500 Shivaprasad G Bhat <sbhat@linux.ibm.com> wrote: > Free the capability name string after setting > the capability. > > Signed-off-by: Shivaprasad G Bhat <sbhat@linux.ibm.com> > --- Reviewed-by: Greg Kurz <groug@kaod.org> > hw/ppc/spapr_caps.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/hw/ppc/spapr_caps.c b/hw/ppc/spapr_caps.c > index bbb001f84a..0263c78d69 100644 > --- a/hw/ppc/spapr_caps.c > +++ b/hw/ppc/spapr_caps.c > @@ -778,7 +778,7 @@ void spapr_caps_add_properties(SpaprMachineClass *smc, Error **errp) > > for (i = 0; i < ARRAY_SIZE(capability_table); i++) { > SpaprCapabilityInfo *cap = &capability_table[i]; > - const char *name = g_strdup_printf("cap-%s", cap->name); > + char *name = g_strdup_printf("cap-%s", cap->name); > char *desc; > > object_class_property_add(klass, name, cap->type, > @@ -786,11 +786,13 @@ void spapr_caps_add_properties(SpaprMachineClass *smc, Error **errp) > NULL, cap, &local_err); > if (local_err) { > error_propagate(errp, local_err); > + g_free(name); > return; > } > > desc = g_strdup_printf("%s", cap->description); > object_class_property_set_description(klass, name, desc, &local_err); > + g_free(name); > g_free(desc); > if (local_err) { > error_propagate(errp, local_err); > >
On Wed, Jul 17, 2019 at 03:19:43AM -0500, Shivaprasad G Bhat wrote: > Free the capability name string after setting > the capability. > > Signed-off-by: Shivaprasad G Bhat <sbhat@linux.ibm.com> Applied to ppc-for-4.2, thanks. > --- > hw/ppc/spapr_caps.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/hw/ppc/spapr_caps.c b/hw/ppc/spapr_caps.c > index bbb001f84a..0263c78d69 100644 > --- a/hw/ppc/spapr_caps.c > +++ b/hw/ppc/spapr_caps.c > @@ -778,7 +778,7 @@ void spapr_caps_add_properties(SpaprMachineClass *smc, Error **errp) > > for (i = 0; i < ARRAY_SIZE(capability_table); i++) { > SpaprCapabilityInfo *cap = &capability_table[i]; > - const char *name = g_strdup_printf("cap-%s", cap->name); > + char *name = g_strdup_printf("cap-%s", cap->name); > char *desc; > > object_class_property_add(klass, name, cap->type, > @@ -786,11 +786,13 @@ void spapr_caps_add_properties(SpaprMachineClass *smc, Error **errp) > NULL, cap, &local_err); > if (local_err) { > error_propagate(errp, local_err); > + g_free(name); > return; > } > > desc = g_strdup_printf("%s", cap->description); > object_class_property_set_description(klass, name, desc, &local_err); > + g_free(name); > g_free(desc); > if (local_err) { > error_propagate(errp, local_err); >
diff --git a/hw/ppc/spapr_caps.c b/hw/ppc/spapr_caps.c index bbb001f84a..0263c78d69 100644 --- a/hw/ppc/spapr_caps.c +++ b/hw/ppc/spapr_caps.c @@ -778,7 +778,7 @@ void spapr_caps_add_properties(SpaprMachineClass *smc, Error **errp) for (i = 0; i < ARRAY_SIZE(capability_table); i++) { SpaprCapabilityInfo *cap = &capability_table[i]; - const char *name = g_strdup_printf("cap-%s", cap->name); + char *name = g_strdup_printf("cap-%s", cap->name); char *desc; object_class_property_add(klass, name, cap->type, @@ -786,11 +786,13 @@ void spapr_caps_add_properties(SpaprMachineClass *smc, Error **errp) NULL, cap, &local_err); if (local_err) { error_propagate(errp, local_err); + g_free(name); return; } desc = g_strdup_printf("%s", cap->description); object_class_property_set_description(klass, name, desc, &local_err); + g_free(name); g_free(desc); if (local_err) { error_propagate(errp, local_err);
Free the capability name string after setting the capability. Signed-off-by: Shivaprasad G Bhat <sbhat@linux.ibm.com> --- hw/ppc/spapr_caps.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)