Bug 69468

Summary: media/video-loop.html is failing on Lion because of negative currentTime()
Product: WebKit Reporter: Jer Noble <jer.noble>
Component: MediaAssignee: Jer Noble <jer.noble>
Status: RESOLVED FIXED    
Severity: Normal    
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 67509    
Attachments:
Description Flags
Patch darin: review+

Description Jer Noble 2011-10-05 14:57:56 PDT
Both the following tests fail because the AVFoundation back-end on Lion can report a negative currentTime.

media/video-loop.html
media/video-pause-immediately.html
Comment 1 Jer Noble 2011-10-06 14:07:21 PDT
Actually, after digging into this, only video-loop.html is being affected by the negative-time problem.
Comment 2 Jer Noble 2011-10-06 14:10:19 PDT
Created attachment 110017 [details]
Patch
Comment 3 Darin Adler 2011-10-06 16:07:39 PDT
Comment on attachment 110017 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=110017&action=review

> Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:435
> +        float seconds = narrowPrecisionToFloat(CMTimeGetSeconds(itemTime));
> +        return max(seconds, 0.0f);

Should not need a local variable for this. Probably reads better without it.
Comment 4 Jer Noble 2011-10-06 16:37:25 PDT
(In reply to comment #3)
> (From update of attachment 110017 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=110017&action=review
> 
> > Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:435
> > +        float seconds = narrowPrecisionToFloat(CMTimeGetSeconds(itemTime));
> > +        return max(seconds, 0.0f);
> 
> Should not need a local variable for this. Probably reads better without it.

You're right; I was thinking of the MAX macro.  I'll change this.

Thanks!
Comment 5 Jer Noble 2011-10-10 15:00:40 PDT
Committed r97093: <http://trac.webkit.org/changeset/97093>