Make SVG ForeignObject work properly in linux

RESOLVED FIXED

Status

()

Core
SVG
RESOLVED FIXED
17 years ago
11 years ago

People

(Reporter: Andrew Simmonds, Assigned: Alex Fritze)

Tracking

Trunk
x86
Linux
Points:
---
Bug Flags:
in-testsuite +

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 1 obsolete attachment)

(Reporter)

Description

17 years ago
Currently, in linux, SVG ForeignObject's will only work properly if preloaded in
cache. I will attach a patch that will alleiviate this by forcing a DoReflow().
(Reporter)

Comment 1

17 years ago
Created attachment 61088 [details] [diff] [review]
patch to fix
This is ugly. Ugly. Ugly.

I'll check it in when I get home, unless alex beats me to it.

Did I mention ugly?
Checked in.
Status: NEW → RESOLVED
Last Resolved: 17 years ago
Resolution: --- → FIXED
(Assignee)

Comment 4

17 years ago
Reopening & taking bug because this is not really a fix.

Status: RESOLVED → REOPENED
Resolution: FIXED → ---
(Assignee)

Comment 5

17 years ago
reassigning
Assignee: simm0 → alex.fritze
Status: REOPENED → NEW
(Assignee)

Comment 6

17 years ago
Created attachment 61595 [details] [diff] [review]
new patch

James (james.turner@crocodile-clips.com) has found the real reason why we mess
up here. It's two uninitialized vars in
nsSVGForeignObjectFrame::TransformVector(). A one-liner!
At the same time I've also corrected the way in which we apply transformations
to foreignObjects. Since we can't rotate them yet, we have to make sure the
(left, top) stays (left,top).
Attachment #61088 - Attachment is obsolete: true
Comment on attachment 61595 [details] [diff] [review]
new patch

And because they were passed by reference, not value, the compiler didn't warn.
r=bbaetz
Attachment #61595 - Flags: review+
(Assignee)

Comment 8

17 years ago
Checked in.
Status: NEW → RESOLVED
Last Resolved: 17 years ago17 years ago
Resolution: --- → FIXED
Marking in‑testsuite+ since we have multiple foreignObject reftests now.
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.