On 05/15/2017 01:39 PM, Greg Kurz wrote:
> While here we introduce a single error path to avoid code duplication.
> 
> Signed-off-by: Greg Kurz <gr...@kaod.org>
> ---
>  hw/ppc/spapr_cpu_core.c |   16 ++++++++--------
>  1 file changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/hw/ppc/spapr_cpu_core.c b/hw/ppc/spapr_cpu_core.c
> index 4389ef4c2aef..63d160f7e010 100644
> --- a/hw/ppc/spapr_cpu_core.c
> +++ b/hw/ppc/spapr_cpu_core.c
> @@ -147,25 +147,25 @@ static void spapr_cpu_core_realize_child(Object *child, 
> Error **errp)
>      object_property_add_const_link(obj, "xics", OBJECT(spapr), &error_abort);
>      object_property_set_bool(obj, true, "realized", &local_err);
>      if (local_err) {
> -        error_propagate(errp, local_err);
> -        return;
> +        goto error;

the error: statement below adds an object_unparent(). is that ok ? 

C. 

>      }
>  
>      object_property_set_bool(child, true, "realized", &local_err);
>      if (local_err) {
> -        object_unparent(obj);
> -        error_propagate(errp, local_err);
> -        return;
> +        goto error;
>      }
>  
>      spapr_cpu_init(spapr, cpu, &local_err);
>      if (local_err) {
> -        object_unparent(obj);
> -        error_propagate(errp, local_err);
> -        return;
> +        goto error;
>      }
>  
>      xics_cpu_setup(XICS_FABRIC(spapr), cpu, ICP(obj));
> +    return;
> +
> +error:
> +    object_unparent(obj);
> +    error_propagate(errp, local_err);
>  }
>  
>  static void spapr_cpu_core_realize(DeviceState *dev, Error **errp)
> 


Reply via email to