ISOTrackEncryptionBox returns incorrect defaultKeyID
authorjer.noble@apple.com <jer.noble@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 8 Oct 2018 21:12:12 +0000 (21:12 +0000)
committerjer.noble@apple.com <jer.noble@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 8 Oct 2018 21:12:12 +0000 (21:12 +0000)
commit934b3cdda512d9dcac8c4b7a9cadf1dbbb99a0c2
tree21f23d2cb18129dbf7f27223760e796d6d50e34f
parent4bb72c05e4f4dccf459583073e4ed1c9b6f269d6
ISOTrackEncryptionBox returns incorrect defaultKeyID
https://bugs.webkit.org/show_bug.cgi?id=190368

Reviewed by Eric Carlson.

Source/WebCore:

Test: TestWebKitAPI.ISOBox.ISOProtectionSchemeInfoBox

ISOTrackEncryptionBox::parse() increments the data offset by an incorrect amount.

Drive-by fix: add EXPORT macros to all the ISO box classes so that tests can be written in TestWebKitAPI.

* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/iso/ISOBox.h:
* platform/graphics/iso/ISOOriginalFormatBox.h:
* platform/graphics/iso/ISOProtectionSchemeInfoBox.h:
* platform/graphics/iso/ISOProtectionSystemSpecificHeaderBox.h:
* platform/graphics/iso/ISOSchemeInformationBox.h:
* platform/graphics/iso/ISOSchemeTypeBox.h:
* platform/graphics/iso/ISOTrackEncryptionBox.cpp:
(WebCore::ISOTrackEncryptionBox::parse):
* platform/graphics/iso/ISOTrackEncryptionBox.h:

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/ISOBox.cpp: Added.
(TestWebKitAPI::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@236941 268f45cc-cd09-0410-ab3c-d52691b4dbfc
13 files changed:
Source/WebCore/ChangeLog
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/platform/graphics/iso/ISOBox.h
Source/WebCore/platform/graphics/iso/ISOOriginalFormatBox.h
Source/WebCore/platform/graphics/iso/ISOProtectionSchemeInfoBox.h
Source/WebCore/platform/graphics/iso/ISOProtectionSystemSpecificHeaderBox.h
Source/WebCore/platform/graphics/iso/ISOSchemeInformationBox.h
Source/WebCore/platform/graphics/iso/ISOSchemeTypeBox.h
Source/WebCore/platform/graphics/iso/ISOTrackEncryptionBox.cpp
Source/WebCore/platform/graphics/iso/ISOTrackEncryptionBox.h
Tools/ChangeLog
Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
Tools/TestWebKitAPI/Tests/WebCore/ISOBox.cpp [new file with mode: 0644]