<?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>52324</bug_id>
          
          <creation_ts>2011-01-12 14:55:16 -0800</creation_ts>
          <short_desc>REGRESSION: A problem with Voiceover and finding links</short_desc>
          <delta_ts>2011-01-18 12:28:42 -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>Mac (Intel)</rep_platform>
          <op_sys>OS X 10.6</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://www.myponedesktop.com</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Regression</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Thomas Byskov Dalgaard">tvillingen06</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bdakin</cc>
    
    <cc>cfleizach</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>333318</commentid>
    <comment_count>0</comment_count>
    <who name="Thomas Byskov Dalgaard">tvillingen06</who>
    <bug_when>2011-01-12 14:55:16 -0800</bug_when>
    <thetext>A problem when using the latest version of Webkit with the Voiceover screenreader. If I go to the following URL and want to find  the link  &quot;Run web client&quot; I can not find it. However if I open the same page in Safari 5 (the latest version) the link is possible to find. Here is the steps to reproduce the error:
1. Go to the URL mentioned above.
2. Activate Voiceover by typing Command-F5 (if some  one uses a laptop add the FN-key to the keystroke).
2. Press CTRL-option and the letter u.
3. Press the right arrow until  you see or hear the word: Link.
4. Type: Ru (do this quickly)
5. You&apos;ll see that the link can&apos;t be found. Instead Voiceover detects the link named Features.
6. Try to open the Safari browser and do the same steps (1-5)
NOTE: You need to hit the escape key to exit the list of links (or as it is called in Voiceover the webroter).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>333754</commentid>
    <comment_count>1</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-01-13 10:05:58 -0800</bug_when>
    <thetext>what URL are you going to.. i don&apos;t see it listed here</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>333778</commentid>
    <comment_count>2</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-01-13 10:34:40 -0800</bug_when>
    <thetext>rdar://8859923</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334344</commentid>
    <comment_count>3</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-01-14 09:15:24 -0800</bug_when>
    <thetext>at the end of the the top &lt;ul&gt; is an iframe, that for some reason references the main web page, so VoiceOver gets into a loop</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334484</commentid>
    <comment_count>4</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-01-14 12:00:12 -0800</bug_when>
    <thetext>part of the problem is that the iframe had a title tag on it, causing it to NOT be ignored, which meant the hierarchy was not created correctly for the sub-frame</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334533</commentid>
    <comment_count>5</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-01-14 12:57:22 -0800</bug_when>
    <thetext>Here are the issues related
1) WebDynamicScrollBars should no longer be returned as an accessible item (since its taken care of by AccessibilityScrollView)
2) accessibilityIsIgnored, cannot query if the helpText is empty, before checking it it&apos;s an attachment (in this case the help text (title) was not empty, so the wrong element was being returned)
3) the hit point needs to be altered when hit test within the iframe again to be offset correctly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334559</commentid>
    <comment_count>6</comment_count>
    <who name="Thomas Byskov Dalgaard">tvillingen06</who>
    <bug_when>2011-01-14 13:34:33 -0800</bug_when>
    <thetext>Chris,
The issue  which I talked about is not only on that site. I  tried it e.g. on my Facebook mobile-site (which I prefer to use) and the same problem showed up. Voiceover was not able to track some links however I could find them by   scrolling down the page. However it worked until the update which came out a few days ago therefor I guess this might be a webkit related issue?
I have not been able to get the same issue in Safari however I tried on the same page and Voiceover finds the link exactly as it shell. So is the issue  below only for the URL I wrote earlier or a more general fix?

(In reply to comment #5)
&gt; Here are the issues related
&gt; 1) WebDynamicScrollBars should no longer be returned as an accessible item (since its taken care of by AccessibilityScrollView)
&gt; 2) accessibilityIsIgnored, cannot query if the helpText is empty, before checking it it&apos;s an attachment (in this case the help text (title) was not empty, so the wrong element was being returned)
&gt; 3) the hit point needs to be altered when hit test within the iframe again to be offset correctly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334696</commentid>
    <comment_count>7</comment_count>
      <attachid>79020</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-01-14 16:00:12 -0800</bug_when>
    <thetext>Created attachment 79020
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335921</commentid>
    <comment_count>8</comment_count>
      <attachid>79020</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-01-18 10:33:09 -0800</bug_when>
    <thetext>Comment on attachment 79020
Patch

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

&gt; Source/WebCore/accessibility/AccessibilityObject.cpp:1022
&gt; +            IntRect frameRect = widget-&gt;frameRect();
&gt; +            IntPoint newPoint = point;
&gt; +            newPoint.setX(point.x() - frameRect.x());
&gt; +            newPoint.setY(point.y() - frameRect.y());
&gt; +            return axObjectCache()-&gt;getOrCreate(widget)-&gt;accessibilityHitTest(newPoint);

This can be written without doing X and Y separately:

    IntPoint newPoint = point - widget-&gt;frameRect().location();

Or even:

    return axObjectCache()-&gt;getOrCreate(widget)-&gt;accessibilityHitTest(point - widget-&gt;frameRect().location());

&gt; Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1888
&gt; +    // This should be the last check
&gt; +    if (!helpText().isEmpty())
&gt; +        return false;
&gt;      
&gt; -    return !m_renderer-&gt;isListMarker() &amp;&amp; !isWebArea();
&gt; +    return true;

If it is important that the helpText check be last then you *could* write it like this:

    return helpText().isEmpty();

Unless you think that’s less clear. Also, we prefer comments that are in sentence style.

Also, the comment needs to say why the helpText check should be last. The general rule of thumb is that comments say why and the code itself says what.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336002</commentid>
    <comment_count>9</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2011-01-18 12:28:42 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/76044</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79020</attachid>
            <date>2011-01-14 16:00:12 -0800</date>
            <delta_ts>2011-01-18 10:33:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52324-20110114160011.patch</filename>
            <type>text/plain</type>
            <size>9945</size>
            <attacher name="chris fleizach">cfleizach</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc1ODMzKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDEtMTQgIENocmlzIEZs
ZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBSRUdSRVNTSU9OOiBBIHByb2JsZW0gd2l0aCBWb2ljZW92
ZXIgYW5kIGZpbmRpbmcgbGlua3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTUyMzI0CisKKyAgICAgICAgRmFsbG91dCBmcm9tIHJlY2VudCBjaGFuZ2Ug
dG8gbWFrZSBXZWJDb3JlIHJldHVybiBpdHMgb3duIHNjcm9sbCB2aWV3LgorICAgICAgICAgICAx
KSBUaGVyZSB3ZXJlIHR3byBzY3JvbGwgdmlld3MgaW4gdGhlIGhpZXJhcmNoeSwgb25lIHdoaWNo
IG5vIG5lZWRlZCB0byBiZSBpZ25vcmVkLgorICAgICAgICAgICAyKSBIaXQgdGVzdHMgZm9yIHN1
YiBmcmFtZXMgbmVlZGVkIHRvIGJlIG9mZnNldC4KKyAgICAgICAgICAgMykgVGhlIGNoZWNrIGZv
ciB3aGV0aGVyIGFuIGF0dGFjaG1lbnQgaXMgaWdub3JlZCBtdXN0IGhhcHBlbiBlYXJsaWVyIHRo
YW4gdXNpbmcKKyAgICAgICAgICAgICAgdGhlIGhlbHBUZXh0IHRvIGRldGVybWluZSBpZiBhbiBl
bGVtZW50IHNob3VsZCBiZSBpZ25vcmVkLgorCisgICAgICAgIFRlc3Q6IHBsYXRmb3JtL21hYy9h
Y2Nlc3NpYmlsaXR5L2lmcmFtZS13aXRoLXRpdGxlLWNvcnJlY3QtaGllcmFyY2h5Lmh0bWwKKwor
ICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5T2JqZWN0OjplbGVtZW50QWNjZXNzaWJpbGl0eUhpdFRl
c3QpOgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjphY2Nlc3Np
YmlsaXR5SXNJZ25vcmVkKToKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L21hYy9BY2Nlc3NpYmls
aXR5T2JqZWN0V3JhcHBlci5tbToKKyAgICAgICAgKC1bQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBw
ZXIgc2Nyb2xsVmlld1BhcmVudF0pOgorCiAyMDExLTAxLTE0ICBIZWxkZXIgQ29ycmVpYSAgPGhl
bGRlckBzZW5jaGEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5
T2JqZWN0LmNwcAkocmV2aXNpb24gNzU4MzMpCisrKyBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDEzLDggKzEw
MTMsMTQgQEAgQWNjZXNzaWJpbGl0eU9iamVjdCogQWNjZXNzaWJpbGl0eU9iamVjdAogICAgIC8v
IFNlbmQgdGhlIGhpdCB0ZXN0IGJhY2sgaW50byB0aGUgc3ViLWZyYW1lIGlmIG5lY2Vzc2FyeS4K
ICAgICBpZiAoaXNBdHRhY2htZW50KCkpIHsKICAgICAgICAgV2lkZ2V0KiB3aWRnZXQgPSB3aWRn
ZXRGb3JBdHRhY2htZW50VmlldygpOwotICAgICAgICBpZiAod2lkZ2V0ICYmIHdpZGdldC0+aXNG
cmFtZVZpZXcoKSkKLSAgICAgICAgICAgIHJldHVybiBheE9iamVjdENhY2hlKCktPmdldE9yQ3Jl
YXRlKHN0YXRpY19jYXN0PFNjcm9sbFZpZXcqPih3aWRnZXQpKS0+YWNjZXNzaWJpbGl0eUhpdFRl
c3QocG9pbnQpOworICAgICAgICBpZiAod2lkZ2V0ICYmIHdpZGdldC0+aXNGcmFtZVZpZXcoKSkg
eworICAgICAgICAgICAgLy8gTm9ybWFsaXplIHRoZSBwb2ludCBmb3IgdGhlIHdpZGdldCdzIGJv
dW5kcy4KKyAgICAgICAgICAgIEludFJlY3QgZnJhbWVSZWN0ID0gd2lkZ2V0LT5mcmFtZVJlY3Qo
KTsKKyAgICAgICAgICAgIEludFBvaW50IG5ld1BvaW50ID0gcG9pbnQ7CisgICAgICAgICAgICBu
ZXdQb2ludC5zZXRYKHBvaW50LngoKSAtIGZyYW1lUmVjdC54KCkpOworICAgICAgICAgICAgbmV3
UG9pbnQuc2V0WShwb2ludC55KCkgLSBmcmFtZVJlY3QueSgpKTsKKyAgICAgICAgICAgIHJldHVy
biBheE9iamVjdENhY2hlKCktPmdldE9yQ3JlYXRlKHdpZGdldCktPmFjY2Vzc2liaWxpdHlIaXRU
ZXN0KG5ld1BvaW50KTsKKyAgICAgICAgfQogICAgIH0KIAogICAgIHJldHVybiBjb25zdF9jYXN0
PEFjY2Vzc2liaWxpdHlPYmplY3QqPih0aGlzKTsgCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAJ
KHJldmlzaW9uIDc1ODMzKQorKysgU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5UmVuZGVyT2JqZWN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTc3Miw2ICsxNzcyLDEw
IEBAIGJvb2wgQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6YWNjZXNzaWIKICAgICBpZiAoIWlz
QWxsb3dlZENoaWxkT2ZUcmVlKCkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCisgICAgLy8gbWFr
ZSBhIHBsYXRmb3JtLXNwZWNpZmljIGRlY2lzaW9uCisgICAgaWYgKGlzQXR0YWNobWVudCgpKQor
ICAgICAgICByZXR1cm4gYWNjZXNzaWJpbGl0eUlnbm9yZUF0dGFjaG1lbnQoKTsKKyAgICAKICAg
ICAvLyBpZ25vcmUgcG9wdXAgbWVudSBpdGVtcyBiZWNhdXNlIEFwcEtpdCBkb2VzCiAgICAgZm9y
IChSZW5kZXJPYmplY3QqIHBhcmVudCA9IG1fcmVuZGVyZXItPnBhcmVudCgpOyBwYXJlbnQ7IHBh
cmVudCA9IHBhcmVudC0+cGFyZW50KCkpIHsKICAgICAgICAgaWYgKHBhcmVudC0+aXNCb3hNb2Rl
bE9iamVjdCgpICYmIHRvUmVuZGVyQm94TW9kZWxPYmplY3QocGFyZW50KS0+aXNNZW51TGlzdCgp
KQpAQCAtMTgxNyw5ICsxODIxLDYgQEAgYm9vbCBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0Ojph
Y2Nlc3NpYgogICAgIGlmIChhcmlhUm9sZUF0dHJpYnV0ZSgpICE9IFVua25vd25Sb2xlKQogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBpZiAoIWhlbHBUZXh0KCkuaXNFbXB0eSgpKQotICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgCiAgICAgLy8gZG9uJ3QgaWdub3JlIGxhYmVscywgYmVj
YXVzZSB0aGV5IHNlcnZlIGFzIFRpdGxlVUlFbGVtZW50cwogICAgIE5vZGUqIG5vZGUgPSBtX3Jl
bmRlcmVyLT5ub2RlKCk7CiAgICAgaWYgKG5vZGUgJiYgbm9kZS0+aGFzVGFnTmFtZShsYWJlbFRh
ZykpCkBAIC0xODc3LDExICsxODc4LDE0IEBAIGJvb2wgQWNjZXNzaWJpbGl0eVJlbmRlck9iamVj
dDo6YWNjZXNzaWIKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgICAKLSAgICAvLyBt
YWtlIGEgcGxhdGZvcm0tc3BlY2lmaWMgZGVjaXNpb24KLSAgICBpZiAoaXNBdHRhY2htZW50KCkp
Ci0gICAgICAgIHJldHVybiBhY2Nlc3NpYmlsaXR5SWdub3JlQXR0YWNobWVudCgpOworICAgIGlm
IChpc1dlYkFyZWEoKSB8fCBtX3JlbmRlcmVyLT5pc0xpc3RNYXJrZXIoKSkKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgIAorICAgIC8vIFRoaXMgc2hvdWxkIGJlIHRoZSBsYXN0IGNoZWNrCisg
ICAgaWYgKCFoZWxwVGV4dCgpLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogICAg
IAotICAgIHJldHVybiAhbV9yZW5kZXJlci0+aXNMaXN0TWFya2VyKCkgJiYgIWlzV2ViQXJlYSgp
OworICAgIHJldHVybiB0cnVlOwogfQogCiBib29sIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6
OmlzTG9hZGVkKCkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFj
L0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvbWFjL0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyLm1tCShyZXZp
c2lvbiA3NTgzMykKKysrIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL0FjY2Vzc2li
aWxpdHlPYmplY3RXcmFwcGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xNDU1LDcgKzE0NTUsNyBA
QCAtIChpZClzY3JvbGxWaWV3UGFyZW50CiAgICAgICAgIHJldHVybiBuaWw7CiAgICAgCiAgICAg
aWYgKHNjcm9sbC0+cGxhdGZvcm1XaWRnZXQoKSkKLSAgICAgICAgcmV0dXJuIHNjcm9sbC0+cGxh
dGZvcm1XaWRnZXQoKTsKKyAgICAgICAgcmV0dXJuIE5TQWNjZXNzaWJpbGl0eVVuaWdub3JlZEFu
Y2VzdG9yKHNjcm9sbC0+cGxhdGZvcm1XaWRnZXQoKSk7CiAKICAgICByZXR1cm4gW3NlbGYgcmVt
b3RlQWNjZXNzaWJpbGl0eVBhcmVudE9iamVjdF07CiB9CkluZGV4OiBXZWJLaXQvbWFjL0NoYW5n
ZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvbWFjL0NoYW5nZUxvZwkocmV2aXNpb24gNzU4MzMp
CisrKyBXZWJLaXQvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBA
CisyMDExLTAxLTE0ICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUkVHUkVTU0lPTjog
QSBwcm9ibGVtIHdpdGggVm9pY2VvdmVyIGFuZCBmaW5kaW5nIGxpbmtzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjMyNAorCisgICAgICAgICogV2Vi
Vmlldy9XZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcubW06CisgICAgICAgICgtW1dlYkR5bmFtaWNT
Y3JvbGxCYXJzVmlldyBhY2Nlc3NpYmlsaXR5SXNJZ25vcmVkXSk6CisKIDIwMTEtMDEtMTQgIEJl
dGggRGFraW4gIDxiZGFraW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hcmsg
Um93ZS4KSW5kZXg6IFdlYktpdC9tYWMvV2ViVmlldy9XZWJEeW5hbWljU2Nyb2xsQmFyc1ZpZXcu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0L21hYy9XZWJWaWV3L1dlYkR5bmFtaWNTY3JvbGxCYXJz
Vmlldy5tbQkocmV2aXNpb24gNzU4MzMpCisrKyBXZWJLaXQvbWFjL1dlYlZpZXcvV2ViRHluYW1p
Y1Njcm9sbEJhcnNWaWV3Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC01NjUsMTEgKzU2NSw3IEBAIC0g
KHZvaWQpc2Nyb2xsV2hlZWw6KE5TRXZlbnQgKilldmVudAogCiAtIChCT09MKWFjY2Vzc2liaWxp
dHlJc0lnbm9yZWQgCiB7Ci0gICAgaWQgZG9jVmlldyA9IFtzZWxmIGRvY3VtZW50Vmlld107Ci0g
ICAgaWYgKFtkb2NWaWV3IGlzS2luZE9mQ2xhc3M6W1dlYkZyYW1lVmlldyBjbGFzc11dICYmICFb
KFdlYkZyYW1lVmlldyAqKWRvY1ZpZXcgYWxsb3dzU2Nyb2xsaW5nXSkKLSAgICAgICAgcmV0dXJu
IFlFUzsKLSAgICAKLSAgICByZXR1cm4gW3N1cGVyIGFjY2Vzc2liaWxpdHlJc0lnbm9yZWRdOwor
ICAgIHJldHVybiBZRVM7CiB9CiAKIC0gKHZvaWQpc2V0U2Nyb2xsT3JpZ2luOihOU1BvaW50KXNj
cm9sbE9yaWdpbiB1cGRhdGVQb3NpdGlvbjooQk9PTCl1cGRhdGVQb3NpdGlvbgpJbmRleDogTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwko
cmV2aXNpb24gNzU4MzMpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkK
QEAgLTEsMyArMSwxMyBAQAorMjAxMS0wMS0xNCAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hA
YXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFJFR1JFU1NJT046IEEgcHJvYmxlbSB3aXRoIFZvaWNlb3ZlciBhbmQgZmluZGluZyBsaW5r
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIzMjQK
KworICAgICAgICAqIHBsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2lmcmFtZS13aXRoLXRpdGxl
LWNvcnJlY3QtaGllcmFyY2h5LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZv
cm0vbWFjL2FjY2Vzc2liaWxpdHkvaWZyYW1lLXdpdGgtdGl0bGUtY29ycmVjdC1oaWVyYXJjaHku
aHRtbDogQWRkZWQuCisKIDIwMTEtMDEtMTQgIEhlbGRlciBDb3JyZWlhICA8aGVsZGVyQHNlbmNo
YS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgpJbmRleDogTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vzc2liaWxpdHkvaWZyYW1lLXdpdGgtdGl0bGUtY29ycmVj
dC1oaWVyYXJjaHktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy9hY2Nlc3NpYmlsaXR5L2lmcmFtZS13aXRoLXRpdGxlLWNvcnJlY3QtaGllcmFyY2h5
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9h
Y2Nlc3NpYmlsaXR5L2lmcmFtZS13aXRoLXRpdGxlLWNvcnJlY3QtaGllcmFyY2h5LWV4cGVjdGVk
LnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNyBAQAordGVzdAorCitUaGlzIG1ha2VzIHN1
cmUgdGhhdCBpZiBhbiBpZnJhbWUgaGFzIGEgdGl0bGUgYXR0cmlidXRlLCBpdCB3aWxsIHN0aWxs
IHNob3cgdXAgaW4gdGhlIGhpZXJhcmNoeSBjb3JyZWN0bHkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIGlmcmFtZVNjcm9sbC5yb2xlIGlzICdBWFJvbGU6IEFYU2Nyb2xs
QXJlYScKK1BBU1MgaWZyYW1lU2Nyb2xsLnBhcmVudEVsZW1lbnQoKS5yb2xlIGlzICdBWFJvbGU6
IEFYR3JvdXAnCitQQVNTIGlmcmFtZVNjcm9sbC5wYXJlbnRFbGVtZW50KCkucGFyZW50RWxlbWVu
dCgpLnJvbGUgaXMgJ0FYUm9sZTogQVhXZWJBcmVhJworUEFTUyBpZnJhbWVTY3JvbGwucGFyZW50
RWxlbWVudCgpLnBhcmVudEVsZW1lbnQoKS5pc0VxdWFsKGJvZHlFbGVtZW50KSBpcyB0cnVlCitQ
QVNTIGlmcmFtZVdlYi5wYXJlbnRFbGVtZW50KCkuaXNFcXVhbChpZnJhbWVTY3JvbGwpIGlzIHRy
dWUKK1BBU1MgaGl0VGVzdC5pc0VxdWFsKGlmcmFtZVdlYikgaXMgdHJ1ZQorUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKSW5kZXg6IExheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2lmcmFtZS13aXRoLXRpdGxlLWNvcnJlY3QtaGll
cmFyY2h5Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2FjY2Vz
c2liaWxpdHkvaWZyYW1lLXdpdGgtdGl0bGUtY29ycmVjdC1oaWVyYXJjaHkuaHRtbAkocmV2aXNp
b24gMCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9hY2Nlc3NpYmlsaXR5L2lmcmFtZS13
aXRoLXRpdGxlLWNvcnJlY3QtaGllcmFyY2h5Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
NTAgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxo
dG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2Zhc3Qv
anMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQ+CisgICAgdmFyIHN1Y2Nl
c3NmdWxseVBhcnNlZCA9IGZhbHNlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
ZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHkgaWQ9ImJvZHkiPgorCis8ZGl2IHJvbGU9ImJ1dHRvbiI+dGVzdDwvZGl2PgorPGRpdiBzdHls
ZT0icG9zaXRpb246IHJlbGF0aXZlOyBsZWZ0OiAxMDBweCI+Cis8aWZyYW1lIGlkPSJmcmFtZSIg
c2Nyb2xsaW5nPVlFUyAgd2lkdGg9MTAwIGhlaWdodD0xMDAgYm9yZGVyPTEgdGl0bGU9ImlmcmFt
ZSIgc3JjPSJyZXNvdXJjZXMvY2FrZS5wbmciPjwvaWZyYW1lPgorPC9kaXY+Cis8cCBpZD0iZGVz
Y3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgorICAg
IGRlc2NyaXB0aW9uKCJUaGlzIG1ha2VzIHN1cmUgdGhhdCBpZiBhbiBpZnJhbWUgaGFzIGEgdGl0
bGUgYXR0cmlidXRlLCBpdCB3aWxsIHN0aWxsIHNob3cgdXAgaW4gdGhlIGhpZXJhcmNoeSBjb3Jy
ZWN0bHkuIik7CisKKyAgICBpZiAod2luZG93LmFjY2Vzc2liaWxpdHlDb250cm9sbGVyKSB7Cisg
ICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJvZHkiKS5mb2N1cygpOworICAgICAgIHZh
ciBib2R5RWxlbWVudCA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVyLmZvY3VzZWRFbGVtZW50Owor
ICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmcmFtZSIpLmZvY3VzKCk7CisKKyAgICAg
ICAvLyBzY3JvbGwgYXJlYSAtPiB3ZWIgYXJlYSAtPiBncm91cCAtPiBpZnJhbWUgKHNjcm9sbCBh
cmVhKQorICAgICAgIHZhciBpZnJhbWVTY3JvbGwgPSBhY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5y
b290RWxlbWVudC5jaGlsZEF0SW5kZXgoMCkuY2hpbGRBdEluZGV4KDEpLmNoaWxkQXRJbmRleCgw
KTsKKyAgICAgICBzaG91bGRCZSgiaWZyYW1lU2Nyb2xsLnJvbGUiLCAiJ0FYUm9sZTogQVhTY3Jv
bGxBcmVhJyIpOworICAgICAgIHNob3VsZEJlKCJpZnJhbWVTY3JvbGwucGFyZW50RWxlbWVudCgp
LnJvbGUiLCAiJ0FYUm9sZTogQVhHcm91cCciKTsKKyAgICAgICBzaG91bGRCZSgiaWZyYW1lU2Ny
b2xsLnBhcmVudEVsZW1lbnQoKS5wYXJlbnRFbGVtZW50KCkucm9sZSIsICInQVhSb2xlOiBBWFdl
YkFyZWEnIik7CisgICAgICAgc2hvdWxkQmVUcnVlKCJpZnJhbWVTY3JvbGwucGFyZW50RWxlbWVu
dCgpLnBhcmVudEVsZW1lbnQoKS5pc0VxdWFsKGJvZHlFbGVtZW50KSIpOworCisgICAgICAgLy8g
d2ViIGFyZWEgKG9mIHNjcm9sbCBhcmVhKQorICAgICAgIHZhciBpZnJhbWVXZWIgPSBpZnJhbWVT
Y3JvbGwuY2hpbGRBdEluZGV4KDApOworICAgICAgIHNob3VsZEJlVHJ1ZSgiaWZyYW1lV2ViLnBh
cmVudEVsZW1lbnQoKS5pc0VxdWFsKGlmcmFtZVNjcm9sbCkiKTsKKyAgICAgICB2YXIgeCA9IGlm
cmFtZVdlYi54ICsgNTsKKyAgICAgICB2YXIgeSA9IGlmcmFtZVdlYi55ICsgNTsKKworICAgICAg
IHZhciBoaXRUZXN0ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuZWxlbWVudEF0UG9pbnQoeCwg
eSk7CisgICAgICAgc2hvdWxkQmVUcnVlKCJoaXRUZXN0LmlzRXF1YWwoaWZyYW1lV2ViKSIpOwor
ICAgIH0KKworICAgIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4KKworPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CisK
</data>
<flag name="review"
          id="70404"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>