diff options
author | Kristian Monsen <kristianm@google.com> | 2010-12-01 12:19:46 +0000 |
---|---|---|
committer | Kristian Monsen <kristianm@google.com> | 2010-12-01 17:14:56 +0000 |
commit | b2743d4d2391f76c75e6ec82f8fdc185d103b43a (patch) | |
tree | dfd3f190671974f59eece194b585337078e2493d /WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp | |
parent | 21bca2af9251ca60b9b7aa6b36b422160deeb23f (diff) | |
download | external_webkit-b2743d4d2391f76c75e6ec82f8fdc185d103b43a.zip external_webkit-b2743d4d2391f76c75e6ec82f8fdc185d103b43a.tar.gz external_webkit-b2743d4d2391f76c75e6ec82f8fdc185d103b43a.tar.bz2 |
Youtube urls can now start with /v/ or /e/
Fix for bug 3242961
Note that the youtube player crashes when you launch it,
but that also happens with old style urls.
Tested with the testcase in the bug.
Change-Id: I0cb59f8404fe47aabec34c0a21e614f553ea0c32
Diffstat (limited to 'WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp')
-rw-r--r-- | WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp b/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp index d622719..ed1da87 100644 --- a/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp +++ b/WebKit/android/WebCoreSupport/FrameLoaderClientAndroid.cpp @@ -980,6 +980,7 @@ WTF::PassRefPtr<WebCore::Frame> FrameLoaderClientAndroid::createFrame(const KURL // YouTube flash url path starts with /v/ static const char slash_v_slash[] = { '/', 'v', '/' }; +static const char slash_e_slash[] = { '/', 'e', '/' }; static bool isValidYouTubeVideo(const String& path) { @@ -990,8 +991,10 @@ static bool isValidYouTubeVideo(const String& path) return false; CString str = path.lower().utf8(); const char* data = str.data(); + // Youtube flash url can start with /v/ or /e/ if (memcmp(data, slash_v_slash, sizeof(slash_v_slash)) != 0) - return false; + if (memcmp(data, slash_e_slash, sizeof(slash_e_slash)) != 0) + return false; // Start after /v/ for (unsigned int i = sizeof(slash_v_slash); i < len; i++) { char c = data[i]; |