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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.diff
Type: text/x-patch
Size: 1884 bytes
Desc: not available
URL:
<http://mail.opensolaris.org/pipermail/jds-review/attachments/20070309/05a60d99/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cairo-02-8bit-fix.diff
Type: text/x-patch
Size: 14627 bytes
Desc: not available
URL:
<http://mail.opensolaris.org/pipermail/jds-review/attachments/20070309/05a60d99/attachment-0001.bin>