Bug 104410 - When a recording surface is used as source, a script surface writes the output device after all resources should have been freed.
Summary: When a recording surface is used as source, a script surface writes the outpu...
Status: RESOLVED MOVED
Alias: None
Product: cairo
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Chris Wilson
QA Contact: cairo-bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-12-28 23:37 UTC by Antony Lee
Modified: 2018-08-25 13:56 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
minimal example reproducing the issue. (2.59 KB, text/x-csrc)
2017-12-28 23:37 UTC, Antony Lee
Details

Description Antony Lee 2017-12-28 23:37:49 UTC
Created attachment 136439 [details]
minimal example reproducing the issue.

When a surface and the associated device are flush()ed and finish()ed, I believe that cairo should never write to the device anymore (the documentation contains sentences such as "This function finishes the surface and drops all references to external resources. For example, for the Xlib backend it means that cairo will no longer access the drawable, which can be freed." and "This function finishes the device and drops all references to external resources. All surfaces, fonts and other objects created for this device will be finished, too.").

However, when a recording surface is used as a source for a script surface, the device appears to be accessed after the resources have been released.  See attached source for reproducing example.
Comment 1 GitLab Migration User 2018-08-25 13:56:17 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/277.


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.