[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
jer.noble at apple.com
jer.noble at apple.com
Wed Dec 22 15:52:00 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit f4c1a99f9737e4af63d9ef88be0037d26393bd8d
Author: jer.noble at apple.com <jer.noble at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Nov 15 19:39:16 2010 +0000
2010-11-12 Jer Noble <jer.noble at apple.com>
Reviewed by Brady Eidson.
Can't view HTML5 video when running Safari with an authenticated proxy server
<rdar://problem/8351926>
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivate::createQTMovie):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@72017 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 19fff5c..add3ec6 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,13 @@
+2010-11-12 Jer Noble <jer.noble at apple.com>
+
+ Reviewed by Brady Eidson.
+
+ Can't view HTML5 video when running Safari with an authenticated proxy server
+ <rdar://problem/8351926>
+
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ (WebCore::MediaPlayerPrivate::createQTMovie):
+
2010-11-14 Abhishek Arya <inferno at chromium.org>
Reviewed by Dimitri Glazkov.
diff --git a/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm b/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm
index 06c7924..58500dd 100644
--- a/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm
+++ b/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm
@@ -243,21 +243,49 @@ MediaPlayerPrivate::~MediaPlayerPrivate()
void MediaPlayerPrivate::createQTMovie(const String& url)
{
NSURL *cocoaURL = KURL(ParsedURLString, url);
- NSDictionary *movieAttributes = [NSDictionary dictionaryWithObjectsAndKeys:
+ NSMutableDictionary *movieAttributes = [NSMutableDictionary dictionaryWithObjectsAndKeys:
cocoaURL, QTMovieURLAttribute,
[NSNumber numberWithBool:m_player->preservesPitch()], QTMovieRateChangesPreservePitchAttribute,
[NSNumber numberWithBool:YES], QTMoviePreventExternalURLLinksAttribute,
[NSNumber numberWithBool:YES], QTSecurityPolicyNoCrossSiteAttribute,
[NSNumber numberWithBool:NO], QTMovieAskUnresolvedDataRefsAttribute,
[NSNumber numberWithBool:NO], QTMovieLoopsAttribute,
-#if !defined(BUILDING_ON_TIGER) && !defined(BUILDING_ON_LEOPARD)
- [NSNumber numberWithBool:YES], @"QTMovieOpenForPlaybackAttribute",
-#endif
#ifndef BUILDING_ON_TIGER
QTMovieApertureModeClean, QTMovieApertureModeAttribute,
#endif
nil];
+#if defined(BUILDING_ON_SNOW_LEOPARD)
+ CFDictionaryRef proxySettings = CFNetworkCopySystemProxySettings();
+ CFArrayRef proxiesForURL = CFNetworkCopyProxiesForURL((CFURLRef)cocoaURL, proxySettings);
+ BOOL willUseProxy = YES;
+
+ if (!proxiesForURL || !CFArrayGetCount(proxiesForURL))
+ willUseProxy = NO;
+
+ if (CFArrayGetCount(proxiesForURL) == 1) {
+ CFDictionaryRef proxy = (CFDictionaryRef)CFArrayGetValueAtIndex(proxiesForURL, 0);
+ ASSERT(CFGetTypeID(proxy) == CFDictionaryGetTypeID());
+
+ CFStringRef proxyType = (CFStringRef)CFDictionaryGetValue(proxy, kCFProxyTypeKey);
+ ASSERT(CFGetTypeID(proxyType) == CFStringGetTypeID());
+
+ if (CFStringCompare(proxyType, kCFProxyTypeNone, 0) == kCFCompareEqualTo)
+ willUseProxy = NO;
+ }
+
+ if (!willUseProxy) {
+ // Only pass the QTMovieOpenForPlaybackAttribute flag if there are no proxy servers, due
+ // to rdar://problem/7531776.
+ [movieAttributes setObject:[NSNumber numberWithBool:YES] forKey:@"QTMovieOpenForPlaybackAttribute"];
+ }
+
+ if (proxiesForURL)
+ CFRelease(proxiesForURL);
+ if (proxySettings)
+ CFRelease(proxySettings);
+#endif
+
createQTMovie(cocoaURL, movieAttributes);
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list