Bug 69380

Summary: New test suite failures due to new downscaling code
Product: cairo Reporter: Uli Schlachter <psychon>
Component: generalAssignee: Chris Wilson <chris>
Status: RESOLVED MOVED QA Contact: cairo-bugs mailing list <cairo-bugs>
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 68382    

Description Uli Schlachter 2013-09-15 14:53:54 UTC
Let's look at the end of the commit message of commit fb57ea13e04d82866cbc8e86c83261148bb3e231:

    4. This patch causes new failures in the test suite:
    - recording-surface*: possibly an effect of improved quality.
    - surface-pattern-scale-down*, surface-pattern-big-scale-down: the
    reference images should be updated.
    - pthread-same-source: I have no idea why this is failing, since this
    test shouldn't even trigger the new code.
    - large-source-roi: this test attempts to downscale an image which is
    30000 pixels wide down to 7 pixels. The filter parameters seem to be
    created correctly, but they might trigger an overflow somewhere in the
    convolution code; the output rectangle is white instead of red, as if
    nothing was drawn.
    - device-offset-scale: there are subtle differences which look like
    convolution-related smoothing; I'm not sure whether this is OK or not

These changes should be reflected in the reference images for these tests.

Just for completeness, here is the full list of tests which started failing due to that commit (btw the above commit was found by git bisect... so much time wasted pointlessly...):

device-offset-scale
large-source-roi
pthread-same-source
recording-surface-extend-none
recording-surface-extend-pad
recording-surface-extend-reflect
recording-surface-extend-repeat
recording-surface-over
recording-surface-source
surface-pattern-big-scale-down
surface-pattern-scale-down
surface-pattern-scale-down-extend-none
surface-pattern-scale-down-extend-pad
surface-pattern-scale-down-extend-reflect
surface-pattern-scale-down-extend-repeat

Of these tests, as mentioned in the commit message, large-source-roi is the only real new failure, the rest looks like changes due to the new scaling code. For some weird reason this is also the case for pthread-same-source, although this code only scales some source up, not down. Sounds like there is still some bug hiding in the original commit...?
Comment 1 Bill Spitzak 2014-06-16 18:05:42 UTC
I posted to the mailing list a patch that has a different filter generator, it passes far more of the image tests 222/298 rather than 31/489. This is due to it removing artifacts at the edges of the scaled images and being less blurry by using a box filter.
Comment 2 GitLab Migration User 2018-08-25 13:47:13 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/cairo/cairo/issues/194.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.