On Wed, Mar 07, 2012 at 03:00:04PM -0500, Christopher Michael wrote:
> Hi All,
> 
> Attached is a patch which fixes some cleanup issues for the
> drm-based compositor. Basically, if we fail to allocate space for
> the crtcs in the compositor, then we need to free the drm mode
> resources before exiting the create_outputs function. We should also
> free these resources (in the same create_outputs function) if the
> compositor output_list is empty.

Thanks, applied.  I edited the commit message to follow the git
convention: first line is a summary, then a blank line and then
further explanation, if needed.

> Cheers,
> devilhorns

> From a71519a4e82451a632165f3f910246c238af4ed4 Mon Sep 17 00:00:00 2001
> From: Christopher Michael <[email protected]>
> Date: Wed, 7 Mar 2012 14:55:21 -0500
> Subject: [PATCH] When creating outputs in the drm compositor, if allocating 
> crtcs fails, then free the drm resources. Also, if the base output list is 
> empty, free drm resources
> 
> ---
>  src/compositor-drm.c |    5 ++++-
>  1 files changed, 4 insertions(+), 1 deletions(-)
> 
> diff --git a/src/compositor-drm.c b/src/compositor-drm.c
> index 9796014..67fa500 100644
> --- a/src/compositor-drm.c
> +++ b/src/compositor-drm.c
> @@ -1263,8 +1263,10 @@ create_outputs(struct drm_compositor *ec, int 
> option_connector,
>       }
>  
>       ec->crtcs = calloc(resources->count_crtcs, sizeof(uint32_t));
> -     if (!ec->crtcs)
> +     if (!ec->crtcs) {
> +             drmModeFreeResources(resources);
>               return -1;
> +     }
>  
>       ec->num_crtcs = resources->count_crtcs;
>       memcpy(ec->crtcs, resources->crtcs, sizeof(uint32_t) * ec->num_crtcs);
> @@ -1295,6 +1297,7 @@ create_outputs(struct drm_compositor *ec, int 
> option_connector,
>  
>       if (wl_list_empty(&ec->base.output_list)) {
>               fprintf(stderr, "No currently active connector found.\n");
> +             drmModeFreeResources(resources);
>               return -1;
>       }
>  
> -- 
> 1.7.4.1
> 

> _______________________________________________
> wayland-devel mailing list
> [email protected]
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel

_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to