<?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>20738</bug_id>
          
          <creation_ts>2008-09-08 19:24:47 -0700</creation_ts>
          <short_desc>compareBoundaryPoints gives incorrect results</short_desc>
          <delta_ts>2008-09-14 21:53:46 -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>DOM</component>
          <version>525.x (Safari 3.1)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://www.h4x0r5.com/~ryan/bug/bug.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryan Anderson">rda</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>ap</cc>
    
    <cc>ojan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>90620</commentid>
    <comment_count>0</comment_count>
    <who name="Ryan Anderson">rda</who>
    <bug_when>2008-09-08 19:24:47 -0700</bug_when>
    <thetext>If I have a fragment like this:

&lt;div id=&apos;nonselected&apos;&gt;
  &lt;p&gt;This is some text that won&apos;t show up.&lt;/p&gt;
&lt;/div&gt;
&lt;div id=&apos;text&apos;&gt;
  &lt;p&gt;Here is some text&lt;/p&gt;
  &lt;p&gt;And some more&lt;/p&gt;
&lt;/div&gt;

And two ranges, one set to exactly the node with id = &apos;text&apos; (called text_range), and the other with a selection contained inside it (say, a text range containing &quot;some more&quot;, called selection), and we call:

selection.compareBoundaryPoints(Range.START_TO_END, text_range) gives -1 instead of 1, which appears to be incorrect.  (At the very least, it conflicts with how Firefox returns this.  The w3c documentation appears to define START_TO_END as &quot;the start of text_range compared to the end of selection&quot;, but, then the return value reverses the *order* of the two (e.g, selection&apos;s end vs text_range&apos;s start), and I think webkit has merely confused START_TO_END vs END_TO_START&apos;s definition.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>90621</commentid>
    <comment_count>1</comment_count>
      <attachid>23286</attachid>
    <who name="Ryan Anderson">rda</who>
    <bug_when>2008-09-08 19:25:56 -0700</bug_when>
    <thetext>Created attachment 23286
An example of code that uses compareBoundaryPoints and gets different behavior than Firefox.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91074</commentid>
    <comment_count>2</comment_count>
      <attachid>23396</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2008-09-13 10:04:34 -0700</bug_when>
    <thetext>Created attachment 23396
further reduced test case

Yes, looks like WebKit is wrong here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91122</commentid>
    <comment_count>3</comment_count>
      <attachid>23411</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2008-09-14 09:32:44 -0700</bug_when>
    <thetext>Created attachment 23411
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91169</commentid>
    <comment_count>4</comment_count>
      <attachid>23411</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2008-09-14 19:17:02 -0700</bug_when>
    <thetext>Comment on attachment 23411
proposed fix

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91177</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2008-09-14 21:53:46 -0700</bug_when>
    <thetext>Committed in &lt;http://trac.webkit.org/changeset/36423&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>23286</attachid>
            <date>2008-09-08 19:25:56 -0700</date>
            <delta_ts>2008-09-08 19:25:56 -0700</delta_ts>
            <desc>An example of code that uses compareBoundaryPoints and gets different behavior than Firefox.</desc>
            <filename>selection.html</filename>
            <type>text/html</type>
            <size>2249</size>
            <attacher name="Ryan Anderson">rda</attacher>
            
              <data encoding="base64">PGh0bWw+CjxoZWFkPgo8dGl0bGU+RGVtb25zdHJhdGluZyBhIGJ1ZyBpbiBjb21wYXJlQm91bmRh
cnlQb2ludHMoKTwvdGl0bGU+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KZnVuY3Rp
b24gbG9nKHRleHQpIHsKICB2YXIgJG91dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRw
dXQiKTsKICAkb3V0LmlubmVySFRNTCArPSAiPGJyIC8+PGVtPkxvZzogIiArIHRleHQgKyAiPC9l
bT4iOwp9CgpmdW5jdGlvbiBnZXRTZWxlY3RlZCgpIHsKICB2YXIgc2VsID0gd2luZG93LmdldFNl
bGVjdGlvbigpOwogIGxvZygicmFuZ2UgPSA8Yj4iICsgc2VsICsgIjwvYj4iKTsKICB2YXIgdGV4
dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXh0Iik7CiAgaWYgKHNlbC5jb250YWluc05v
ZGUodGV4dCwgZmFsc2UpKSB7CiAgICBsb2coInRleHQgZW50aXJlbHkgY29udGFpbmVkIGJ5IHNl
bGVjdGlvbiIpOwogICAgcmFuZ2UgPSBzZWwuZ2V0UmFuZ2VBdCgwKTsKICAgIHJhbmdlLnNldFN0
YXJ0QmVmb3JlKHRleHQpOwogICAgcmFuZ2Uuc2V0RW5kQWZ0ZXIodGV4dCk7CiAgICBsb2coIkNs
aXBwZWQgdmVyc2lvbiA9IDxiPiIgKyBzZWwgKyAiPC9iPiIpOwogIH0gZWxzZSBpZiAoc2VsLmNv
bnRhaW5zTm9kZSh0ZXh0LCB0cnVlKSkgewogICAgbG9nKCJ0ZXh0IHBhcnRpYWxseSBpbnNpZGUg
c2VsZWN0aW9uLCBidXQgbm90IGVudGlyZWx5Iik7CiAgICAvLyBTbyB3ZSBjbGlwIHRoZSBzZWxl
Y3Rpb24sIGlmIG5lY2Vzc2FyeS4KICAgIHJhbmdlID0gc2VsLmdldFJhbmdlQXQoMCk7CiAgICB0
ZXh0X3JhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKICAgIHRleHRfcmFuZ2Uuc2VsZWN0
Tm9kZSh0ZXh0KTsKCiAgICBsb2coIjx1bD4iICsgCiI8bGk+U1RBUlRfVE9fU1RBUlQgPSAiICsg
cmFuZ2UuY29tcGFyZUJvdW5kYXJ5UG9pbnRzKFJhbmdlLlNUQVJUX1RPX1NUQVJULCB0ZXh0X3Jh
bmdlKSArCiI8L2xpPjxsaT5TVEFSVF9UT19FTkQgPSAiICsgcmFuZ2UuY29tcGFyZUJvdW5kYXJ5
UG9pbnRzKFJhbmdlLlNUQVJUX1RPX0VORCwgdGV4dF9yYW5nZSkgKwoiPC9saT48bGk+RU5EX1RP
X1NUQVJUID0gIiArIHJhbmdlLmNvbXBhcmVCb3VuZGFyeVBvaW50cyhSYW5nZS5FTkRfVE9fU1RB
UlQsIHRleHRfcmFuZ2UpICsKIjwvbGk+PGxpPkVORF9UT19FTkQgPSAiICsgcmFuZ2UuY29tcGFy
ZUJvdW5kYXJ5UG9pbnRzKFJhbmdlLkVORF9UT19FTkQsIHRleHRfcmFuZ2UpICsKIjwvbGk+PC91
bD4iKTsKCgogICAgaWYgKHJhbmdlLmNvbXBhcmVCb3VuZGFyeVBvaW50cyhSYW5nZS5TVEFSVF9U
T19TVEFSVCwgdGV4dF9yYW5nZSkgPT0gLTEpIHsKICAgICAgbG9nKCJzZWxlY3Rpb24gc3RhcnRz
IGJlZm9yZSB0ZXh0Iik7CiAgICAgIHJhbmdlLnNldFN0YXJ0QmVmb3JlKHRleHQpOwogICAgfQog
ICAgaWYgKHJhbmdlLmNvbXBhcmVCb3VuZGFyeVBvaW50cyhSYW5nZS5FTkRfVE9fRU5ELCB0ZXh0
X3JhbmdlKSA9PSAxKSB7CiAgICAgIGxvZygic2VsZWN0aW9uIGVuZHMgYWZ0ZXIgdGV4dCIpOwog
ICAgICByYW5nZS5zZXRFbmRBZnRlcih0ZXh0KTsKICAgIH0KICB9IGVsc2UgewogICAgcmV0dXJu
IG51bGw7CiAgfQogIHJldHVybiBzZWw7Cn0KZnVuY3Rpb24gb3V0cHV0U2VsZWN0ZWQodGV4dCkg
ewogIHZhciAkb3V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpOwogICRvdXQu
aW5uZXJIVE1MICs9ICI8YnIgLz5BZGp1c3RlZCBzZWxlY3Rpb24gPSAiICsgdGV4dDsKfQo8L3Nj
cmlwdD4KPGJvZHk+CjxoMz5EZW1vbnN0cmF0aW5nIGEgYnVnIGluIGNvbXBhcmVCb3VuZGFyeVBv
aW50czwvaDM+CjxkaXYgaWQ9J25vbnNlbGVjdGVkJz4KICA8cD5UaGlzIGlzIHNvbWUgdGV4dCB0
aGF0IHdvbid0IHNob3cgdXAuPC9wPgo8L2Rpdj4KPGRpdiBpZD0ndGV4dCc+CiAgPHA+SWYgeW91
IHNlbGVjdCB0aGlzIHRleHQsIGFuZCBjbGljayBiZWxvdywgaXQgd2lsbCBnZXQgcmVtZW1iZXJl
ZC48L3A+CiAgPHA+KFRoaXMgaW5jbHVkZXMgcGFydGlhbCBzZWxlY3Rpb25zLCB0b28uKTwvcD4K
PC9kaXY+CjxkaXYgaWQ9J25vbnNlbGVjdGVkJz4KICA8cD5UaGlzIHBhcnQgd29uJ3QsIGVpdGhl
ci48L3A+CjwvZGl2Pgo8aHIgLz4KPGRpdj48YSBocmVmPScjeCcgb25jbGljaz0ib3V0cHV0U2Vs
ZWN0ZWQoZ2V0U2VsZWN0ZWQoKSkiPkNsaWNrIGhlcmU8L2E+PC9kaXY+CjxkaXYgaWQ9J291dHB1
dCc+PC9kaXY+CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>23396</attachid>
            <date>2008-09-13 10:04:34 -0700</date>
            <delta_ts>2008-09-13 10:04:34 -0700</delta_ts>
            <desc>further reduced test case</desc>
            <filename>compareBoundaryPoints.html</filename>
            <type>text/html</type>
            <size>1728</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">PGJvZHk+CjxkaXYgaWQ9J3RleHQnPlNvbWUgdGV4dC48L2Rpdj4KPGhyIC8+CjxkaXYgaWQ9J291
dHB1dCc+PC9kaXY+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KZnVuY3Rpb24gbG9n
KHRleHQpIHsKICB2YXIgJG91dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTsK
ICAkb3V0LmlubmVySFRNTCArPSAiPGJyIC8+PGVtPkxvZzogIiArIHRleHQgKyAiPC9lbT4iOwp9
CgogICAgdmFyIHRleHQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dCIpOwoKICAgIHNv
dXJjZVJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKICAgIHNvdXJjZVJhbmdlLnNlbGVj
dE5vZGUodGV4dCk7CgogICAgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOwogICAgcmFu
Z2Uuc2V0U3RhcnQodGV4dC5maXJzdENoaWxkLCAxKTsKICAgIHJhbmdlLnNldEVuZCh0ZXh0LmZp
cnN0Q2hpbGQsIDIpOwoKCiAgICBsb2coIjx1bD4iICsgCiI8bGk+U1RBUlRfVE9fU1RBUlQgPSAi
ICsgcmFuZ2UuY29tcGFyZUJvdW5kYXJ5UG9pbnRzKFJhbmdlLlNUQVJUX1RPX1NUQVJULCBzb3Vy
Y2VSYW5nZSkgKwoiPC9saT48bGk+U1RBUlRfVE9fRU5EID0gIiArIHJhbmdlLmNvbXBhcmVCb3Vu
ZGFyeVBvaW50cyhSYW5nZS5TVEFSVF9UT19FTkQsIHNvdXJjZVJhbmdlKSArCiI8L2xpPjxsaT5F
TkRfVE9fU1RBUlQgPSAiICsgcmFuZ2UuY29tcGFyZUJvdW5kYXJ5UG9pbnRzKFJhbmdlLkVORF9U
T19TVEFSVCwgc291cmNlUmFuZ2UpICsKIjwvbGk+PGxpPkVORF9UT19FTkQgPSAiICsgcmFuZ2Uu
Y29tcGFyZUJvdW5kYXJ5UG9pbnRzKFJhbmdlLkVORF9UT19FTkQsIHNvdXJjZVJhbmdlKSArCiI8
L2xpPjwvdWw+Iik7Cgo8L3NjcmlwdD4KPCEtLSAKICBzaG9ydCAgICAgICAgICAgICAgY29tcGFy
ZUJvdW5kYXJ5UG9pbnRzKGluIHVuc2lnbmVkIHNob3J0IGhvdywgCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBSYW5nZSBzb3VyY2VSYW5nZSkKCi0xLCAwIG9y
IDEgZGVwZW5kaW5nIG9uIHdoZXRoZXIgdGhlIGNvcnJlc3BvbmRpbmcgYm91bmRhcnktcG9pbnQg
b2YgdGhlIFJhbmdlIGlzIApyZXNwZWN0aXZlbHkgYmVmb3JlLCBlcXVhbCB0bywgb3IgYWZ0ZXIg
dGhlIGNvcnJlc3BvbmRpbmcgYm91bmRhcnktcG9pbnQgb2Ygc291cmNlUmFuZ2UuIAoKRU5EX1RP
X0VORApDb21wYXJlIGVuZCBib3VuZGFyeS1wb2ludCBvZiBzb3VyY2VSYW5nZSB0byBlbmQgYm91
bmRhcnktcG9pbnQgb2YgUmFuZ2Ugb24gd2hpY2ggY29tcGFyZUJvdW5kYXJ5UG9pbnRzIGlzIGlu
dm9rZWQuCkVORF9UT19TVEFSVApDb21wYXJlIGVuZCBib3VuZGFyeS1wb2ludCBvZiBzb3VyY2VS
YW5nZSB0byBzdGFydCBib3VuZGFyeS1wb2ludCBvZiBSYW5nZSBvbiB3aGljaCBjb21wYXJlQm91
bmRhcnlQb2ludHMgaXMgaW52b2tlZC4KU1RBUlRfVE9fRU5ECkNvbXBhcmUgc3RhcnQgYm91bmRh
cnktcG9pbnQgb2Ygc291cmNlUmFuZ2UgdG8gZW5kIGJvdW5kYXJ5LXBvaW50IG9mIFJhbmdlIG9u
IHdoaWNoIGNvbXBhcmVCb3VuZGFyeVBvaW50cyBpcyBpbnZva2VkLgpTVEFSVF9UT19TVEFSVApD
b21wYXJlIHN0YXJ0IGJvdW5kYXJ5LXBvaW50IG9mIHNvdXJjZVJhbmdlIHRvIHN0YXJ0IGJvdW5k
YXJ5LXBvaW50IG9mIFJhbmdlIG9uIHdoaWNoIGNvbXBhcmVCb3VuZGFyeVBvaW50cyBpcyBpbnZv
a2VkLgoKLS0+CjwvYm9keT4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23411</attachid>
            <date>2008-09-14 09:32:44 -0700</date>
            <delta_ts>2008-09-14 19:17:02 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>20738r1_patch.txt</filename>
            <type>text/plain</type>
            <size>6806</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzNjQwMykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTYgQEAKKzIwMDgtMDktMTQgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEB3ZWJr
aXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisJCWh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDczOAorCQljb21wYXJlQm91bmRh
cnlQb2ludHMgZ2l2ZXMgaW5jb3JyZWN0IHJlc3VsdHMKKworICAgICAgICBUZXN0OiBmYXN0L2Rv
bS9SYW5nZS9jb21wYXJlQm91bmRhcnlQb2ludHMtMi5odG1sCisKKyAgICAgICAgKiBkb20vUmFu
Z2UuY3BwOiAoV2ViQ29yZTo6UmFuZ2U6OmNvbXBhcmVCb3VuZGFyeVBvaW50cyk6IENvcnJlY3Qg
bWVhbmluZ3Mgb2YgU1RBUlRfVE9fRU5ECisgICAgICAgIGFuZCBFTkRfVE9fU1RBUlQuCisgICAg
ICAgICogcGFnZS9ET01TZWxlY3Rpb24uY3BwOiAoV2ViQ29yZTo6RE9NU2VsZWN0aW9uOjphZGRS
YW5nZSk6IFVwZGF0ZWQgZm9yIHRoaXMgY2hhbmdlLgorCiAyMDA4LTA5LTEzICBKYW4gTWljaGFl
bCBBbG9uem8gIDxqbWFsb256b0B3ZWJraXQub3JnPgogCiAgICAgICAgIEd0ayBidWlsZCBmaXgs
IG5vdCByZXZpZXdlZC4KSW5kZXg6IFdlYkNvcmUvZG9tL1JhbmdlLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL2RvbS9SYW5nZS5jcHAJKHJldmlzaW9uIDM2MzY4KQorKysgV2ViQ29yZS9kb20v
UmFuZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MzAsMTQgKzQzMCwxNCBAQCBzaG9ydCBSYW5n
ZTo6Y29tcGFyZUJvdW5kYXJ5UG9pbnRzKENvbXBhCiAgICAgICAgICAgICByZXR1cm4gY29tcGFy
ZUJvdW5kYXJ5UG9pbnRzKG1fc3RhcnQuY29udGFpbmVyKCksIG1fc3RhcnQub2Zmc2V0KCksCiAg
ICAgICAgICAgICAgICAgc291cmNlUmFuZ2UtPm1fc3RhcnQuY29udGFpbmVyKCksIHNvdXJjZVJh
bmdlLT5tX3N0YXJ0Lm9mZnNldCgpKTsKICAgICAgICAgY2FzZSBTVEFSVF9UT19FTkQ6Ci0gICAg
ICAgICAgICByZXR1cm4gY29tcGFyZUJvdW5kYXJ5UG9pbnRzKG1fc3RhcnQuY29udGFpbmVyKCks
IG1fc3RhcnQub2Zmc2V0KCksCi0gICAgICAgICAgICAgICAgc291cmNlUmFuZ2UtPm1fZW5kLmNv
bnRhaW5lcigpLCBzb3VyY2VSYW5nZS0+bV9lbmQub2Zmc2V0KCkpOworICAgICAgICAgICAgcmV0
dXJuIGNvbXBhcmVCb3VuZGFyeVBvaW50cyhtX2VuZC5jb250YWluZXIoKSwgbV9lbmQub2Zmc2V0
KCksCisgICAgICAgICAgICAgICAgc291cmNlUmFuZ2UtPm1fc3RhcnQuY29udGFpbmVyKCksIHNv
dXJjZVJhbmdlLT5tX3N0YXJ0Lm9mZnNldCgpKTsKICAgICAgICAgY2FzZSBFTkRfVE9fRU5EOgog
ICAgICAgICAgICAgcmV0dXJuIGNvbXBhcmVCb3VuZGFyeVBvaW50cyhtX2VuZC5jb250YWluZXIo
KSwgbV9lbmQub2Zmc2V0KCksCiAgICAgICAgICAgICAgICAgc291cmNlUmFuZ2UtPm1fZW5kLmNv
bnRhaW5lcigpLCBzb3VyY2VSYW5nZS0+bV9lbmQub2Zmc2V0KCkpOwogICAgICAgICBjYXNlIEVO
RF9UT19TVEFSVDoKLSAgICAgICAgICAgIHJldHVybiBjb21wYXJlQm91bmRhcnlQb2ludHMobV9l
bmQuY29udGFpbmVyKCksIG1fZW5kLm9mZnNldCgpLAotICAgICAgICAgICAgICAgIHNvdXJjZVJh
bmdlLT5tX3N0YXJ0LmNvbnRhaW5lcigpLCBzb3VyY2VSYW5nZS0+bV9zdGFydC5vZmZzZXQoKSk7
CisgICAgICAgICAgICByZXR1cm4gY29tcGFyZUJvdW5kYXJ5UG9pbnRzKG1fc3RhcnQuY29udGFp
bmVyKCksIG1fc3RhcnQub2Zmc2V0KCksCisgICAgICAgICAgICAgICAgc291cmNlUmFuZ2UtPm1f
ZW5kLmNvbnRhaW5lcigpLCBzb3VyY2VSYW5nZS0+bV9lbmQub2Zmc2V0KCkpOwogICAgIH0KIAog
ICAgIGVjID0gU1lOVEFYX0VSUjsKSW5kZXg6IFdlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uY3BwCShyZXZpc2lvbiAz
NjM2OCkKKysrIFdlYkNvcmUvcGFnZS9ET01TZWxlY3Rpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0zMjcsNyArMzI3LDcgQEAgdm9pZCBET01TZWxlY3Rpb246OmFkZFJhbmdlKFJhbmdlKiByKQog
ICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwogICAgIGlmIChyLT5jb21wYXJlQm91bmRhcnlQb2lu
dHMoUmFuZ2U6OlNUQVJUX1RPX1NUQVJULCByYW5nZS5nZXQoKSwgZWMpID09IC0xKSB7CiAgICAg
ICAgIC8vIFdlIGRvbid0IHN1cHBvcnQgZGlzY29udGlndW91cyBzZWxlY3Rpb24uIFdlIGRvbid0
IGRvIGFueXRoaW5nIGlmIHIgYW5kIHJhbmdlIGRvbid0IGludGVyc2VjdC4KLSAgICAgICAgaWYg
KHItPmNvbXBhcmVCb3VuZGFyeVBvaW50cyhSYW5nZTo6RU5EX1RPX1NUQVJULCByYW5nZS5nZXQo
KSwgZWMpID4gLTEpIHsKKyAgICAgICAgaWYgKHItPmNvbXBhcmVCb3VuZGFyeVBvaW50cyhSYW5n
ZTo6U1RBUlRfVE9fRU5ELCByYW5nZS5nZXQoKSwgZWMpID4gLTEpIHsKICAgICAgICAgICAgIGlm
IChyLT5jb21wYXJlQm91bmRhcnlQb2ludHMoUmFuZ2U6OkVORF9UT19FTkQsIHJhbmdlLmdldCgp
LCBlYykgPT0gLTEpCiAgICAgICAgICAgICAgICAgLy8gVGhlIG9yaWdpbmFsIHJhbmdlIGFuZCBy
IGludGVyc2VjdC4KICAgICAgICAgICAgICAgICBzZWxlY3Rpb24tPnNldFNlbGVjdGlvbihTZWxl
Y3Rpb24oci0+c3RhcnRQb3NpdGlvbigpLCByYW5nZS0+ZW5kUG9zaXRpb24oKSwgRE9XTlNUUkVB
TSkpOwpAQCAtMzM3LDcgKzMzNyw3IEBAIHZvaWQgRE9NU2VsZWN0aW9uOjphZGRSYW5nZShSYW5n
ZSogcikKICAgICAgICAgfQogICAgIH0gZWxzZSB7CiAgICAgICAgIC8vIFdlIGRvbid0IHN1cHBv
cnQgZGlzY29udGlndW91cyBzZWxlY3Rpb24uIFdlIGRvbid0IGRvIGFueXRoaW5nIGlmIHIgYW5k
IHJhbmdlIGRvbid0IGludGVyc2VjdC4KLSAgICAgICAgaWYgKHItPmNvbXBhcmVCb3VuZGFyeVBv
aW50cyhSYW5nZTo6U1RBUlRfVE9fRU5ELCByYW5nZS5nZXQoKSwgZWMpIDwgMSkgeworICAgICAg
ICBpZiAoci0+Y29tcGFyZUJvdW5kYXJ5UG9pbnRzKFJhbmdlOjpFTkRfVE9fU1RBUlQsIHJhbmdl
LmdldCgpLCBlYykgPCAxKSB7CiAgICAgICAgICAgICBpZiAoci0+Y29tcGFyZUJvdW5kYXJ5UG9p
bnRzKFJhbmdlOjpFTkRfVE9fRU5ELCByYW5nZS5nZXQoKSwgZWMpID09IC0xKQogICAgICAgICAg
ICAgICAgIC8vIFRoZSBvcmlnaW5hbCByYW5nZSBjb250YWlucyByLgogICAgICAgICAgICAgICAg
IHNlbGVjdGlvbi0+c2V0U2VsZWN0aW9uKFNlbGVjdGlvbihyYW5nZS5nZXQoKSkpOwpJbmRleDog
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxv
ZwkocmV2aXNpb24gMzY0MDMpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwxMyBAQAorMjAwOC0wOS0xNCAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFw
QHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKwkJ
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNzM4CisJCWNvbXBhcmVC
b3VuZGFyeVBvaW50cyBnaXZlcyBpbmNvcnJlY3QgcmVzdWx0cworCisgICAgICAgICogZmFzdC9k
b20vUmFuZ2UvY29tcGFyZUJvdW5kYXJ5UG9pbnRzLTItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2RvbS9SYW5nZS9jb21wYXJlQm91bmRhcnlQb2ludHMtMi5odG1sOiBBZGRl
ZC4KKwogMjAwOC0wOS0xMyAgRGFuIEJlcm5zdGVpbiAgPG1pdHpAYXBwbGUuY29tPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9S
YW5nZS9jb21wYXJlQm91bmRhcnlQb2ludHMtMi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvZmFzdC9kb20vUmFuZ2UvY29tcGFyZUJvdW5kYXJ5UG9pbnRzLTItZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vUmFuZ2UvY29tcGFy
ZUJvdW5kYXJ5UG9pbnRzLTItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEw
IEBACitUZXN0IGNvbXBhcmVCb3VuZGFyeVBvaW50cyByZXN1bHRzIGluIGEgcGFydGljdWxhciBj
YXNlLCBzZWUgYnVnIDIwNzM4LgorCitTb21lIHRleHQuCisKK1NUQVJUX1RPX1NUQVJUID0gMQor
U1RBUlRfVE9fRU5EID0gMQorRU5EX1RPX1NUQVJUID0gLTEKK0VORF9UT19FTkQgPSAtMQorCitQ
QVNTCgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9jb21w
YXJlQm91bmRhcnlQb2ludHMtMi1leHBlY3RlZC50eHQKX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpOYW1lOiBzdm46bWlt
ZS10eXBlCiAgICsgdGV4dC9wbGFpbgpOYW1lOiBzdm46ZW9sLXN0eWxlCiAgICsgbmF0aXZlCgpJ
bmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vUmFuZ2UvY29tcGFyZUJvdW5kYXJ5UG9pbnRzLTIu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9jb21wYXJlQm91
bmRhcnlQb2ludHMtMi5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20v
UmFuZ2UvY29tcGFyZUJvdW5kYXJ5UG9pbnRzLTIuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSw0MCBAQAorPGJvZHk+Cis8cD5UZXN0IGNvbXBhcmVCb3VuZGFyeVBvaW50cyByZXN1bHRzIGlu
IGEgcGFydGljdWxhciBjYXNlLCBzZWUKKzxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMDczOCI+YnVnIDIwNzM4PC9hPi48L3A+Cis8ZGl2IGlkPSd0ZXh0
Jz5Tb21lIHRleHQuPC9kaXY+Cis8aHIgLz4KKzxkaXYgaWQ9J291dHB1dCc+PC9kaXY+Cis8c2Ny
aXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgZnVuY3Rpb24gbG9nKHRleHQpIHsKKyAg
ICAgIHZhciAkb3V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpOworICAgICAg
JG91dC5pbm5lckhUTUwgKz0gIjxiciAvPiIgKyB0ZXh0OworICAgIH0KKyAgICAKKyAgICBpZiAo
d2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICB3aW5kb3cubGF5b3V0VGVzdENv
bnRyb2xsZXIuZHVtcEFzVGV4dCgpOworCisKKyAgICB2YXIgdGV4dCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJ0ZXh0Iik7CisKKyAgICBzb3VyY2VSYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJh
bmdlKCk7CisgICAgc291cmNlUmFuZ2Uuc2VsZWN0Tm9kZSh0ZXh0KTsKKworICAgIHJhbmdlID0g
ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKKyAgICByYW5nZS5zZXRTdGFydCh0ZXh0LmZpcnN0Q2hp
bGQsIDEpOworICAgIHJhbmdlLnNldEVuZCh0ZXh0LmZpcnN0Q2hpbGQsIDIpOworCisKKyAgICBs
b2coIjx1bD4iICsgCisiPGxpPlNUQVJUX1RPX1NUQVJUID0gIiArIHJhbmdlLmNvbXBhcmVCb3Vu
ZGFyeVBvaW50cyhSYW5nZS5TVEFSVF9UT19TVEFSVCwgc291cmNlUmFuZ2UpICsKKyI8L2xpPjxs
aT5TVEFSVF9UT19FTkQgPSAiICsgcmFuZ2UuY29tcGFyZUJvdW5kYXJ5UG9pbnRzKFJhbmdlLlNU
QVJUX1RPX0VORCwgc291cmNlUmFuZ2UpICsKKyI8L2xpPjxsaT5FTkRfVE9fU1RBUlQgPSAiICsg
cmFuZ2UuY29tcGFyZUJvdW5kYXJ5UG9pbnRzKFJhbmdlLkVORF9UT19TVEFSVCwgc291cmNlUmFu
Z2UpICsKKyI8L2xpPjxsaT5FTkRfVE9fRU5EID0gIiArIHJhbmdlLmNvbXBhcmVCb3VuZGFyeVBv
aW50cyhSYW5nZS5FTkRfVE9fRU5ELCBzb3VyY2VSYW5nZSkgKworIjwvbGk+PC91bD4iKTsKKwor
ICAgIGxvZygocmFuZ2UuY29tcGFyZUJvdW5kYXJ5UG9pbnRzKFJhbmdlLlNUQVJUX1RPX1NUQVJU
LCBzb3VyY2VSYW5nZSkgPT0gMQorICAgICAgICAmJiByYW5nZS5jb21wYXJlQm91bmRhcnlQb2lu
dHMoUmFuZ2UuU1RBUlRfVE9fRU5ELCBzb3VyY2VSYW5nZSkgPT0gMQorICAgICAgICAmJiByYW5n
ZS5jb21wYXJlQm91bmRhcnlQb2ludHMoUmFuZ2UuRU5EX1RPX1NUQVJULCBzb3VyY2VSYW5nZSkg
PT0gLTEKKyAgICAgICAgJiYgcmFuZ2UuY29tcGFyZUJvdW5kYXJ5UG9pbnRzKFJhbmdlLkVORF9U
T19FTkQsIHNvdXJjZVJhbmdlKSA9PSAtMSkgPyAiUEFTUyIgOiAiRkFJTCIpOworCis8L3Njcmlw
dD4KKzwvYm9keT4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2Zhc3QvZG9tL1Jh
bmdlL2NvbXBhcmVCb3VuZGFyeVBvaW50cy0yLmh0bWwKX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpOYW1lOiBzdm46bWlt
ZS10eXBlCiAgICsgdGV4dC9odG1sCgo=
</data>
<flag name="review"
          id="10444"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>