Closed
Bug 548795
Opened 15 years ago
Closed 13 years ago
SVG: <use>-clone of image does not appear on first pageload / full-reload, in SVG test "full-animate-elem-30-t"
Categories
(Core :: SVG, defect)
Core
SVG
Tracking
()
RESOLVED
WORKSFORME
People
(Reporter: wgianopoulos, Unassigned)
References
(Depends on 1 open bug, )
Details
Attachments
(1 file)
(deleted),
image/svg+xml
|
Details |
If you start with an empty cache, or do a shift-reload on this page:
http://www.w3.org/Graphics/SVG/Test/20061213/htmlObjectHarness/full-animate-elem-30-t.html
the jpeg image does not appear or animate. If you then do a page reload the image appears and animates correctly.
I suspect the animation starts before the image has been decoded in the first case.
So, I guess animation start needs to be delayed until images are loaded and decoded.
Reporter | ||
Updated•15 years ago
|
Reporter | ||
Updated•15 years ago
|
Summary: SVG SMIL: Image file animation starts before image is decoded → SVG SMIL: Image animation starts before image is decoded
Comment 1•15 years ago
|
||
Bill, which build are you using? Firefox 3.6, or current trunk?
It's not clear to me why exactly the animation would be delayed as you describe. Can you cite the part of the spec that says that should happen?
Comment 2•15 years ago
|
||
(In reply to comment #1)
> Bill, which build are you using? Firefox 3.6, or current trunk?
(I'm guessing current trunk, because 3.6 has SMIL disabled at build-time)
Reporter | ||
Comment 3•15 years ago
|
||
Using current trunk and my own trunk including the non-guarded patches in your SMIL patch queue I see this issue.
The first time i load the page the image does not appear but if i do a page reload it appears an correctly animates.
Reporter | ||
Comment 4•15 years ago
|
||
(In reply to comment #1)
> Bill, which build are you using? Firefox 3.6, or current trunk?
>
> It's not clear to me why exactly the animation would be delayed as you
> describe. Can you cite the part of the spec that says that should happen?
This test, which is part of what i believe to be the official test suite does not display the image animation at all, but does if you merely reload the page. I was not saying the spec says it should wait until the image is decoded before starting any animation, but it would seem that doing so would be a possible fix the issue i am seeing with the image animation portion of this test.
Please feel free to change the summary to more correctly describe the real issue here once that is determined.
Reporter | ||
Updated•15 years ago
|
Summary: SVG SMIL: Image animation starts before image is decoded → SVG SMIL: Image animation does not appear to work if image has not been decoded before the animation start time
Reporter | ||
Comment 5•15 years ago
|
||
I just changed the summary. Does that seem to better describe the problem without jumping to a possibly incorrect solution?
Comment 6•15 years ago
|
||
(In reply to comment #3)
> The first time i load the page the image does not appear but if i do a page
> reload it appears an correctly animates.
Confirmed, using yesterday's m-c nightly:
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.3a2pre) Gecko/20100225 Minefield/3.7a2pre
Image never appears on first page load, but it does on subsequent (non-full) reloads.
Comment 7•15 years ago
|
||
Actually, if I disable smil (via the 'svg.smil.enabled' about:config pref) and shift+reload that page, I get the same issue -- the image never appears -- while a normal reload shows the image.
So, I don't think this is a SMIL-related issue. Updating summary.
Summary: SVG SMIL: Image animation does not appear to work if image has not been decoded before the animation start time → SVG: Image does not appear on first pageload / full-reload, in SVG test "full-animate-elem-30-t"
Updated•15 years ago
|
Summary: SVG: Image does not appear on first pageload / full-reload, in SVG test "full-animate-elem-30-t" → SVG: <use>-clone of image does not appear on first pageload / full-reload, in SVG test "full-animate-elem-30-t"
Comment 8•15 years ago
|
||
Here's a reduced testcase. It just has an <image> element and a <use> element that references it.
The <image> shows up fine on a full-reload -- the <use> element does not.
Updated•15 years ago
|
Attachment #429178 -
Attachment description: testcase 1 → testcase 1 (shift-reload after loading)
Comment 9•15 years ago
|
||
Interesting. The <use> internally just clones the <image> so that we end up with another <image>, right? And that second <image> should kick off its own load?
Comment 10•15 years ago
|
||
WARNING: Someone passed native anonymous content directly into frame construction. Stop doing that!: file ../../../mozilla/layout/base/nsCSSFrameConstructor.cpp, line 5957
That's the <use>d image going from the "loading" state to a "know my size" state. Timothy, weren't we going to make attempts to reframe native anon content just reframe the non-anonymous node? That would help here, I think.
Comment 11•15 years ago
|
||
Yeah, that is bug 496011, which has landed. Without looking I think the problem here is the same problem as bug 536454, specifically bug 536454 comment 3.
We use the regular anonymous content creation path for SVG <use> except for one special case in that path where we don't set the native anonymous flag on the created content so bug 496011 can't catch this case.
Updated•15 years ago
|
Blocks: svg11tests
Reporter | ||
Comment 13•14 years ago
|
||
Well it seems to be slightly different, in that the patch on bug 558663 fixes the issue here, whereas the testcase on bug 536454 crashes the browser with that patch installed.
Reporter | ||
Comment 14•14 years ago
|
||
(In reply to comment #13)
> Well it seems to be slightly different, in that the patch on bug 558663 fixes
> the issue here, whereas the testcase on bug 536454 crashes the browser with
> that patch installed.
Although that might be another underlying SMIL issue.
Comment 16•13 years ago
|
||
Seems to work now both trunk and 7.0
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•