<?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>125857</bug_id>
          
          <creation_ts>2013-12-17 08:04:18 -0800</creation_ts>
          <short_desc>[ATK] Expose accessibility objects for &lt;dl&gt;, &lt;dt&gt; and &lt;dd&gt;</short_desc>
          <delta_ts>2014-01-07 07:16:53 -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>Accessibility</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          
          <blocked>125493</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mario Sanchez Prada">mario</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>960506</commentid>
    <comment_count>0</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-12-17 08:04:18 -0800</bug_when>
    <thetext>Now that ATK 2.11.4 has been released, we have the proper roles to map these elements:

 * &lt;div role=&quot;dl&quot;&gt; shows up as ATK_ROLE_LIST, should be ATK_ROLE_DESCRIPTION_LIST
 * &lt;div role=&quot;dt&quot;&gt; shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_DESCRIPTION_TERM
 * &lt;div role=&quot;dd&quot;&gt; shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_DESCRIPTION_VALUE

[1] https://mail.gnome.org/archives/gnome-announce-list/2013-December/msg00007.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960508</commentid>
    <comment_count>1</comment_count>
      <attachid>219420</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-12-17 08:12:15 -0800</bug_when>
    <thetext>Created attachment 219420
Patch proposal</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960524</commentid>
    <comment_count>2</comment_count>
      <attachid>219420</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-12-17 09:02:18 -0800</bug_when>
    <thetext>Comment on attachment 219420
Patch proposal

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

&gt; Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp:638
&gt; +        if (coreObject-&gt;isList() &amp;&amp; toAccessibilityList(coreObject)-&gt;isDescriptionList())

It might be better to introduce a new WebCore role for DescriptionList, but I don&apos;t feel that strongly about it</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960545</commentid>
    <comment_count>3</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-12-17 09:49:34 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 219420 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=219420&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp:638
&gt; &gt; +        if (coreObject-&gt;isList() &amp;&amp; toAccessibilityList(coreObject)-&gt;isDescriptionList())
&gt; 
&gt; It might be better to introduce a new WebCore role for DescriptionList, but I don&apos;t feel that strongly about it

There is a DescriptionListRole already, which in theory should get assigned to any object with the &lt;dl&gt; tag name in determineAccessibilityRole(). Problem is that there is a hardcoded rule in AXObjectCache::createFromRenderer() that creates an instance of AccessibilityList for those elements too:

static PassRefPtr&lt;AccessibilityObject&gt; createFromRenderer(RenderObject* renderer)
{
    // FIXME: How could renderer-&gt;node() ever not be an Element?
    Node* node = renderer-&gt;node();

    // If the node is aria role=&quot;list&quot; or the aria role is empty and its a
    // ul/ol/dl type (it shouldn&apos;t be a list if aria says otherwise).
    if (node &amp;&amp; ((nodeHasRole(node, &quot;list&quot;) || nodeHasRole(node, &quot;directory&quot;))
                      || (nodeHasRole(node, nullAtom) &amp;&amp; (node-&gt;hasTagName(ulTag) || node-&gt;hasTagName(olTag) || node-&gt;hasTagName(dlTag)))))
        return AccessibilityList::create(renderer);
   [...]
}

I thought of updating Accessibility::roleValue() to do this isDescriptionList() check and return ListRole or DescriptionListRole accordingly, but I discarded because I was not sure about which things that might break in the Mac, and also because I saw in the Mac wrapper that DescriptionListRole is used in the Mac as a subrole, not a main role, so I was not sure at all about removing the ListRole thing from there.

So, in the end, I went for doing that check in the ATK wrapper, but I&apos;m open to reconsider other options if you think they&apos;re feasible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960556</commentid>
    <comment_count>4</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-12-17 10:05:31 -0800</bug_when>
    <thetext>Committed r160712: &lt;http://trac.webkit.org/changeset/160712&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960557</commentid>
    <comment_count>5</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2013-12-17 10:06:40 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Committed r160712: &lt;http://trac.webkit.org/changeset/160712&gt;

I pushed this patch now, but I&apos;m still open to discuss about the DescriptionListRole thing, my previous comment still applies. Just saying :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>960558</commentid>
    <comment_count>6</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2013-12-17 10:08:27 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; (From update of attachment 219420 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=219420&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp:638
&gt; &gt; &gt; +        if (coreObject-&gt;isList() &amp;&amp; toAccessibilityList(coreObject)-&gt;isDescriptionList())
&gt; &gt; 
&gt; &gt; It might be better to introduce a new WebCore role for DescriptionList, but I don&apos;t feel that strongly about it
&gt; 
&gt; There is a DescriptionListRole already, which in theory should get assigned to any object with the &lt;dl&gt; tag name in determineAccessibilityRole(). Problem is that there is a hardcoded rule in AXObjectCache::createFromRenderer() that creates an instance of AccessibilityList for those elements too:
&gt; 
&gt; static PassRefPtr&lt;AccessibilityObject&gt; createFromRenderer(RenderObject* renderer)
&gt; {
&gt;     // FIXME: How could renderer-&gt;node() ever not be an Element?
&gt;     Node* node = renderer-&gt;node();
&gt; 
&gt;     // If the node is aria role=&quot;list&quot; or the aria role is empty and its a
&gt;     // ul/ol/dl type (it shouldn&apos;t be a list if aria says otherwise).
&gt;     if (node &amp;&amp; ((nodeHasRole(node, &quot;list&quot;) || nodeHasRole(node, &quot;directory&quot;))
&gt;                       || (nodeHasRole(node, nullAtom) &amp;&amp; (node-&gt;hasTagName(ulTag) || node-&gt;hasTagName(olTag) || node-&gt;hasTagName(dlTag)))))
&gt;         return AccessibilityList::create(renderer);
&gt;    [...]
&gt; }
&gt; 
&gt; I thought of updating Accessibility::roleValue() to do this isDescriptionList() check and return ListRole or DescriptionListRole accordingly, but I discarded because I was not sure about which things that might break in the Mac, and also because I saw in the Mac wrapper that DescriptionListRole is used in the Mac as a subrole, not a main role, so I was not sure at all about removing the ListRole thing from there.
&gt; 
&gt; So, in the end, I went for doing that check in the ATK wrapper, but I&apos;m open to reconsider other options if you think they&apos;re feasible.

I think we should go for that route. we may need to update some Mac things but I don&apos;t foresee any blockers in that case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>965003</commentid>
    <comment_count>7</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2014-01-07 07:16:26 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; &gt; I thought of updating Accessibility::roleValue() to do this 
&gt; &gt; isDescriptionList() check and return ListRole or DescriptionListRole 
&gt; &gt; accordingly, but I discarded because I was not sure about which things that 
&gt; &gt; might break in the Mac, and also because I saw in the Mac wrapper that 
&gt; &gt; DescriptionListRole is used in the Mac as a subrole, not a main role, so I 
&gt; &gt; was not sure at all about removing the ListRole thing from there.
&gt; &gt; 
&gt; &gt; So, in the end, I went for doing that check in the ATK wrapper, but I&apos;m open 
&gt; &gt; to reconsider other options if you think they&apos;re feasible.
&gt; 
&gt; I think we should go for that route. we may need to update some Mac things but 
&gt; I don&apos;t foresee any blockers in that case

See https://bugs.webkit.org/show_bug.cgi?id=126579#c2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>965004</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-01-07 07:16:53 -0800</bug_when>
    <thetext>&lt;rdar://problem/15762151&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>219420</attachid>
            <date>2013-12-17 08:12:15 -0800</date>
            <delta_ts>2013-12-17 09:02:17 -0800</delta_ts>
            <desc>Patch proposal</desc>
            <filename>0001-2013-12-17-Mario-Sanchez-Prada-mario.prada-samsung.c.patch</filename>
            <type>text/plain</type>
            <size>11305</size>
            <attacher name="Mario Sanchez Prada">mario</attacher>
            
              <data encoding="base64">RnJvbSAzNTY0ZDE0YWEwODBiNmNlYmMyZTg0ZDRlYjgwNGY3ODNkODYxZTBhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJpbyBTYW5jaGV6IFByYWRhIDxtYXJpby5wcmFkYUBzYW1z
dW5nLmNvbT4KRGF0ZTogVHVlLCAxNyBEZWMgMjAxMyAxNTo1NzowMyArMDAwMApTdWJqZWN0OiBb
UEFUQ0hdIDIwMTMtMTItMTcgIE1hcmlvIFNhbmNoZXogUHJhZGEgIDxtYXJpby5wcmFkYUBzYW1z
dW5nLmNvbT4KCiAgICAgICAgW0FUS10gRXhwb3NlIGFjY2Vzc2liaWxpdHkgb2JqZWN0cyBmb3Ig
PGRsPiwgPGR0PiBhbmQgPGRkPgogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMjU4NTcKCiAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgog
ICAgICAgIE1hcCBkZXNjcmlwdGlvbiBsaXN0cyB0byB0aGUgbmV3bHkgaW50cm9kdWNlZCBBVEsg
cm9sZXMKICAgICAgICBBVEtfUk9MRV9ERVNDUklQVElPTl9MSVNULCBBVEtfUk9MRV9ERVNDUklQ
VElPTl9URVJNIGFuZAogICAgICAgIEFUS19ST0xFX0RFU0NSSVBUSU9OX1ZBTFVFLCBpbnRyb2R1
Y2VkIGluIEFUSyAyLjExLjQuCgogICAgICAgICogYWNjZXNzaWJpbGl0eS9hdGsvV2ViS2l0QWNj
ZXNzaWJsZVdyYXBwZXJBdGsuY3BwOgogICAgICAgIChhdGtSb2xlKTogRG8gdGhlIHJpZ2h0IG1h
cHBpbmcuCiAgICAgICAgKHdlYmtpdEFjY2Vzc2libGVHZXRSb2xlKTogVXBkYXRlIGNhbGwgdG8g
YXRrUm9sZSwgbm93IHRoYXQgaXQKICAgICAgICByZWNlaXZlcyBhbiBBY2Nlc3NpYmlsaXR5T2Jq
ZWN0KiBhcyBwYXJhbWV0ZXIuCgoyMDEzLTEyLTE3ICBNYXJpbyBTYW5jaGV6IFByYWRhICA8bWFy
aW8ucHJhZGFAc2Ftc3VuZy5jb20+CgogICAgICAgIFtBVEtdIEV4cG9zZSBhY2Nlc3NpYmlsaXR5
IG9iamVjdHMgZm9yIDxkbD4sIDxkdD4gYW5kIDxkZD4KICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI1ODU3CgogICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgoKICAgICAgICBBZGQgbWFwcGluZ3MgdG8gRFJUICYgV0tUUiBmb3IgdGhlIG5l
d2x5IGV4cG9zZWQgcm9sZXMsIGFuZAogICAgICAgIGluY3JlYXNlIHRoZSB2ZXJzaW9uIG9mIEFU
SyB1c2VkIGJ5IHRoZSBpbnRlcm5hbCBqaGJ1aWxkLgoKICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L2F0ay9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50QXRrLmNwcDoKICAgICAgICAqIFdlYktpdFRlc3RS
dW5uZXIvSW5qZWN0ZWRCdW5kbGUvYXRrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRBdGsuY3BwOgog
ICAgICAgICogZ3RrL2poYnVpbGQubW9kdWxlczogUmFpc2UgdmVyc2lvbiBvZiBBVEsgdXAgdG8g
Mi4xMS40LgoKMjAxMy0xMi0xNyAgTWFyaW8gU2FuY2hleiBQcmFkYSAgPG1hcmlvLnByYWRhQHNh
bXN1bmcuY29tPgoKICAgICAgICBbQVRLXSBFeHBvc2UgYWNjZXNzaWJpbGl0eSBvYmplY3RzIGZv
ciA8ZGw+LCA8ZHQ+IGFuZCA8ZGQ+CiAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTEyNTg1NwoKICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
CiAgICAgICAgVXBkYXRlIHRlc3QgdG8gdXBkYXRlIGV4cGVjdGF0aW9ucy4KCiAgICAgICAgKiBw
bGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS9yb2xlcy1leHBvc2VkLWV4cGVjdGVkLnR4dDoKICAg
ICAgICAqIHBsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3JvbGVzLWV4cG9zZWQuaHRtbDoKLS0t
CiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
ICAxMiArKysrKysrKysrKysKIC4uLi9ndGsvYWNjZXNzaWJpbGl0eS9yb2xlcy1leHBvc2VkLWV4
cGVjdGVkLnR4dCAgICAgfCAgICA5ICsrKysrKysrKwogLi4uL3BsYXRmb3JtL2d0ay9hY2Nlc3Np
YmlsaXR5L3JvbGVzLWV4cG9zZWQuaHRtbCAgICB8ICAgIDggKysrKy0tLS0KIFNvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE2ICsrKysrKysr
KysrKysrKysKIC4uLi9hY2Nlc3NpYmlsaXR5L2F0ay9XZWJLaXRBY2Nlc3NpYmxlV3JhcHBlckF0
ay5jcHAgfCAgIDE4ICsrKysrKysrKysrKysrKystLQogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKysrKysrKysrKysrKysKIC4uLi9E
dW1wUmVuZGVyVHJlZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHAgfCAgICA4ICsr
KysrKysrCiAuLi4vSW5qZWN0ZWRCdW5kbGUvYXRrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRBdGsu
Y3BwIHwgICAgOCArKysrKysrKwogVG9vbHMvZ3RrL2poYnVpbGQubW9kdWxlcyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8ICAgIDQgKystLQogOSBmaWxlcyBjaGFuZ2VkLCA4OSBpbnNlcnRp
b25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBlYTgwYTdlLi40YmZmYzU3IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDUgKzEsMTcgQEAKIDIwMTMtMTItMTcgIE1hcmlvIFNhbmNoZXogUHJhZGEgIDxtYXJpby5w
cmFkYUBzYW1zdW5nLmNvbT4KIAorICAgICAgICBbQVRLXSBFeHBvc2UgYWNjZXNzaWJpbGl0eSBv
YmplY3RzIGZvciA8ZGw+LCA8ZHQ+IGFuZCA8ZGQ+CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjU4NTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgdGVzdCB0byB1cGRhdGUgZXhwZWN0YXRpb25z
LgorCisgICAgICAgICogcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvcm9sZXMtZXhwb3NlZC1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvcm9sZXMt
ZXhwb3NlZC5odG1sOgorCisyMDEzLTEyLTE3ICBNYXJpbyBTYW5jaGV6IFByYWRhICA8bWFyaW8u
cHJhZGFAc2Ftc3VuZy5jb20+CisKICAgICAgICAgW0FUS10gW1dLMl0gcGxhdGZvcm0vZ3RrL2Fj
Y2Vzc2liaWxpdHkvcm9sZXMtZXhwb3NlZC5odG1sIGlzIGZhaWxpbmcKICAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTg1NAogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS9yb2xlcy1leHBvc2VkLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3JvbGVzLWV4
cG9zZWQtZXhwZWN0ZWQudHh0CmluZGV4IDU4N2RkN2EuLjUzNDVhMzkgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3JvbGVzLWV4cG9zZWQtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3JvbGVz
LWV4cG9zZWQtZXhwZWN0ZWQudHh0CkBAIC0yMSw2ICsyMSwxNSBAQCBQQVNTOiBibG9ja3F1b3Rl
CiBQQVNTOiBidXR0b24KICAgICAgIEFYUm9sZTogQVhCdXR0b24KICAgICAgIAorUEFTUzogZGwK
KyAgICAgIEFYUm9sZTogQVhEZXNjcmlwdGlvbkxpc3QKKyAgICAgIAorUEFTUzogZHQKKyAgICAg
IEFYUm9sZTogQVhEZXNjcmlwdGlvblRlcm0KKyAgICAgIAorUEFTUzogZGQKKyAgICAgIEFYUm9s
ZTogQVhEZXNjcmlwdGlvblZhbHVlCisgICAgICAKIFBBU1M6IGRpdgogICAgICAgQVhSb2xlOiBB
WFNlY3Rpb24KICAgICAgIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Fj
Y2Vzc2liaWxpdHkvcm9sZXMtZXhwb3NlZC5odG1sIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3Rr
L2FjY2Vzc2liaWxpdHkvcm9sZXMtZXhwb3NlZC5odG1sCmluZGV4IDdmOGM1Y2IuLmJhNDE5YTUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3JvbGVz
LWV4cG9zZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0
eS9yb2xlcy1leHBvc2VkLmh0bWwKQEAgLTI2LDEwICsyNiwxMCBAQAogPCEtLSBza2lwcGVkIEFU
Szogbm90IGZvY3VzYWJsZSA8ZGVsIGRhdGEtcm9sZT0iIiBjbGFzcz0iZXgiPlg8L2RlbD4tLT4K
IDwhLS0gc2tpcHBlZCA8ZGV0YWlscy9zdW1tYXJ5PiBodHRwOi8vd2Via2l0Lm9yZy9iLzEwODk3
OSAtLT4KIDwhLS0gc2tpcHBlZCA8ZGZuIGRhdGEtcm9sZT0iQVhHcm91cCIgY2xhc3M9ImV4Ij5Y
PC9kZm4+IC0tPgotPCEtLSBodHRwOi8vd2Via2l0Lm9yZy9iLzEyNTQ5MyA8ZGwgZGF0YS1yb2xl
PSJBWERlZmluaXRpb25MaXN0IiBsaXN0IiBjbGFzcz0iZXgiPi0tPgotICAgIDwhLS0gaHR0cDov
L3dlYmtpdC5vcmcvYi8xMjU0OTMgPGR0IGRhdGEtcm9sZT0iQVhHcm91cCIgY2xhc3M9ImV4Ij5Y
PC9kdD4gLS0+Ci0gICAgPCEtLSBodHRwOi8vd2Via2l0Lm9yZy9iLzEyNTQ5MyA8ZGQgZGF0YS1y
b2xlPSJBWEdyb3VwIiBjbGFzcz0iZXgiPlg8L2RkPiAtLT4KLTwhLS0gPC9kbD4gLS0+Cis8ZGwg
ZGF0YS1yb2xlPSJBWERlc2NyaXB0aW9uTGlzdCIgY2xhc3M9ImV4Ij4KKyAgICA8ZHQgZGF0YS1y
b2xlPSJBWERlc2NyaXB0aW9uVGVybSIgY2xhc3M9ImV4Ij5YPC9kdD4KKyAgICA8ZGQgZGF0YS1y
b2xlPSJBWERlc2NyaXB0aW9uVmFsdWUiIGNsYXNzPSJleCI+WDwvZGQ+Cis8L2RsPgogPGRpdiBk
YXRhLXJvbGU9IkFYU2VjdGlvbiIgY2xhc3M9ImV4Ij5YPC9kaXY+CiA8IS0tIHNraXBwZWQgQVRL
OiBub3QgZm9jdXNhYmxlIDxlbSBkYXRhLXJvbGU9IiIgY2xhc3M9ImV4Ij5YPC9lbT4tLT4KIDwh
LS0gc2tpcHBlZCA8ZW1iZWQ+IC0tPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDI1YzFjMTYuLjQ2ODA3NzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMy0xMi0xNyAgTWFyaW8gU2FuY2hleiBQcmFk
YSAgPG1hcmlvLnByYWRhQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtBVEtdIEV4cG9zZSBhY2Nl
c3NpYmlsaXR5IG9iamVjdHMgZm9yIDxkbD4sIDxkdD4gYW5kIDxkZD4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTg1NworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1hcCBkZXNjcmlwdGlvbiBsaXN0cyB0
byB0aGUgbmV3bHkgaW50cm9kdWNlZCBBVEsgcm9sZXMKKyAgICAgICAgQVRLX1JPTEVfREVTQ1JJ
UFRJT05fTElTVCwgQVRLX1JPTEVfREVTQ1JJUFRJT05fVEVSTSBhbmQKKyAgICAgICAgQVRLX1JP
TEVfREVTQ1JJUFRJT05fVkFMVUUsIGludHJvZHVjZWQgaW4gQVRLIDIuMTEuNC4KKworICAgICAg
ICAqIGFjY2Vzc2liaWxpdHkvYXRrL1dlYktpdEFjY2Vzc2libGVXcmFwcGVyQXRrLmNwcDoKKyAg
ICAgICAgKGF0a1JvbGUpOiBEbyB0aGUgcmlnaHQgbWFwcGluZy4KKyAgICAgICAgKHdlYmtpdEFj
Y2Vzc2libGVHZXRSb2xlKTogVXBkYXRlIGNhbGwgdG8gYXRrUm9sZSwgbm93IHRoYXQgaXQKKyAg
ICAgICAgcmVjZWl2ZXMgYW4gQWNjZXNzaWJpbGl0eU9iamVjdCogYXMgcGFyYW1ldGVyLgorCiAy
MDEzLTEyLTE2ICBNYXJpbyBTYW5jaGV6IFByYWRhICA8bWFyaW8ucHJhZGFAc2Ftc3VuZy5jb20+
CiAKICAgICAgICAgW0FUS10gRXhwb3NlIGFjY2Vzc2liaWxpdHkgb2JqZWN0cyBmb3IgbW9yZSBX
QUktQVJJQSByb2xlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9h
dGsvV2ViS2l0QWNjZXNzaWJsZVdyYXBwZXJBdGsuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdGsvV2ViS2l0QWNjZXNzaWJsZVdyYXBwZXJBdGsuY3BwCmluZGV4IDYwMGFmYmQu
LjdlODg4ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRrL1dl
YktpdEFjY2Vzc2libGVXcmFwcGVyQXRrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L2F0ay9XZWJLaXRBY2Nlc3NpYmxlV3JhcHBlckF0ay5jcHAKQEAgLTM1LDYgKzM1LDcg
QEAKICNpZiBIQVZFKEFDQ0VTU0lCSUxJVFkpCiAKICNpbmNsdWRlICJBWE9iamVjdENhY2hlLmgi
CisjaW5jbHVkZSAiQWNjZXNzaWJpbGl0eUxpc3QuaCIKICNpbmNsdWRlICJBY2Nlc3NpYmlsaXR5
TGlzdEJveE9wdGlvbi5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRnJhbWUu
aCIKQEAgLTU1Nyw4ICs1NTgsOSBAQCBzdGF0aWMgQXRrQXR0cmlidXRlU2V0KiB3ZWJraXRBY2Nl
c3NpYmxlR2V0QXR0cmlidXRlcyhBdGtPYmplY3QqIG9iamVjdCkKICAgICByZXR1cm4gYXR0cmli
dXRlU2V0OwogfQogCi1zdGF0aWMgQXRrUm9sZSBhdGtSb2xlKEFjY2Vzc2liaWxpdHlSb2xlIHJv
bGUpCitzdGF0aWMgQXRrUm9sZSBhdGtSb2xlKEFjY2Vzc2liaWxpdHlPYmplY3QqIGNvcmVPYmpl
Y3QpCiB7CisgICAgQWNjZXNzaWJpbGl0eVJvbGUgcm9sZSA9IGNvcmVPYmplY3QtPnJvbGVWYWx1
ZSgpOwogICAgIHN3aXRjaCAocm9sZSkgewogICAgIGNhc2UgQXBwbGljYXRpb25BbGVydERpYWxv
Z1JvbGU6CiAgICAgY2FzZSBBcHBsaWNhdGlvbkFsZXJ0Um9sZToKQEAgLTYzMiw2ICs2MzQsMTAg
QEAgc3RhdGljIEF0a1JvbGUgYXRrUm9sZShBY2Nlc3NpYmlsaXR5Um9sZSByb2xlKQogICAgIGNh
c2UgQ29sb3JXZWxsUm9sZToKICAgICAgICAgcmV0dXJuIEFUS19ST0xFX0NPTE9SX0NIT09TRVI7
CiAgICAgY2FzZSBMaXN0Um9sZToKKyNpZiBBVEtfQ0hFQ0tfVkVSU0lPTigyLCAxMSwgNCkKKyAg
ICAgICAgaWYgKGNvcmVPYmplY3QtPmlzTGlzdCgpICYmIHRvQWNjZXNzaWJpbGl0eUxpc3QoY29y
ZU9iamVjdCktPmlzRGVzY3JpcHRpb25MaXN0KCkpCisgICAgICAgICAgICByZXR1cm4gQVRLX1JP
TEVfREVTQ1JJUFRJT05fTElTVDsKKyNlbmRpZgogICAgICAgICByZXR1cm4gQVRLX1JPTEVfTElT
VDsKICAgICBjYXNlIFNjcm9sbEJhclJvbGU6CiAgICAgICAgIHJldHVybiBBVEtfUk9MRV9TQ1JP
TExfQkFSOwpAQCAtNzE2LDYgKzcyMiwxNCBAQCBzdGF0aWMgQXRrUm9sZSBhdGtSb2xlKEFjY2Vz
c2liaWxpdHlSb2xlIHJvbGUpCiAgICAgY2FzZSBMYW5kbWFya1NlYXJjaFJvbGU6CiAgICAgICAg
IHJldHVybiBBVEtfUk9MRV9MQU5ETUFSSzsKICNlbmRpZgorI2lmIEFUS19DSEVDS19WRVJTSU9O
KDIsIDExLCA0KQorICAgIGNhc2UgRGVzY3JpcHRpb25MaXN0Um9sZToKKyAgICAgICAgcmV0dXJu
IEFUS19ST0xFX0RFU0NSSVBUSU9OX0xJU1Q7CisgICAgY2FzZSBEZXNjcmlwdGlvbkxpc3RUZXJt
Um9sZToKKyAgICAgICAgcmV0dXJuIEFUS19ST0xFX0RFU0NSSVBUSU9OX1RFUk07CisgICAgY2Fz
ZSBEZXNjcmlwdGlvbkxpc3REZXRhaWxSb2xlOgorICAgICAgICByZXR1cm4gQVRLX1JPTEVfREVT
Q1JJUFRJT05fVkFMVUU7CisjZW5kaWYKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gQVRL
X1JPTEVfVU5LTk9XTjsKICAgICB9CkBAIC03MzUsNyArNzQ5LDcgQEAgc3RhdGljIEF0a1JvbGUg
d2Via2l0QWNjZXNzaWJsZUdldFJvbGUoQXRrT2JqZWN0KiBvYmplY3QpCiAgICAgaWYgKGNvcmVP
YmplY3QtPmlzUGFzc3dvcmRGaWVsZCgpKQogICAgICAgICByZXR1cm4gQVRLX1JPTEVfUEFTU1dP
UkRfVEVYVDsKIAotICAgIHJldHVybiBhdGtSb2xlKGNvcmVPYmplY3QtPnJvbGVWYWx1ZSgpKTsK
KyAgICByZXR1cm4gYXRrUm9sZShjb3JlT2JqZWN0KTsKIH0KIAogc3RhdGljIGJvb2wgaXNUZXh0
V2l0aENhcmV0KEFjY2Vzc2liaWxpdHlPYmplY3QqIGNvcmVPYmplY3QpCmRpZmYgLS1naXQgYS9U
b29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzdlNWI2ZC4uODU4YmE4MyAx
MDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSw1
ICsxLDE5IEBACiAyMDEzLTEyLTE3ICBNYXJpbyBTYW5jaGV6IFByYWRhICA8bWFyaW8ucHJhZGFA
c2Ftc3VuZy5jb20+CiAKKyAgICAgICAgW0FUS10gRXhwb3NlIGFjY2Vzc2liaWxpdHkgb2JqZWN0
cyBmb3IgPGRsPiwgPGR0PiBhbmQgPGRkPgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTI1ODU3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIG1hcHBpbmdzIHRvIERSVCAmIFdLVFIgZm9yIHRoZSBuZXds
eSBleHBvc2VkIHJvbGVzLCBhbmQKKyAgICAgICAgaW5jcmVhc2UgdGhlIHZlcnNpb24gb2YgQVRL
IHVzZWQgYnkgdGhlIGludGVybmFsIGpoYnVpbGQuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJl
ZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHA6CisgICAgICAgICogV2ViS2l0VGVz
dFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHA6
CisgICAgICAgICogZ3RrL2poYnVpbGQubW9kdWxlczogUmFpc2UgdmVyc2lvbiBvZiBBVEsgdXAg
dG8gMi4xMS40LgorCisyMDEzLTEyLTE3ICBNYXJpbyBTYW5jaGV6IFByYWRhICA8bWFyaW8ucHJh
ZGFAc2Ftc3VuZy5jb20+CisKICAgICAgICAgW0FUS10gW1dLMl0gcGxhdGZvcm0vZ3RrL2FjY2Vz
c2liaWxpdHkvcm9sZXMtZXhwb3NlZC5odG1sIGlzIGZhaWxpbmcKICAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNTg1NAogCmRpZmYgLS1naXQgYS9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHAgYi9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHAKaW5kZXgg
OTA0ZmY1MS4uMTQxYTIyNSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvYXRrL0Fj
Y2Vzc2liaWxpdHlVSUVsZW1lbnRBdGsuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2F0
ay9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50QXRrLmNwcApAQCAtMzQwLDYgKzM0MCwxNCBAQCBjb25z
dCBjaGFyKiByb2xlVG9TdHJpbmcoQXRrT2JqZWN0KiBvYmplY3QpCiAgICAgY2FzZSBBVEtfUk9M
RV9USU1FUjoKICAgICAgICAgcmV0dXJuICJBWFRpbWVyIjsKICNlbmRpZgorI2lmIEFUS19DSEVD
S19WRVJTSU9OKDIsIDExLCA0KQorICAgIGNhc2UgQVRLX1JPTEVfREVTQ1JJUFRJT05fTElTVDoK
KyAgICAgICAgcmV0dXJuICJBWERlc2NyaXB0aW9uTGlzdCI7CisgICAgY2FzZSBBVEtfUk9MRV9E
RVNDUklQVElPTl9URVJNOgorICAgICAgICByZXR1cm4gIkFYRGVzY3JpcHRpb25UZXJtIjsKKyAg
ICBjYXNlIEFUS19ST0xFX0RFU0NSSVBUSU9OX1ZBTFVFOgorICAgICAgICByZXR1cm4gIkFYRGVz
Y3JpcHRpb25WYWx1ZSI7CisjZW5kaWYKICAgICBkZWZhdWx0OgogICAgICAgICAvLyBXZSB3YW50
IHRvIGRpc3Rpbmd1aXNoIEFUS19ST0xFX1VOS05PV04gZnJvbSBhIGtub3duIEF0a1JvbGUgd2hp
Y2gKICAgICAgICAgLy8gb3VyIERSVCBpc24ndCBwcm9wZXJseSBoYW5kbGluZy4KZGlmZiAtLWdp
dCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvYXRrL0FjY2Vzc2liaWxp
dHlVSUVsZW1lbnRBdGsuY3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRs
ZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHAKaW5kZXggMmRlMDE4NS4uZjExOWIx
ZiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9hdGsv
QWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9hdGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHAKQEAgLTQy
OSw2ICs0MjksMTQgQEAgY29uc3QgZ2NoYXIqIHJvbGVUb1N0cmluZyhBdGtPYmplY3QqIG9iamVj
dCkKICAgICBjYXNlIEFUS19ST0xFX1RJTUVSOgogICAgICAgICByZXR1cm4gIkFYVGltZXIiOwog
I2VuZGlmCisjaWYgQVRLX0NIRUNLX1ZFUlNJT04oMiwgMTEsIDQpCisgICAgY2FzZSBBVEtfUk9M
RV9ERVNDUklQVElPTl9MSVNUOgorICAgICAgICByZXR1cm4gIkFYRGVzY3JpcHRpb25MaXN0IjsK
KyAgICBjYXNlIEFUS19ST0xFX0RFU0NSSVBUSU9OX1RFUk06CisgICAgICAgIHJldHVybiAiQVhE
ZXNjcmlwdGlvblRlcm0iOworICAgIGNhc2UgQVRLX1JPTEVfREVTQ1JJUFRJT05fVkFMVUU6Cisg
ICAgICAgIHJldHVybiAiQVhEZXNjcmlwdGlvblZhbHVlIjsKKyNlbmRpZgogICAgIGRlZmF1bHQ6
CiAgICAgICAgIC8vIFdlIHdhbnQgdG8gZGlzdGluZ3Vpc2ggQVRLX1JPTEVfVU5LTk9XTiBmcm9t
IGEga25vd24gQXRrUm9sZSB3aGljaAogICAgICAgICAvLyBvdXIgRFJUIGlzbid0IHByb3Blcmx5
IGhhbmRsaW5nLgpkaWZmIC0tZ2l0IGEvVG9vbHMvZ3RrL2poYnVpbGQubW9kdWxlcyBiL1Rvb2xz
L2d0ay9qaGJ1aWxkLm1vZHVsZXMKaW5kZXggN2NmNjNjNy4uMTg2NWQwNyAxMDA2NDQKLS0tIGEv
VG9vbHMvZ3RrL2poYnVpbGQubW9kdWxlcworKysgYi9Ub29scy9ndGsvamhidWlsZC5tb2R1bGVz
CkBAIC0yMzIsOSArMjMyLDkgQEAKICAgPGF1dG90b29scyBpZD0iYXRrIgogICAgICAgICAgICAg
IGF1dG9nZW4tc2g9ImNvbmZpZ3VyZSIKICAgICAgICAgICAgICBhdXRvZ2VuYXJncz0iLS1kaXNh
YmxlLWludHJvc3BlY3Rpb24iPgotICAgIDxicmFuY2ggbW9kdWxlPSJwdWIvR05PTUUvc291cmNl
cy9hdGsvMi4xMS9hdGstMi4xMS4zLnRhci54eiIgdmVyc2lvbj0iMi4xMS4zIgorICAgIDxicmFu
Y2ggbW9kdWxlPSJwdWIvR05PTUUvc291cmNlcy9hdGsvMi4xMS9hdGstMi4xMS40LnRhci54eiIg
dmVyc2lvbj0iMi4xMS40IgogICAgICAgICAgICAgcmVwbz0iZnRwLmdub21lLm9yZyIKLSAgICAg
ICAgICAgIGhhc2g9InNoYTI1NjpiM2M2MzY2ODYzOGRiYjYyN2E4MWY0MzMzYTAwYjc0NGM1MDM1
MzFkMDdiMTY4NDA1ZWY1ZjI3ZjM4MmEwYWU0Ii8+CisgICAgICAgICAgICBoYXNoPSJzaGEyNTY6
YjYwOWZhN2EzZjIxMTQ3ZDQwZjBmZTBmNDcyNzhhNjJjMjYzZGUwZWFkYmJiZTk4MzlmMmI2M2Ew
Y2IwN2Q0MSIvPgogICA8L2F1dG90b29scz4KIAogICA8YXV0b3Rvb2xzIGlkPSJhdC1zcGkyLWNv
cmUiIAotLSAKMS43LjEwLjQKCg==
</data>
<flag name="review"
          id="243039"
          type_id="1"
          status="+"
          setter="cfleizach"
    />
          </attachment>
      

    </bug>

</bugzilla>