Changeset 219980 in webkit
- Timestamp:
- Jul 27, 2017 3:39:21 AM (7 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r219979 r219980 1 2017-07-27 Xabier Rodriguez Calvar <calvaris@igalia.com> 2 3 [GStreamer][EME] Not having a key id buffer should not always error 4 https://bugs.webkit.org/show_bug.cgi?id=174889 5 6 Reviewed by Žan Doberšek. 7 8 In r219946 we introduced a hard requirement for a key id buffer 9 that does not happen for all CDMs. 10 11 * platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp: 12 (webKitMediaClearKeyDecryptorSetupCipher): Check for key id buffer 13 and error if we didn't get it. 14 * platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp: 15 (webkitMediaCommonEncryptionDecryptTransformInPlace): Soften the 16 requirement for key id buffer. 17 1 18 2017-07-27 Xabier Rodriguez Calvar <calvaris@igalia.com> 2 19 -
trunk/Source/WebCore/platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp
r219946 r219980 159 159 static gboolean webKitMediaClearKeyDecryptorSetupCipher(WebKitMediaCommonEncryptionDecrypt* self, GstBuffer* keyIDBuffer) 160 160 { 161 if (!keyIDBuffer) { 162 GST_ERROR_OBJECT(self, "got no key id buffer"); 163 return false; 164 } 165 161 166 WebKitMediaClearKeyDecryptPrivate* priv = WEBKIT_MEDIA_CK_DECRYPT_GET_PRIVATE(WEBKIT_MEDIA_CK_DECRYPT(self)); 162 167 gcry_error_t error; -
trunk/Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp
r219946 r219980 255 255 256 256 value = gst_structure_get_value(protectionMeta->info, "kid"); 257 if (!value) { 258 GST_ERROR_OBJECT(self, "Failed to get key ID for sample"); 259 gst_buffer_remove_meta(buffer, reinterpret_cast<GstMeta*>(protectionMeta)); 260 return GST_FLOW_NOT_SUPPORTED; 261 } 262 263 GstBuffer* keyIDBuffer = gst_value_get_buffer(value); 257 GstBuffer* keyIDBuffer = nullptr; 258 if (value) 259 keyIDBuffer = gst_value_get_buffer(value); 260 264 261 WebKitMediaCommonEncryptionDecryptClass* klass = WEBKIT_MEDIA_CENC_DECRYPT_GET_CLASS(self); 265 262 if (!klass->setupCipher(self, keyIDBuffer)) {
Note: See TracChangeset
for help on using the changeset viewer.