⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 286953 in webkit


Ignore:
Timestamp:
Dec 13, 2021, 9:53:55 AM (5 years ago)
Author:
jer.noble@apple.com
Message:

Unreviewed build fix; add a convenience function to safely compare possibly null CFStringRefs.

  • platform/graphics/avfoundation/FormatDescriptionUtilities.cpp:

(WebCore::presentationSizeFromFormatDescription):
(WebCore::colorSpaceFromFormatDescription):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r286952 r286953  
     12021-12-13  Jer Noble  <jer.noble@apple.com>
     2
     3        Unreviewed build fix; add a convenience function to safely compare possibly null CFStringRefs.
     4
     5        * platform/graphics/avfoundation/FormatDescriptionUtilities.cpp:
     6        (WebCore::presentationSizeFromFormatDescription):
     7        (WebCore::colorSpaceFromFormatDescription):
     8
    192021-12-13  Sergio Villar Senin  <svillar@igalia.com>
    210
  • trunk/Source/WebCore/platform/graphics/avfoundation/FormatDescriptionUtilities.cpp

    r286937 r286953  
    5050    if (!formatDescription)
    5151        return { };
    52    
     52
    5353    return FloatSize(PAL::CMVideoFormatDescriptionGetPresentationDimensions(formatDescription, true, true));
    5454}
     
    5959        return std::nullopt;
    6060
     61    auto safeCFStringEquals = [] (CFStringRef one, CFStringRef two) -> bool {
     62        if (!one || !two)
     63            return false;
     64        return CFStringCompare(one, two, 0) == kCFCompareEqualTo;
     65    };
     66
    6167    PlatformVideoColorSpace colorSpace;
    6268    if (auto primaries = static_cast<CFStringRef>(PAL::CMFormatDescriptionGetExtension(formatDescription, PAL::get_CoreMedia_kCMFormatDescriptionExtension_ColorPrimaries()))) {
    63         if (CFStringCompare(primaries, PAL::get_CoreMedia_kCMFormatDescriptionColorPrimaries_ITU_R_709_2(), 0) == kCFCompareEqualTo)
     69        if (safeCFStringEquals(primaries, PAL::get_CoreMedia_kCMFormatDescriptionColorPrimaries_ITU_R_709_2()))
    6470            colorSpace.primaries = PlatformVideoColorPrimaries::Bt709;
    65         else if (CFStringCompare(primaries, PAL::get_CoreMedia_kCMFormatDescriptionColorPrimaries_EBU_3213(), 0) == kCFCompareEqualTo)
     71        else if (safeCFStringEquals(primaries, PAL::get_CoreMedia_kCMFormatDescriptionColorPrimaries_EBU_3213()))
    6672            colorSpace.primaries = PlatformVideoColorPrimaries::Bt470bg;
    67         else if (CFStringCompare(primaries, PAL::get_CoreMedia_kCMFormatDescriptionColorPrimaries_SMPTE_C(), 0) == kCFCompareEqualTo)
     73        else if (safeCFStringEquals(primaries, PAL::get_CoreMedia_kCMFormatDescriptionColorPrimaries_SMPTE_C()))
    6874            colorSpace.primaries = PlatformVideoColorPrimaries::Smpte170m;
    6975    }
    7076
    7177    if (auto transfer = static_cast<CFStringRef>(PAL::CMFormatDescriptionGetExtension(formatDescription, PAL::get_CoreMedia_kCMFormatDescriptionExtension_TransferFunction()))) {
    72         if (CFStringCompare(transfer, PAL::get_CoreMedia_kCMFormatDescriptionTransferFunction_ITU_R_709_2(), 0) == kCFCompareEqualTo)
     78        if (safeCFStringEquals(transfer, PAL::get_CoreMedia_kCMFormatDescriptionTransferFunction_ITU_R_709_2()))
    7379            colorSpace.transfer = PlatformVideoTransferCharacteristics::Bt709;
    74         else if (CFStringCompare(transfer, PAL::get_CoreMedia_kCMFormatDescriptionTransferFunction_sRGB(), 0) == kCFCompareEqualTo)
     80        else if (safeCFStringEquals(transfer, PAL::get_CoreMedia_kCMFormatDescriptionTransferFunction_sRGB()))
    7581            colorSpace.transfer = PlatformVideoTransferCharacteristics::Iec6196621;
    7682    }
    7783
    7884    if (auto matrix = static_cast<CFStringRef>(PAL::CMFormatDescriptionGetExtension(formatDescription, PAL::get_CoreMedia_kCMFormatDescriptionExtension_YCbCrMatrix()))) {
    79         if (CFStringCompare(matrix, PAL::get_CoreMedia_kCVImageBufferYCbCrMatrix_ITU_R_709_2(), 0) == kCFCompareEqualTo)
     85        if (safeCFStringEquals(matrix, PAL::get_CoreMedia_kCVImageBufferYCbCrMatrix_ITU_R_709_2()))
    8086            colorSpace.matrix = PlatformVideoMatrixCoefficients::Bt709;
    81         else if (CFStringCompare(matrix, PAL::get_CoreMedia_kCVImageBufferYCbCrMatrix_ITU_R_601_4(), 0) == kCFCompareEqualTo)
     87        else if (safeCFStringEquals(matrix, PAL::get_CoreMedia_kCVImageBufferYCbCrMatrix_ITU_R_601_4()))
    8288            colorSpace.matrix = PlatformVideoMatrixCoefficients::Bt470bg;
    83         else if (CFStringCompare(matrix, PAL::get_CoreMedia_kCMFormatDescriptionYCbCrMatrix_SMPTE_240M_1995(), 0) == kCFCompareEqualTo)
     89        else if (safeCFStringEquals(matrix, PAL::get_CoreMedia_kCMFormatDescriptionYCbCrMatrix_SMPTE_240M_1995()))
    8490            colorSpace.matrix = PlatformVideoMatrixCoefficients::Smpte170m;
    8591    }
Note: See TracChangeset for help on using the changeset viewer.