Re: [PATCH] Avoid appending an empty slot to an user data array when user_data is NULL.

Bryce Harrington <[email protected]>
Newsgroups gmane.comp.lib.cairo
Message-ID <[email protected]>
On Fri, Apr 17, 2015 at 04:33:35PM +0100, Chris Wilson wrote:
> On Fri, Apr 17, 2015 at 08:59:17PM +0900, 江頭幸路 wrote:
> >    Otherwise, calling cairo_set_user_data(cr, key, 0, 0) many times
> >    causes a long user data array, almost all of whose slots are empty.
> >    It leads to unnecessarily much memory consumption and long execution time
> >    of
> >    cairo_set_user_data(cr, key, 0, 0) and cairo_get_user_data(cr, key) after
> >    it.
> >    ---
> >     src/cairo-array.c |    3 +++
> >     1 file changed, 3 insertions(+)
> > 
> >    diff --git a/src/cairo-array.c b/src/cairo-array.c
> >    index 4f3c082..58c9a38 100644
> >    --- a/src/cairo-array.c
> >    +++ b/src/cairo-array.c
> >    @@ -485,6 +485,9 @@ _cairo_user_data_array_set_data
> >    (cairo_user_data_array_t     *array,
> >         return CAIRO_STATUS_SUCCESS;
> >         }
> >     
> >    +    if (user_data == NULL)
> >    +    return CAIRO_STATUS_SUCCESS;
> 
> Ok, I thought this might break a cairo_user_data_exists(), but since we
> don't have one, this patch lgtm and doesn't seem to change the API.
> -Chris

Thanks, applied:
   89942c6..040ae0c  master -> master

(I think something may have been off with the tabs or something, as it
didn't apply directly; since the patch was trivial enough I just
manually applied it.)

Bryce
 
> -- 
> Chris Wilson, Intel Open Source Technology Centre
> -- 
> cairo mailing list
> [email protected]
> http://lists.cairographics.org/mailman/listinfo/cairo
-- 
cairo mailing list
[email protected]
http://lists.cairographics.org/mailman/listinfo/cairo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.