<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>208038</bug_id>
          
          <creation_ts>2020-02-20 16:11:14 -0800</creation_ts>
          <short_desc>[CG] Change the UTI of the &quot;WebP&quot; image to be &quot;com.google.webp&quot;</short_desc>
          <delta_ts>2020-03-03 15:20:33 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Images</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1621469</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-02-20 16:11:14 -0800</bug_when>
    <thetext>This is to conform with CGImageSourceGetType().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621474</commentid>
    <comment_count>1</comment_count>
      <attachid>391354</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-02-20 16:15:34 -0800</bug_when>
    <thetext>Created attachment 391354
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621513</commentid>
    <comment_count>2</comment_count>
      <attachid>391364</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-02-20 17:49:09 -0800</bug_when>
    <thetext>Created attachment 391364
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621547</commentid>
    <comment_count>3</comment_count>
      <attachid>391364</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-02-20 19:48:54 -0800</bug_when>
    <thetext>Comment on attachment 391364
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=391364&amp;action=review

This patch looks good.

&gt; Source/WebCore/platform/graphics/cg/UTIRegistry.cpp:56
&gt; +        &quot;com.google.webp&quot;_s,

Is this OK for older mac, iOS versions? If not, then compile time guards are needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625171</commentid>
    <comment_count>4</comment_count>
      <attachid>392307</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-03-03 12:17:38 -0800</bug_when>
    <thetext>Created attachment 392307
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625175</commentid>
    <comment_count>5</comment_count>
      <attachid>391364</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-03-03 12:20:51 -0800</bug_when>
    <thetext>Comment on attachment 391364
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=391364&amp;action=review

&gt;&gt; Source/WebCore/platform/graphics/cg/UTIRegistry.cpp:56
&gt;&gt; +        &quot;com.google.webp&quot;_s,
&gt; 
&gt; Is this OK for older mac, iOS versions? If not, then compile time guards are needed.

You are right. But since WebP will be supported in future macOS/iOS releases I think we do not need to add compile time guards here. I think #if HAVE(WEBP) is enough but I will add both &quot;public.webp&quot; and &quot;com.google.webp&quot; to this list and take whatever CG supports.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625176</commentid>
    <comment_count>6</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-03-03 12:22:31 -0800</bug_when>
    <thetext>&lt;rdar://problem/59977846&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625236</commentid>
    <comment_count>7</comment_count>
      <attachid>392307</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-03-03 14:10:02 -0800</bug_when>
    <thetext>Comment on attachment 392307
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=392307&amp;action=review

&gt; Source/WebCore/platform/graphics/cg/UTIRegistry.cpp:67
&gt; +            if (CFArrayContainsValue(systemImageTypes.get(), CFRangeMake(0, count), string.get()))

This is linear search. How big is systemImageTypes?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625255</commentid>
    <comment_count>8</comment_count>
      <attachid>392307</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2020-03-03 14:25:22 -0800</bug_when>
    <thetext>Comment on attachment 392307
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=392307&amp;action=review

&gt;&gt; Source/WebCore/platform/graphics/cg/UTIRegistry.cpp:67
&gt;&gt; +            if (CFArrayContainsValue(systemImageTypes.get(), CFRangeMake(0, count), string.get()))
&gt; 
&gt; This is linear search. How big is systemImageTypes?

Between 50 and 60 items. The problem is the items of this array are not sorted. So I can&apos;t use CFArrayBSearchValues().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625268</commentid>
    <comment_count>9</comment_count>
      <attachid>392307</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-03 15:02:06 -0800</bug_when>
    <thetext>Comment on attachment 392307
Patch

Clearing flags on attachment: 392307

Committed r257805: &lt;https://trac.webkit.org/changeset/257805&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625269</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-03 15:02:08 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625279</commentid>
    <comment_count>11</comment_count>
      <attachid>392307</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-03 15:20:26 -0800</bug_when>
    <thetext>Comment on attachment 392307
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=392307&amp;action=review

&gt; Source/WebCore/platform/graphics/cg/UTIRegistry.cpp:59
&gt; +        const String defaultSupportedImageTypes[] = {
&gt; +            &quot;com.compuserve.gif&quot;_s,
&gt; +            &quot;com.microsoft.bmp&quot;_s,
&gt; +            &quot;com.microsoft.cur&quot;_s,
&gt; +            &quot;com.microsoft.ico&quot;_s,
&gt; +            &quot;public.jpeg&quot;_s,
&gt; +            &quot;public.png&quot;_s,
&gt; +            &quot;public.tiff&quot;_s,
&gt;  #if !PLATFORM(WIN)
&gt; -        &quot;public.jpeg-2000&quot;_s,
&gt; -        &quot;public.mpo-image&quot;_s,
&gt; +            &quot;public.jpeg-2000&quot;_s,
&gt; +            &quot;public.mpo-image&quot;_s,
&gt;  #endif
&gt;  #if HAVE(WEBP)
&gt; -        &quot;public.webp&quot;_s,
&gt; +            &quot;public.webp&quot;_s,
&gt; +            &quot;com.google.webp&quot;_s,
&gt;  #endif
&gt; -    };
&gt; +        };

This is ok as-is. No change needed. A more efficient solution would use std::array&lt;const char*,...&gt; or just make this a const char* array with a nullptr for the last entry because:

1. No need to stack-allocate and initialize String, which does a strlen() &lt;-- well, ASCIILiteral does that
2. Because of (1) there is a reduced memory footprint during the call.

&gt; Source/WebCore/platform/graphics/cg/UTIRegistry.cpp:61
&gt;          RetainPtr&lt;CFArrayRef&gt; systemImageTypes = adoptCF(CGImageSourceCopyTypeIdentifiers());

This is ok as-is. No change needed. A more efficient solution would be to copy the array (not a deep copy) then sort it and binary search it below because:

1. Reduces linear search to logarithmic search &lt;-- especially good if the array gets over a 100 or more items in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625280</commentid>
    <comment_count>12</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2020-03-03 15:20:33 -0800</bug_when>
    <thetext>This patch looks good.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391354</attachid>
            <date>2020-02-20 16:15:34 -0800</date>
            <delta_ts>2020-02-20 17:49:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208038-20200220161533.patch</filename>
            <type>text/plain</type>
            <size>3430</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1NzA5OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDIwLTAyLTIwICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgW0NHXSBDaGFu
Z2UgdGhlIFVUSSBvZiB0aGUgIldlYlAiIGltYWdlIHRvIGJlICJjb20uZ29vZ2xlLndlYnAiCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDgwMzgKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIHRv
IGNvbmZvcm0gd2l0aCBDR0ltYWdlU291cmNlR2V0VHlwZSgpLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2cvVVRJUmVnaXN0cnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6ZGVmYXVs
dFN1cHBvcnRlZEltYWdlVHlwZXMpOgorCiAyMDIwLTAyLTIwICBaYWxhbiBCdWp0YXMgIDx6YWxh
bkBhcHBsZS5jb20+CiAKICAgICAgICAgW0ZpcnN0IHBhaW50XSBGcmFtZVZpZXc6OmxvYWRQcm9n
cmVzc2luZ1N0YXR1c0NoYW5nZWQgc2hvdWxkIGNoZWNrIG1fZmlyc3RWaXN1YWxseU5vbkVtcHR5
TGF5b3V0TWlsZXN0b25lSXNQZW5kaW5nCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jZy9VVElSZWdpc3RyeS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2cvVVRJUmVnaXN0cnkuY3BwCShyZXZpc2lvbiAyNTcwMDgpCisr
KyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9VVElSZWdpc3RyeS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTM5LDM3ICszOSw0NCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNv
bnN0IEhhc2hTZXQ8U3RyaW5nPiYgZGVmYXVsdFN1cHBvcnRlZEltYWdlVHlwZXMoKQogewotICAg
IC8vIENHIGF0IGxlYXN0IHN1cHBvcnRzIHRoZSBmb2xsb3dpbmcgc3RhbmRhcmQgaW1hZ2UgdHlw
ZXM6Ci0gICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEhhc2hTZXQ8U3RyaW5nPj4gZGVmYXVsdFN1
cHBvcnRlZEltYWdlVHlwZXMgPSBzdGQ6OmluaXRpYWxpemVyX2xpc3Q8U3RyaW5nPiB7Ci0gICAg
ICAgICJjb20uY29tcHVzZXJ2ZS5naWYiX3MsCi0gICAgICAgICJjb20ubWljcm9zb2Z0LmJtcCJf
cywKLSAgICAgICAgImNvbS5taWNyb3NvZnQuY3VyIl9zLAotICAgICAgICAiY29tLm1pY3Jvc29m
dC5pY28iX3MsCi0gICAgICAgICJwdWJsaWMuanBlZyJfcywKLSAgICAgICAgInB1YmxpYy5wbmci
X3MsCi0gICAgICAgICJwdWJsaWMudGlmZiJfcywKKyAgICBzdGF0aWMgYXV0byBkZWZhdWx0U3Vw
cG9ydGVkSW1hZ2VUeXBlcyA9IG1ha2VOZXZlckRlc3Ryb3llZChbXSB7CisgICAgICAgIHN0YXRp
YyBjb25zdCBDRlN0cmluZ1JlZiBrV2ViQ29yZVR5cGVDVVIgPSBDRlNUUigiY29tLm1pY3Jvc29m
dC5jdXIiKTsKKyAgICAgICAgc3RhdGljIGNvbnN0IENGU3RyaW5nUmVmIGtXZWJDb3JlVHlwZU1Q
T0ltYWdlID0gQ0ZTVFIoInB1YmxpYy5tcG8taW1hZ2UiKTsKKyNpZiBIQVZFKFdFQlApCisgICAg
ICAgIHN0YXRpYyBjb25zdCBDRlN0cmluZ1JlZiBrV2ViQ29yZVR5cGVXZWJQID0gQ0ZTVFIoImNv
bS5nb29nbGUud2VicCIpOworI2VuZGlmCisgICAgICAgIEhhc2hTZXQ8Q0ZTdHJpbmdSZWY+IGlt
YWdlVHlwZXMgPSBzdGQ6OmluaXRpYWxpemVyX2xpc3Q8Q0ZTdHJpbmdSZWY+IHsKKyAgICAgICAg
ICAgIGtVVFR5cGVHSUYsCisgICAgICAgICAgICBrVVRUeXBlQk1QLAorICAgICAgICAgICAga1dl
YkNvcmVUeXBlQ1VSLAorICAgICAgICAgICAga1VUVHlwZUlDTywKKyAgICAgICAgICAgIGtVVFR5
cGVKUEVHLAorICAgICAgICAgICAga1VUVHlwZVBORywKKyAgICAgICAgICAgIGtVVFR5cGVUSUZG
LAogI2lmICFQTEFURk9STShXSU4pCi0gICAgICAgICJwdWJsaWMuanBlZy0yMDAwIl9zLAotICAg
ICAgICAicHVibGljLm1wby1pbWFnZSJfcywKKyAgICAgICAgICAgIGtVVFR5cGVKUEVHMjAwMCwK
KyAgICAgICAgICAgIGtXZWJDb3JlVHlwZU1QT0ltYWdlLAogI2VuZGlmCiAjaWYgSEFWRShXRUJQ
KQotICAgICAgICAicHVibGljLndlYnAiX3MsCisgICAgICAgICAgICBrV2ViQ29yZVR5cGVXZWJQ
LAogI2VuZGlmCi0gICAgfTsKKyAgICAgICAgfTsKIAogI2lmbmRlZiBOREVCVUcKLSAgICAvLyBN
YWtlIHN1cmUgdGhhdCBDRyBzdXBwb3J0cyB0aGVtLgotICAgIHN0YXRpYyBzdGQ6Om9uY2VfZmxh
ZyBvbmNlRmxhZzsKLSAgICBzdGQ6OmNhbGxfb25jZShvbmNlRmxhZywgW10geworICAgICAgICAv
LyBNYWtlIHN1cmUgQ0cgc3VwcG9ydHMgZGVjb2RpbmcgdGhlIGltYWdlVHlwZXMuCiAgICAgICAg
IFJldGFpblB0cjxDRkFycmF5UmVmPiBzeXN0ZW1JbWFnZVR5cGVzID0gYWRvcHRDRihDR0ltYWdl
U291cmNlQ29weVR5cGVJZGVudGlmaWVycygpKTsKICAgICAgICAgQ0ZJbmRleCBjb3VudCA9IENG
QXJyYXlHZXRDb3VudChzeXN0ZW1JbWFnZVR5cGVzLmdldCgpKTsKLSAgICAgICAgZm9yIChhdXRv
JiBpbWFnZVR5cGUgOiBkZWZhdWx0U3VwcG9ydGVkSW1hZ2VUeXBlcy5nZXQoKSkgewotICAgICAg
ICAgICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBzdHJpbmcgPSBpbWFnZVR5cGUuY3JlYXRlQ0ZT
dHJpbmcoKTsKLSAgICAgICAgICAgIEFTU0VSVChDRkFycmF5Q29udGFpbnNWYWx1ZShzeXN0ZW1J
bWFnZVR5cGVzLmdldCgpLCBDRlJhbmdlTWFrZSgwLCBjb3VudCksIHN0cmluZy5nZXQoKSkpOwor
ICAgICAgICBmb3IgKGF1dG8mIGltYWdlVHlwZSA6IGltYWdlVHlwZXMpIHsKKyAgICAgICAgICAg
IFJldGFpblB0cjxDRlN0cmluZ1JlZj4gc3RyaW5nID0gaW1hZ2VUeXBlOworICAgICAgICAgICAg
QVNTRVJUKENGQXJyYXlDb250YWluc1ZhbHVlKHN5c3RlbUltYWdlVHlwZXMuZ2V0KCksIENGUmFu
Z2VNYWtlKDAsIGNvdW50KSwgaW1hZ2VUeXBlKSk7CiAgICAgICAgIH0KLSAgICB9KTsKICNlbmRp
ZgogCisgICAgICAgIEhhc2hTZXQ8U3RyaW5nPiBkZWZhdWx0U3VwcG9ydGVkSW1hZ2VUeXBlczsK
KyAgICAgICAgZGVmYXVsdFN1cHBvcnRlZEltYWdlVHlwZXMuYWRkKGltYWdlVHlwZXMuYmVnaW4o
KSwgaW1hZ2VUeXBlcy5lbmQoKSk7CisgICAgICAgIHJldHVybiBkZWZhdWx0U3VwcG9ydGVkSW1h
Z2VUeXBlczsKKyAgICB9KCkpOworCiAgICAgcmV0dXJuIGRlZmF1bHRTdXBwb3J0ZWRJbWFnZVR5
cGVzOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391364</attachid>
            <date>2020-02-20 17:49:09 -0800</date>
            <delta_ts>2020-03-03 12:17:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208038-20200220174907.patch</filename>
            <type>text/plain</type>
            <size>1226</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1NzA5OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDIwLTAyLTIwICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgW0NHXSBDaGFu
Z2UgdGhlIFVUSSBvZiB0aGUgIldlYlAiIGltYWdlIHRvIGJlICJjb20uZ29vZ2xlLndlYnAiCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDgwMzgKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlzIHRv
IGNvbmZvcm0gd2l0aCBDR0ltYWdlU291cmNlR2V0VHlwZSgpLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2cvVVRJUmVnaXN0cnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6ZGVmYXVs
dFN1cHBvcnRlZEltYWdlVHlwZXMpOgorCiAyMDIwLTAyLTIwICBaYWxhbiBCdWp0YXMgIDx6YWxh
bkBhcHBsZS5jb20+CiAKICAgICAgICAgW0ZpcnN0IHBhaW50XSBGcmFtZVZpZXc6OmxvYWRQcm9n
cmVzc2luZ1N0YXR1c0NoYW5nZWQgc2hvdWxkIGNoZWNrIG1fZmlyc3RWaXN1YWxseU5vbkVtcHR5
TGF5b3V0TWlsZXN0b25lSXNQZW5kaW5nCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jZy9VVElSZWdpc3RyeS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2cvVVRJUmVnaXN0cnkuY3BwCShyZXZpc2lvbiAyNTcwMDgpCisr
KyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9VVElSZWdpc3RyeS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTUzLDcgKzUzLDcgQEAgY29uc3QgSGFzaFNldDxTdHJpbmc+JiBkZWZh
dWx0U3VwcG9ydGVkSQogICAgICAgICAicHVibGljLm1wby1pbWFnZSJfcywKICNlbmRpZgogI2lm
IEhBVkUoV0VCUCkKLSAgICAgICAgInB1YmxpYy53ZWJwIl9zLAorICAgICAgICAiY29tLmdvb2ds
ZS53ZWJwIl9zLAogI2VuZGlmCiAgICAgfTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392307</attachid>
            <date>2020-03-03 12:17:38 -0800</date>
            <delta_ts>2020-03-03 15:02:06 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208038-20200303121737.patch</filename>
            <type>text/plain</type>
            <size>3279</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU3Nzg1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODUxODRmODVlMzhkNjEx
ZGUxMDQ1ZGMzNThmMzY3MWYwMGYwYmI4Yy4uOTI5YjIxMDQ2YWVlNTlhZTQxMzNhZTA3ODQ4MjIw
Yjk0OTM2YmQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTAzLTAzICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgW0NHXSBD
aGFuZ2UgdGhlIFVUSSBvZiB0aGUgIldlYlAiIGltYWdlIHRvIGJlICJjb20uZ29vZ2xlLndlYnAi
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDgwMzgK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGlz
IHRvIGNvbmZvcm0gd2l0aCBDR0ltYWdlU291cmNlR2V0VHlwZSgpLgorCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvY2cvVVRJUmVnaXN0cnkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6ZGVm
YXVsdFN1cHBvcnRlZEltYWdlVHlwZXMpOgorICAgICAgICBNYWtlIHN1cmUgQ0cgc3VwcG9ydHMg
dGhlIHN1Z2dlc3RlZCBVVEkgYmVmb3JlIGNvbnNpZGVyaW5nIGl0IGlzIGFjdHVhbGx5CisgICAg
ICAgIHN1cHBvcnRlZC4KKwogMjAyMC0wMy0wMyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUu
Y29tPgogCiAgICAgICAgIFJlZ3Jlc3Npb24gKENvb2tpZUNhY2hlKSBVbmFibGUgdG8gbG9nIGlu
dG8gSHVsdS5jb20KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NnL1VUSVJlZ2lzdHJ5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nn
L1VUSVJlZ2lzdHJ5LmNwcAppbmRleCBlY2VkYzA3MTRhNGY3ZWZkMDkxYjJmNTNiOGNhNzhiNDQz
NjcxYmNkLi45ZjljNWY0MmM5OTJmYmZkOWI0N2UzODkzODk3ZWYwMzRlMTdmNDM4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9VVElSZWdpc3RyeS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvVVRJUmVnaXN0cnkuY3Bw
CkBAIC0zOSwzNiArMzksMzYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjb25zdCBIYXNoU2V0
PFN0cmluZz4mIGRlZmF1bHRTdXBwb3J0ZWRJbWFnZVR5cGVzKCkKIHsKLSAgICAvLyBDRyBhdCBs
ZWFzdCBzdXBwb3J0cyB0aGUgZm9sbG93aW5nIHN0YW5kYXJkIGltYWdlIHR5cGVzOgotICAgIHN0
YXRpYyBOZXZlckRlc3Ryb3llZDxIYXNoU2V0PFN0cmluZz4+IGRlZmF1bHRTdXBwb3J0ZWRJbWFn
ZVR5cGVzID0gc3RkOjppbml0aWFsaXplcl9saXN0PFN0cmluZz4gewotICAgICAgICAiY29tLmNv
bXB1c2VydmUuZ2lmIl9zLAotICAgICAgICAiY29tLm1pY3Jvc29mdC5ibXAiX3MsCi0gICAgICAg
ICJjb20ubWljcm9zb2Z0LmN1ciJfcywKLSAgICAgICAgImNvbS5taWNyb3NvZnQuaWNvIl9zLAot
ICAgICAgICAicHVibGljLmpwZWciX3MsCi0gICAgICAgICJwdWJsaWMucG5nIl9zLAotICAgICAg
ICAicHVibGljLnRpZmYiX3MsCisgICAgc3RhdGljIGNvbnN0IGF1dG8gZGVmYXVsdFN1cHBvcnRl
ZEltYWdlVHlwZXMgPSBtYWtlTmV2ZXJEZXN0cm95ZWQoW10geworICAgICAgICBjb25zdCBTdHJp
bmcgZGVmYXVsdFN1cHBvcnRlZEltYWdlVHlwZXNbXSA9IHsKKyAgICAgICAgICAgICJjb20uY29t
cHVzZXJ2ZS5naWYiX3MsCisgICAgICAgICAgICAiY29tLm1pY3Jvc29mdC5ibXAiX3MsCisgICAg
ICAgICAgICAiY29tLm1pY3Jvc29mdC5jdXIiX3MsCisgICAgICAgICAgICAiY29tLm1pY3Jvc29m
dC5pY28iX3MsCisgICAgICAgICAgICAicHVibGljLmpwZWciX3MsCisgICAgICAgICAgICAicHVi
bGljLnBuZyJfcywKKyAgICAgICAgICAgICJwdWJsaWMudGlmZiJfcywKICNpZiAhUExBVEZPUk0o
V0lOKQotICAgICAgICAicHVibGljLmpwZWctMjAwMCJfcywKLSAgICAgICAgInB1YmxpYy5tcG8t
aW1hZ2UiX3MsCisgICAgICAgICAgICAicHVibGljLmpwZWctMjAwMCJfcywKKyAgICAgICAgICAg
ICJwdWJsaWMubXBvLWltYWdlIl9zLAogI2VuZGlmCiAjaWYgSEFWRShXRUJQKQotICAgICAgICAi
cHVibGljLndlYnAiX3MsCisgICAgICAgICAgICAicHVibGljLndlYnAiX3MsCisgICAgICAgICAg
ICAiY29tLmdvb2dsZS53ZWJwIl9zLAogI2VuZGlmCi0gICAgfTsKKyAgICAgICAgfTsKIAotI2lm
bmRlZiBOREVCVUcKLSAgICAvLyBNYWtlIHN1cmUgdGhhdCBDRyBzdXBwb3J0cyB0aGVtLgotICAg
IHN0YXRpYyBzdGQ6Om9uY2VfZmxhZyBvbmNlRmxhZzsKLSAgICBzdGQ6OmNhbGxfb25jZShvbmNl
RmxhZywgW10gewogICAgICAgICBSZXRhaW5QdHI8Q0ZBcnJheVJlZj4gc3lzdGVtSW1hZ2VUeXBl
cyA9IGFkb3B0Q0YoQ0dJbWFnZVNvdXJjZUNvcHlUeXBlSWRlbnRpZmllcnMoKSk7CiAgICAgICAg
IENGSW5kZXggY291bnQgPSBDRkFycmF5R2V0Q291bnQoc3lzdGVtSW1hZ2VUeXBlcy5nZXQoKSk7
Ci0gICAgICAgIGZvciAoYXV0byYgaW1hZ2VUeXBlIDogZGVmYXVsdFN1cHBvcnRlZEltYWdlVHlw
ZXMuZ2V0KCkpIHsKKworICAgICAgICBIYXNoU2V0PFN0cmluZz4gZGVmYXVsdENHU3VwcG9ydGVk
SW1hZ2VUeXBlczsKKyAgICAgICAgZm9yIChhdXRvJiBpbWFnZVR5cGUgOiBkZWZhdWx0U3VwcG9y
dGVkSW1hZ2VUeXBlcykgewogICAgICAgICAgICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBzdHJp
bmcgPSBpbWFnZVR5cGUuY3JlYXRlQ0ZTdHJpbmcoKTsKLSAgICAgICAgICAgIEFTU0VSVChDRkFy
cmF5Q29udGFpbnNWYWx1ZShzeXN0ZW1JbWFnZVR5cGVzLmdldCgpLCBDRlJhbmdlTWFrZSgwLCBj
b3VudCksIHN0cmluZy5nZXQoKSkpOworICAgICAgICAgICAgaWYgKENGQXJyYXlDb250YWluc1Zh
bHVlKHN5c3RlbUltYWdlVHlwZXMuZ2V0KCksIENGUmFuZ2VNYWtlKDAsIGNvdW50KSwgc3RyaW5n
LmdldCgpKSkKKyAgICAgICAgICAgICAgICBkZWZhdWx0Q0dTdXBwb3J0ZWRJbWFnZVR5cGVzLmFk
ZChpbWFnZVR5cGUpOwogICAgICAgICB9Ci0gICAgfSk7Ci0jZW5kaWYKKyAgICAgICAgcmV0dXJu
IGRlZmF1bHRDR1N1cHBvcnRlZEltYWdlVHlwZXM7CisgICAgfSgpKTsKIAogICAgIHJldHVybiBk
ZWZhdWx0U3VwcG9ydGVkSW1hZ2VUeXBlczsKIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>