<?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>119914</bug_id>
          
          <creation_ts>2013-08-16 14:33:35 -0700</creation_ts>
          <short_desc>[iOS] Upstream changes to WebCore/accessibility</short_desc>
          <delta_ts>2013-08-20 10:30:09 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</component>
          <version>528+ (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="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>jdiggs</cc>
    
    <cc>joepeck</cc>
    
    <cc>mario</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>918119</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-08-16 14:33:35 -0700</bug_when>
    <thetext>Upstream iOS-specific changes to WebCore/accessibility.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>918120</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2013-08-16 14:33:51 -0700</bug_when>
    <thetext>&lt;rdar://problem/14761152&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>918121</commentid>
    <comment_count>2</comment_count>
      <attachid>208961</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-08-16 14:36:00 -0700</bug_when>
    <thetext>Created attachment 208961
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>918122</commentid>
    <comment_count>3</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-08-16 14:37:31 -0700</bug_when>
    <thetext>We should consider making AccessibilityObject::headingElementForNode() available to all ports or move it into an iOS-specific file. I suggest we do this in a separate bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>918131</commentid>
    <comment_count>4</comment_count>
      <attachid>208961</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-08-16 15:05:32 -0700</bug_when>
    <thetext>Comment on attachment 208961
Patch

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

thanks for working on this

&gt; Source/WebCore/accessibility/AccessibilityMenuList.cpp:92
&gt;      return !static_cast&lt;RenderMenuList*&gt;(m_renderer)-&gt;popupIsVisible();

does RenderMenuList not exist on iOS?

&gt; Source/WebCore/accessibility/AccessibilityObject.cpp:1230
&gt; +AccessibilityObject* AccessibilityObject::headingElementForNode(Node* node)

i agree, i think we should just remove the PLATFORM(IOS) flag here. I don&apos;t think we need a separate bug necessary

&gt; Source/WebCore/accessibility/AccessibilityObject.h:875
&gt; +    int accessibilityPasswordFieldLength();

this should probably be fixed so that it&apos;s called
passwordTextLength() and returns an unsigned.

i also don&apos;t see this in the AXObject.cpp file

&gt; Source/WebCore/accessibility/AccessibilityRenderObject.cpp:731
&gt;      if (m_renderer-&gt;isFileUploadControl())

i thought we had file upload controls on iOS now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>918240</commentid>
    <comment_count>5</comment_count>
      <attachid>208961</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-08-17 05:10:49 -0700</bug_when>
    <thetext>Comment on attachment 208961
Patch

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

It seems fine to upstream this as-is. We can also later fix the many problems in this code.

&gt; Source/WebCore/accessibility/AccessibilityObject.cpp:1334
&gt; +    DEFINE_STATIC_LOCAL(const String, noAction, ());
&gt; +    return noAction;

This should just be:

    return nullAtom();

Or maybe:

    return nullAtom().string();

No need for this extra local.

&gt; Source/WebCore/accessibility/AccessibilityRenderObject.cpp:3177
&gt; +    DEFINE_STATIC_LOCAL(const String, noAction, ());
&gt; +    return noAction;

This should just be:

    return nullAtom();

Or maybe:

    return nullAtom().string();

No need for this extra local.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>918869</commentid>
    <comment_count>6</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-08-19 16:55:57 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 208961 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=208961&amp;action=review
&gt; 
&gt; thanks for working on this
&gt; 
&gt; &gt; Source/WebCore/accessibility/AccessibilityMenuList.cpp:92
&gt; &gt;      return !static_cast&lt;RenderMenuList*&gt;(m_renderer)-&gt;popupIsVisible();
&gt; 
&gt; does RenderMenuList not exist on iOS?

It does. However we don&apos;t define RenderMenuList::popupIsVisible() on iOS.

&gt; 
&gt; &gt; Source/WebCore/accessibility/AccessibilityObject.cpp:1230
&gt; &gt; +AccessibilityObject* AccessibilityObject::headingElementForNode(Node* node)
&gt; 
&gt; i agree, i think we should just remove the PLATFORM(IOS) flag here. I don&apos;t think we need a separate bug necessary

Will fix before landing.

&gt; 
&gt; &gt; Source/WebCore/accessibility/AccessibilityObject.h:875
&gt; &gt; +    int accessibilityPasswordFieldLength();
&gt; 
&gt; this should probably be fixed so that it&apos;s called
&gt; passwordTextLength() and returns an unsigned.

I agree. Moreover, the implementation for this method can be simplified: &lt;https://trac.webkit.org/browser/trunk/Source/WebCore/accessibility/ios/AccessibilityObjectIOS.mm?rev=152149#L61&gt;. I will look to change the data type of the return value and cleanup the implementation of this method in a follow bug as the purpose of this bug is to upstream iOS-specific changes to the accessibility code.

&gt; 
&gt; i also don&apos;t see this in the AXObject.cpp file

The method accessibilityPasswordFieldLength() is defined in file Source/WebCore/accessibility/ios/AccessibilityObjectIOS.mm: &lt;https://trac.webkit.org/browser/trunk/Source/WebCore/accessibility/ios/AccessibilityObjectIOS.mm?rev=152149&gt;.

&gt; 
&gt; &gt; Source/WebCore/accessibility/AccessibilityRenderObject.cpp:731
&gt; &gt;      if (m_renderer-&gt;isFileUploadControl())
&gt; 
&gt; i thought we had file upload controls on iOS now

We do! Will fix before landing. For completeness, this code is commented out in the iOS WebKit source code repository. Filed &lt;rdar://problem/14778945&gt; to fix this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>919107</commentid>
    <comment_count>7</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-08-20 10:15:38 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; &gt; Source/WebCore/accessibility/AccessibilityObject.cpp:1334
&gt; &gt; +    DEFINE_STATIC_LOCAL(const String, noAction, ());
&gt; &gt; +    return noAction;
&gt; 
&gt; This should just be:
&gt; 
&gt;     return nullAtom();
&gt; 
&gt; Or maybe:
&gt; 
&gt;     return nullAtom().string();
&gt; 
&gt; No need for this extra local.
&gt; 
&gt; &gt; Source/WebCore/accessibility/AccessibilityRenderObject.cpp:3177
&gt; &gt; +    DEFINE_STATIC_LOCAL(const String, noAction, ());
&gt; &gt; +    return noAction;
&gt; 
&gt; This should just be:
&gt; 
&gt;     return nullAtom();
&gt; 
&gt; Or maybe:
&gt; 
&gt;     return nullAtom().string();
&gt; 
&gt; No need for this extra local.

I&apos;ll fix these issues in bug #120072 because we can also perform a similar substitution in the non-iOS-specific portion of these functions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>919110</commentid>
    <comment_count>8</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-08-20 10:30:09 -0700</bug_when>
    <thetext>Committed r154339: &lt;http://trac.webkit.org/changeset/154339&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>208961</attachid>
            <date>2013-08-16 14:36:00 -0700</date>
            <delta_ts>2013-08-17 05:10:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-119914-20130816143600.patch</filename>
            <type>text/plain</type>
            <size>9255</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU0MTg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDE5YzdlYTFjZmJlNDM3
ZjE0MmQzMTM4YzllOWU5NDI5YTk3ZjhkNy4uNDEzNjU5MTYzZGFlNzZjZjIwOWJiNGQwN2VjMjdh
NTQ4MmI3N2Q4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA4LTE2ICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICA8aHR0cHM6Ly93ZWJraXQu
b3JnL2IvMTE5OTE0PiBbaU9TXSBVcHN0cmVhbSBjaGFuZ2VzIHRvIFdlYkNvcmUvYWNjZXNzaWJp
bGl0eQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
YWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5TWVudUxpc3QuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6QWNjZXNzaWJpbGl0eU1lbnVMaXN0OjpwcmVzcyk6CisgICAgICAgIChXZWJDb3JlOjpBY2Nl
c3NpYmlsaXR5TWVudUxpc3Q6OmlzQ29sbGFwc2VkKToKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5
L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0
eU9iamVjdDo6aGVhZGluZ0VsZW1lbnRGb3JOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vz
c2liaWxpdHlPYmplY3Q6OmFjdGlvblZlcmIpOgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNj
ZXNzaWJpbGl0eU9iamVjdC5oOgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0
eVJlbmRlck9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5UmVuZGVy
T2JqZWN0OjpzdHJpbmdWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5UmVu
ZGVyT2JqZWN0Ojpib3VuZHNGb3JWaXNpYmxlUG9zaXRpb25SYW5nZSk6CisgICAgICAgIChXZWJD
b3JlOjpBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjphY3Rpb25WZXJiKToKKyAgICAgICAgKiBh
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlUYWJsZUNvbHVtbi5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpBY2Nlc3NpYmlsaXR5VGFibGVDb2x1bW46OmNvbXB1dGVBY2Nlc3NpYmlsaXR5SXNJZ25v
cmVkKToKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlUYWJsZUhlYWRlckNv
bnRhaW5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5VGFibGVIZWFkZXJD
b250YWluZXI6OmNvbXB1dGVBY2Nlc3NpYmlsaXR5SXNJZ25vcmVkKToKKyAgICAgICAgKiBhY2Nl
c3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbToKKwogMjAx
My0wOC0xNiAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CiAKICAgICAgICAgQXR0
ZW1wdCB0byBmaXggdGhlIFF0L01vdW50YWluTGlvbiBidWlsZCBhZnRlciByMTU0MTQyLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5TWVudUxp
c3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5TWVudUxp
c3QuY3BwCmluZGV4IDk5NGEzMzQ2ODEwNWQzZTA3OWY3MTAyMGU5MDY2YmQ0MmQ4OTEyZWYuLjQ2
MDc3ZjkwOTE5ZGI5Y2NkNjk2MmZmOGZjMzUzNjZiZjc5ZTFjZjAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU1lbnVMaXN0LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlNZW51TGlzdC5jcHAKQEAg
LTQ0LDEyICs0NCwxNiBAQCBQYXNzUmVmUHRyPEFjY2Vzc2liaWxpdHlNZW51TGlzdD4gQWNjZXNz
aWJpbGl0eU1lbnVMaXN0OjpjcmVhdGUoUmVuZGVyTWVudUxpc3QqCiAKIGJvb2wgQWNjZXNzaWJp
bGl0eU1lbnVMaXN0OjpwcmVzcygpIGNvbnN0CiB7CisjaWYgIVBMQVRGT1JNKElPUykKICAgICBS
ZW5kZXJNZW51TGlzdCogbWVudUxpc3QgPSBzdGF0aWNfY2FzdDxSZW5kZXJNZW51TGlzdCo+KG1f
cmVuZGVyZXIpOwogICAgIGlmIChtZW51TGlzdC0+cG9wdXBJc1Zpc2libGUoKSkKICAgICAgICAg
bWVudUxpc3QtPmhpZGVQb3B1cCgpOwogICAgIGVsc2UKICAgICAgICAgbWVudUxpc3QtPnNob3dQ
b3B1cCgpOwogICAgIHJldHVybiB0cnVlOworI2Vsc2UKKyAgICByZXR1cm4gZmFsc2U7CisjZW5k
aWYKIH0KIAogdm9pZCBBY2Nlc3NpYmlsaXR5TWVudUxpc3Q6OmFkZENoaWxkcmVuKCkKQEAgLTg0
LDcgKzg4LDExIEBAIHZvaWQgQWNjZXNzaWJpbGl0eU1lbnVMaXN0OjpjaGlsZHJlbkNoYW5nZWQo
KQogCiBib29sIEFjY2Vzc2liaWxpdHlNZW51TGlzdDo6aXNDb2xsYXBzZWQoKSBjb25zdAogewor
I2lmICFQTEFURk9STShJT1MpCiAgICAgcmV0dXJuICFzdGF0aWNfY2FzdDxSZW5kZXJNZW51TGlz
dCo+KG1fcmVuZGVyZXIpLT5wb3B1cElzVmlzaWJsZSgpOworI2Vsc2UKKyAgICByZXR1cm4gdHJ1
ZTsKKyNlbmRpZgogfQogCiBib29sIEFjY2Vzc2liaWxpdHlNZW51TGlzdDo6Y2FuU2V0Rm9jdXNB
dHRyaWJ1dGUoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
QWNjZXNzaWJpbGl0eU9iamVjdC5jcHAKaW5kZXggMTExYTNlNGMzYTgxZjkwYTFiZDczMDExZjBj
OGNhMzYxNjg4ZmRiNy4uZmIxYzFiYmFiNzIzNTU5ZGNjM2IxOTU5ZGQ2OWM1MWE5MzU3ODc4OSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2Jq
ZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlP
YmplY3QuY3BwCkBAIC0xMjI2LDYgKzEyMjYsMjMgQEAgQWNjZXNzaWJpbGl0eU9iamVjdCogQWNj
ZXNzaWJpbGl0eU9iamVjdDo6YW5jaG9yRWxlbWVudEZvck5vZGUoTm9kZSogbm9kZSkKICAgICBy
ZXR1cm4gYW5jaG9yUmVuZGVyZXItPmRvY3VtZW50KCktPmF4T2JqZWN0Q2FjaGUoKS0+Z2V0T3JD
cmVhdGUoYW5jaG9yUmVuZGVyZXIpOwogfQogICAgIAorI2lmIFBMQVRGT1JNKElPUykKK0FjY2Vz
c2liaWxpdHlPYmplY3QqIEFjY2Vzc2liaWxpdHlPYmplY3Q6OmhlYWRpbmdFbGVtZW50Rm9yTm9k
ZShOb2RlKiBub2RlKQoreworICAgIGlmICghbm9kZSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAg
CisgICAgUmVuZGVyT2JqZWN0KiByZW5kZXJPYmplY3QgPSBub2RlLT5yZW5kZXJlcigpOworICAg
IGlmICghcmVuZGVyT2JqZWN0KQorICAgICAgICByZXR1cm4gMDsKKyAgICAKKyAgICBBY2Nlc3Np
YmlsaXR5T2JqZWN0KiBheE9iamVjdCA9IHJlbmRlck9iamVjdC0+ZG9jdW1lbnQoKS0+YXhPYmpl
Y3RDYWNoZSgpLT5nZXRPckNyZWF0ZShyZW5kZXJPYmplY3QpOworICAgIGZvciAoOyBheE9iamVj
dCAmJiBheE9iamVjdC0+cm9sZVZhbHVlKCkgIT0gSGVhZGluZ1JvbGU7IGF4T2JqZWN0ID0gYXhP
YmplY3QtPnBhcmVudE9iamVjdCgpKSB7IH0KKyAgICAKKyAgICByZXR1cm4gYXhPYmplY3Q7Cit9
CisjZW5kaWYKKwogdm9pZCBBY2Nlc3NpYmlsaXR5T2JqZWN0OjphcmlhVHJlZVJvd3MoQWNjZXNz
aWJpbGl0eUNoaWxkcmVuVmVjdG9yJiByZXN1bHQpCiB7CiAgICAgQWNjZXNzaWJpbGl0eUNoaWxk
cmVuVmVjdG9yIGF4Q2hpbGRyZW4gPSBjaGlsZHJlbigpOwpAQCAtMTI3Niw2ICsxMjkzLDcgQEAg
dm9pZCBBY2Nlc3NpYmlsaXR5T2JqZWN0OjphcmlhVHJlZUl0ZW1EaXNjbG9zZWRSb3dzKEFjY2Vz
c2liaWxpdHlDaGlsZHJlblZlY3RvciYKICNpZiBIQVZFKEFDQ0VTU0lCSUxJVFkpCiBjb25zdCBT
dHJpbmcmIEFjY2Vzc2liaWxpdHlPYmplY3Q6OmFjdGlvblZlcmIoKSBjb25zdAogeworI2lmICFQ
TEFURk9STShJT1MpCiAgICAgLy8gRklYTUU6IE5lZWQgdG8gYWRkIHZlcmJzIGZvciBzZWxlY3Qg
ZWxlbWVudHMuCiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBTdHJpbmcsIGJ1dHRvbkFj
dGlvbiwgKEFYQnV0dG9uQWN0aW9uVmVyYigpKSk7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChj
b25zdCBTdHJpbmcsIHRleHRGaWVsZEFjdGlvbiwgKEFYVGV4dEZpZWxkQWN0aW9uVmVyYigpKSk7
CkBAIC0xMzExLDYgKzEzMjksMTAgQEAgY29uc3QgU3RyaW5nJiBBY2Nlc3NpYmlsaXR5T2JqZWN0
OjphY3Rpb25WZXJiKCkgY29uc3QKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gbm9BY3Rp
b247CiAgICAgfQorI2Vsc2UKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IFN0cmluZywg
bm9BY3Rpb24sICgpKTsKKyAgICByZXR1cm4gbm9BY3Rpb247CisjZW5kaWYKIH0KICNlbmRpZgog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlP
YmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVj
dC5oCmluZGV4IGFmYTE4Nzc0YWJhYzI3MGRhYTFkNDE0NzhkZDBjNWI5NGQ4MmM1MzEuLmYyZGY2
MDYyYzQxNTQ1MDkwYzQ2YmMwNjFjODkwYWExOGFjODdkY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oCkBAIC02MTcsNiArNjE3
LDkgQEAgcHVibGljOgogICAgIEFYSUQgYXhPYmplY3RJRCgpIGNvbnN0IHsgcmV0dXJuIG1faWQ7
IH0KICAgICAKICAgICBzdGF0aWMgQWNjZXNzaWJpbGl0eU9iamVjdCogYW5jaG9yRWxlbWVudEZv
ck5vZGUoTm9kZSopOworI2lmIFBMQVRGT1JNKElPUykKKyAgICBzdGF0aWMgQWNjZXNzaWJpbGl0
eU9iamVjdCogaGVhZGluZ0VsZW1lbnRGb3JOb2RlKE5vZGUqKTsKKyNlbmRpZgogICAgIHZpcnR1
YWwgRWxlbWVudCogYW5jaG9yRWxlbWVudCgpIGNvbnN0IHsgcmV0dXJuIDA7IH0KICAgICB2aXJ0
dWFsIEVsZW1lbnQqIGFjdGlvbkVsZW1lbnQoKSBjb25zdCB7IHJldHVybiAwOyB9CiAgICAgdmly
dHVhbCBMYXlvdXRSZWN0IGJvdW5kaW5nQm94UmVjdCgpIGNvbnN0IHsgcmV0dXJuIExheW91dFJl
Y3QoKTsgfQpAQCAtODY4LDYgKzg3MSwxMCBAQCBwdWJsaWM6CiAgICAgQWNjZXNzaWJpbGl0eU9i
amVjdEluY2x1c2lvbiBhY2Nlc3NpYmlsaXR5UGxhdGZvcm1JbmNsdWRlc09iamVjdCgpIGNvbnN0
IHsgcmV0dXJuIERlZmF1bHRCZWhhdmlvcjsgfQogI2VuZGlmCiAKKyNpZiBQTEFURk9STShJT1Mp
CisgICAgaW50IGFjY2Vzc2liaWxpdHlQYXNzd29yZEZpZWxkTGVuZ3RoKCk7CisjZW5kaWYKKyAg
ICAKICAgICAvLyBhbGxvd3MgZm9yIGFuIEFjY2Vzc2liaWxpdHlPYmplY3QgdG8gdXBkYXRlIGl0
cyByZW5kZXIgdHJlZSBvciBwZXJmb3JtCiAgICAgLy8gb3RoZXIgb3BlcmF0aW9ucyB1cGRhdGUg
dHlwZSBvcGVyYXRpb25zCiAgICAgdm9pZCB1cGRhdGVCYWNraW5nU3RvcmUoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVj
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3QuY3BwCmluZGV4IGZjMTUxZDlmOTI4YTNiYzM4OGVjNWMwOGM5NGMwNjQ5MjY5NWUxMGIu
LjQ4ZWZlZTlkNDFiOTRmM2YyZDBmNjA1Mzg3MGYyMmFjZWVkNTk5MjQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2Jq
ZWN0LmNwcApAQCAtNzI3LDggKzcyNywxMCBAQCBTdHJpbmcgQWNjZXNzaWJpbGl0eVJlbmRlck9i
amVjdDo6c3RyaW5nVmFsdWUoKSBjb25zdAogICAgIGlmIChpc1RleHRDb250cm9sKCkpCiAgICAg
ICAgIHJldHVybiB0ZXh0KCk7CiAgICAgCisjaWYgIVBMQVRGT1JNKElPUykKICAgICBpZiAobV9y
ZW5kZXJlci0+aXNGaWxlVXBsb2FkQ29udHJvbCgpKQogICAgICAgICByZXR1cm4gdG9SZW5kZXJG
aWxlVXBsb2FkQ29udHJvbChtX3JlbmRlcmVyKS0+ZmlsZVRleHRWYWx1ZSgpOworI2VuZGlmCiAg
ICAgCiAgICAgLy8gRklYTUU6IFdlIG1pZ2h0IG5lZWQgdG8gaW1wbGVtZW50IGEgdmFsdWUgaGVy
ZSBmb3IgbW9yZSB0eXBlcwogICAgIC8vIEZJWE1FOiBJdCB3b3VsZCBiZSBiZXR0ZXIgbm90IHRv
IGFkdmVydGlzZSBhIHZhbHVlIGF0IGFsbCBmb3IgdGhlIHR5cGVzIGZvciB3aGljaCB3ZSBkb24n
dCBpbXBsZW1lbnQgb25lOwpAQCAtMTk1Miw3ICsxOTU0LDcgQEAgSW50UmVjdCBBY2Nlc3NpYmls
aXR5UmVuZGVyT2JqZWN0Ojpib3VuZHNGb3JWaXNpYmxlUG9zaXRpb25SYW5nZShjb25zdCBWaXNp
YmxlUG8KICAgICAgICAgICAgIG91cnJlY3QgPSBib3VuZGluZ0JveDsKICAgICB9CiAgICAgCi0j
aWYgUExBVEZPUk0oTUFDKQorI2lmIFBMQVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKElPUykKICAg
ICByZXR1cm4gbV9yZW5kZXJlci0+ZG9jdW1lbnQoKS0+dmlldygpLT5jb250ZW50c1RvU2NyZWVu
KHBpeGVsU25hcHBlZEludFJlY3Qob3VycmVjdCkpOwogI2Vsc2UKICAgICByZXR1cm4gcGl4ZWxT
bmFwcGVkSW50UmVjdChvdXJyZWN0KTsKQEAgLTMxNDMsNiArMzE0NSw3IEBAIHZvaWQgQWNjZXNz
aWJpbGl0eVJlbmRlck9iamVjdDo6dGFiQ2hpbGRyZW4oQWNjZXNzaWJpbGl0eUNoaWxkcmVuVmVj
dG9yJiByZXN1bHQpCiAgICAgCiBjb25zdCBTdHJpbmcmIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmpl
Y3Q6OmFjdGlvblZlcmIoKSBjb25zdAogeworI2lmICFQTEFURk9STShJT1MpCiAgICAgLy8gRklY
TUU6IE5lZWQgdG8gYWRkIHZlcmJzIGZvciBzZWxlY3QgZWxlbWVudHMuCiAgICAgREVGSU5FX1NU
QVRJQ19MT0NBTChjb25zdCBTdHJpbmcsIGJ1dHRvbkFjdGlvbiwgKEFYQnV0dG9uQWN0aW9uVmVy
YigpKSk7CiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBTdHJpbmcsIHRleHRGaWVsZEFj
dGlvbiwgKEFYVGV4dEZpZWxkQWN0aW9uVmVyYigpKSk7CkBAIC0zMTY5LDYgKzMxNzIsMTAgQEAg
Y29uc3QgU3RyaW5nJiBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjphY3Rpb25WZXJiKCkgY29u
c3QKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gbm9BY3Rpb247CiAgICAgfQorI2Vsc2UK
KyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IFN0cmluZywgbm9BY3Rpb24sICgpKTsKKyAg
ICByZXR1cm4gbm9BY3Rpb247CisjZW5kaWYKIH0KICAgICAKIHZvaWQgQWNjZXNzaWJpbGl0eVJl
bmRlck9iamVjdDo6c2V0QWNjZXNzaWJsZU5hbWUoY29uc3QgQXRvbWljU3RyaW5nJiBuYW1lKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5VGFi
bGVDb2x1bW4uY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5
VGFibGVDb2x1bW4uY3BwCmluZGV4IDRkNDk0ODIyZDQwMjA4ZjczMDdlODM2YTgzYTk2NmUxY2Uy
MTMzYTguLjk0MDJkOWJjYjUwOTVlZWE4NmI0NmZjZTUwM2E0MmNjMzJiMDA4ZDcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVRhYmxlQ29sdW1u
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlUYWJs
ZUNvbHVtbi5jcHAKQEAgLTE1Nyw3ICsxNTcsNyBAQCBib29sIEFjY2Vzc2liaWxpdHlUYWJsZUNv
bHVtbjo6Y29tcHV0ZUFjY2Vzc2liaWxpdHlJc0lnbm9yZWQoKSBjb25zdAogICAgIGlmICghbV9w
YXJlbnQpCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIAotI2lmIFBMQVRGT1JNKEdUSykKKyNp
ZiBQTEFURk9STShJT1MpIHx8IFBMQVRGT1JNKEdUSykKICAgICByZXR1cm4gdHJ1ZTsKICNlbmRp
ZgogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5VGFibGVIZWFkZXJDb250YWluZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9BY2Nlc3NpYmlsaXR5VGFibGVIZWFkZXJDb250YWluZXIuY3BwCmluZGV4IDNlNzg5ZGVm
Mjg0MGFmYmIzYjY5OWE2OGNjZmVmODQ4NGQ1OWI1YzAuLjU0NTBjNDc4ZTBlZDg5MGJmNGYyYTJj
Y2MxZmJiZmEzYWU0ZmNjOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvQWNjZXNzaWJpbGl0eVRhYmxlSGVhZGVyQ29udGFpbmVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlUYWJsZUhlYWRlckNvbnRhaW5lci5jcHAK
QEAgLTYwLDcgKzYwLDcgQEAgYm9vbCBBY2Nlc3NpYmlsaXR5VGFibGVIZWFkZXJDb250YWluZXI6
OmNvbXB1dGVBY2Nlc3NpYmlsaXR5SXNJZ25vcmVkKCkgY29uc3QKICAgICBpZiAoIW1fcGFyZW50
KQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAKLSNpZiBQTEFURk9STShHVEspCisjaWYgUExB
VEZPUk0oSU9TKSB8fCBQTEFURk9STShHVEspCiAgICAgcmV0dXJuIHRydWU7CiAjZW5kaWYKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pb3MvV2ViQWNjZXNzaWJp
bGl0eU9iamVjdFdyYXBwZXJJT1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lv
cy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbQppbmRleCBiYzM1YmFhMjAxYzdk
MzM4MmMxYWU1NDhlYTNhYWYyZDRjOTk2ZTcxLi40NDUwOWI2N2RkNjEzODc4ZTQ3ODQzYzlmODM2
OTA3NjQzNGFjZWE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lv
cy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L2lvcy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcklPUy5tbQpA
QCAtNTAsNyArNTAsNyBAQAogI2ltcG9ydCAiV0FLVmlldy5oIgogI2ltcG9ydCAiV0FLV2luZG93
LmgiCiAjaW1wb3J0ICJXZWJDb3JlVGhyZWFkLmgiCi0jaW1wb3J0ICJ2aXNpYmxlX3VuaXRzLmgi
CisjaW1wb3J0ICJWaXNpYmxlVW5pdHMuaCIKIAogI2ltcG9ydCA8R3JhcGhpY3NTZXJ2aWNlcy9H
cmFwaGljc1NlcnZpY2VzLmg+CiAK
</data>
<flag name="review"
          id="230933"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>