Last Comment Bug 351986 - 2D canvases appear upside down on OS/2
: 2D canvases appear upside down on OS/2
Status: VERIFIED FIXED
[Fx 2.0.0.1]
: verified1.8.1.1
Product: Core
Classification: Components
Component: Canvas: 2D (show other bugs)
: Trunk
: x86 OS/2
: -- normal (vote)
: ---
Assigned To: Peter Weilbacher
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2006-09-09 16:50 PDT by Peter Weilbacher
Modified: 2007-03-11 15:01 PDT (History)
3 users (show)
dveditz: blocking1.8.1.1+
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Make for loop order dependent on platform (1.54 KB, patch)
2006-09-09 16:58 PDT, Peter Weilbacher
no flags Details | Diff | Review
Improved patch (1.66 KB, patch)
2006-09-13 15:30 PDT, Peter Weilbacher
vladimir: review+
roc: superreview+
mbeltzner: approval1.8.1-
dveditz: approval1.8.1.1+
Details | Diff | Review

Description Peter Weilbacher 2006-09-09 16:50:40 PDT
The canvas that is created by the SeaMonkey tab tooltips as well as the canvases that the Firefox Showcase extension creates of normal webpages appear upside down on OS/2 when built with SVG/Canvas support. Canvases created of images have the right orientation.

This is true for both trunk and 1.8 branch.
Comment 1 Peter Weilbacher 2006-09-09 16:58:12 PDT
Created attachment 237548 [details] [diff] [review]
Make for loop order dependent on platform

I wasn't very lucky with my fixes today, but I am going to try this last one. At least it works, even though it doesn't look very nice. But just wrapping the for line itself into #ifdefs breaks my syntax hightlighting...
Comment 2 Peter Weilbacher 2006-09-09 17:03:38 PDT
Comment on attachment 237548 [details] [diff] [review]
Make for loop order dependent on platform

This time really ask for reviews...
Comment 3 Robert O'Callahan (:roc) (Exited; email my personal email if necessary) 2006-09-11 01:50:42 PDT
I think you should create a new #define up around here:
http://lxr.mozilla.org/seamonkey/source/content/canvas/src/nsCanvasRenderingContext2D.cpp#2726
say NATIVE_SURFACE_IS_VERTICALLY_FLIPPED
and define it for OS/2 only, then test that in the code.
Comment 4 Peter Weilbacher 2006-09-13 15:30:17 PDT
Created attachment 238304 [details] [diff] [review]
Improved patch

roc, thanks for the comment. This new patch takes it into account. Instead of messing with the for-loop start and end values it also seemed better to me to just reverse the one instance where the loop variable is used.
Comment 5 Peter Weilbacher 2006-09-30 02:04:10 PDT
Checked into trunk.
Comment 6 Peter Weilbacher 2006-10-02 01:46:49 PDT
Comment on attachment 238304 [details] [diff] [review]
Improved patch

I realize that it's late but in my mind it is pretty important for OS/2 to get this into branch (SeaMonkey uses the Canvas feature directly, and there are some popular Firefox extensions out there, too).
As it is OS/2 only and has been on trunk for a few days without adverse effects, I don't think it would disturb the release process.
Comment 7 Mike Beltzner [:beltzner, not reading bugmail] 2006-10-02 10:20:59 PDT
Already spinning RC2 builds, so the branch is closed and frozen atm ...
Comment 8 Peter Weilbacher 2006-11-07 15:22:25 PST
Comment on attachment 238304 [details] [diff] [review]
Improved patch

OS/2 only fix, trunk tested.
Comment 9 Daniel Veditz [:dveditz] 2006-11-07 15:24:27 PST
Comment on attachment 238304 [details] [diff] [review]
Improved patch

approved for 1.8 branch, a=dveditz for drivers
Comment 10 Peter Weilbacher 2006-11-11 09:50:22 PST
Checked into branch.
Comment 11 Peter Weilbacher 2007-03-11 15:01:02 PDT
Verifying some older bugs.

Note You need to log in before you can comment on or make changes to this bug.