Surround all direct pixel operations with Cairo.Surface.Flush/MarkDirty
Bug #604869 reported by
Maia Everett
This bug affects 3 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Pinta |
Fix Released
|
High
|
Unassigned | ||
pinta (Debian) |
Fix Released
|
Unknown
|
|||
pinta (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
The latest Cairo 1.9.x releases (which are now in Ubuntu Maverick) use caching for image surfaces, resulting in direct pixel operations in Pinta not drawing correctly.
Therefore, all operations modifying pixels via pointers must be surrounded with Flush/MarkDirty, like this:
surf.Flush ();
// Modify some pixels on surf directly
surf.MarkDirty ();
Related branches
Changed in pinta (Debian): | |
status: | Unknown → Confirmed |
Changed in pinta (Debian): | |
status: | Confirmed → Fix Released |
Changed in pinta: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
This bug was fixed in the package pinta - 0.4+dfsg-1ubuntu1
---------------
pinta (0.4+dfsg-1ubuntu1) maverick; urgency=low
* Merge from Debian (LP: #603002), no previous Ubuntu changes retained patches/ bilinear_ resize. patch merged upstream). 9_flush_ markdirty. patch:
(debian/
+ System toolbar settings respected now (LP: #585063).
* Remaining Ubuntu changes:
+ Added cairo_1.
- Surround direct pixel operations with Flush/MarkDirty to fix a grave
bug with unusable canvas (LP: #604869).
-- Maia Kozheva <email address hidden> Tue, 13 Jul 2010 12:22:16 +0700