[cairo-bugs] [Bug 42419] New: Failed to create sub-surface by cairo_surface_create_for_rectangle()

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Oct 31 04:41:09 PDT 2011


             Bug #: 42419
           Summary: Failed to create sub-surface by
    Classification: Unclassified
           Product: cairo
           Version: 1.10.3
          Platform: x86 (IA32)
        OS/Version: Linux (All)
            Status: NEW
          Severity: critical
          Priority: medium
         Component: image backend
        AssignedTo: cworth at cworth.org
        ReportedBy: seongwon79 at hanafos.com
         QAContact: cairo-bugs at cairographics.org


When I make sub-surface by cairo_surface_create_for_rectangle()
I got nil surface on special use case.

inside of cairo_surface_create_for_rectangle(cairo_surface_t *target, double x,
double y, double width, double height)
cairo changes argument ,double to integer, like below.

    surface->extents.x = ceil (x);
    surface->extents.y = ceil (y);
    surface->extents.width = floor (x + width) - surface->extents.x;
    surface->extents.height = floor (y + height) - surface->extents.y;

But if I put the x = 0.2, width = 0.7 on cairo_surface_create_for_rectangle()
the width of surface is assigned by -1.

    surface->extents.x = 1; //ceil(0.2) == 1
    surface->extents.width = -1; //floor(0.2+0.7) - 1 == 0 - 1 == -1

It looks like a cairo's bug


Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA Contact for the bug.

More information about the cairo-bugs mailing list