[Webkit-unassigned] [Bug 27561] ImageDecoder enhancements for WINCE port
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Aug 14 12:17:05 PDT 2009
https://bugs.webkit.org/show_bug.cgi?id=27561
--- Comment #39 from Yong Li <yong.li at torchmobile.com> 2009-08-14 12:17:03 PDT ---
(In reply to comment #38)
> (In reply to comment #37)
> > (In reply to comment #30)
>
> But does anyone do that? It doesn't look like it from this patch. Why build
> factory functions unless you need them?
See first patch. We have ImageFrameSinkWince defined which holds a SharedBitmap
as the buffer provider.
>
> I don't understand. I know how GIF animation and frame disposal methods work.
> The existing ports handle them correctly without using this mechanism. Why
> doesn't the existing mechanism work for you, and how do you deal with not
> having the frame-clearing optimization for large GIFs? I would think on a
> memory-constrained platform that'd be even more important than it is on
> desktops.
I've fixed many bugs on it, and our browser runs OK. Let me review this and get
back to you. I did that so long time ago :)
> What subclasses?
ImageFrameSinkWince, if I am not wrong.
>
> > > Having both setRGB16() and setRGBA() seems like a poor API for callers. Why
> > > doesn't setRGBA() just write the data in 16-bit format if the bitmap is 16-bit?
> >
> > they also have different inputs
>
> This response is vague enough that I haven't learned anything. What is the
> difference and why can't it be created at the SharedBuffer or ImageFrameSink
> level?
I'm lost now. I thought you mean why setRGB16 and setRGBA cannot share a same
function. If that was the question, I would say separate functions are
definitely better.
>
> > > Why does getFrame() return 0 when the status is frameEmpty? An empty frame is
> > > still a valid one.
> >
> > why? Who likes to waste CPU time on empty frame?
>
> What CPU is being wasted? We don't blit anything with empty frames.
So why cannot it return 0?
>
> > > The proper use of setCanFreeBuffer() is not obvious to me.
> >
> > This nofities the buffer that decoder has finished writting to the buffer, so
> > the buffer can be released when it's under memory pressure.
>
> Isn't this the same signal as setting the status to FrameComplete?
FrameComplete is just for a single frame. But GIF decoder may still want to
read a finished frame when it processes the next one.
>
> > The one that I'm most concerned is about GIF m_compositedWithPreviousFrame
> > thing. That's complicated, and ImageFrameSink code works in a little different
> > way. Want to talk to somebody on this.
>
> Maybe you could write up a short doc with descriptions of the existing code and
> your code, pointing out the differences and why they are valuable?
ok. but for why they are valuable, I have mentioned in bug 26467, see comment
#5
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list