Hi Jedy,

    The patch looks good.

       Erwann

Jedy Wang wrote:
> Hi all,
>
> There is a bug (http://bt2ws.central.sun.com/CrPrint?id=6521811) on 
> evolution which makes evolution crash. This bug is caused by 
> cairo-02-8bit-fix.diff.
> In the patch:
>
>    396 +    case WORKAROUND_8BIT_PALETTE:
>    397 +
>    398 +        if (make_space_for(&buf, &size, &stride, image->width,
> image->height, 1))
>    399 +            return CAIRO_STATUS_NO_MEMORY;
>    400 +        data = buf;
>    401 +        src = image->data;
>    402 +        ilut = surface->clut->ilut;
>
> surface->clut coule be NULL and this could cause evolution to crash.
> And my new patch adds the following statements before we use 
> surface->clut
>              if(surface->clut == NULL) {
>                   surface->clut = _get_clut_r3g3b2(
>                       surface->dpy,
>                       DefaultColormapOfScreen(surface->screen));
>               }
>               if(surface->clut == NULL) {
>                   free(data);
>                   break;
>               }
>
> Because the bug makes evolution calendar totally unusable, I think 
> it's critical and should be fixed on Neveda.
> The original patch and new patch for cairo-02-8bit-fix.diff are 
> attached. Please review it.
>
> BTW:The bug can not be produced on vermillion because the patch was 
> disabled
>
> Regards,
>
> Jedy Wang
>
>


-- 
              Erwann Ch?ned?,
 Desktop Group, Sun Microsystems, Grenoble
 Phone  : +33 476 188 358       ext: 38358
[ I speak for myself, not for my employer ]



Reply via email to