<?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>41403</bug_id>
          
          <creation_ts>2010-06-30 04:49:30 -0700</creation_ts>
          <short_desc>InsertListCommand&apos;s modifyRange and doApply should be merged</short_desc>
          <delta_ts>2010-09-24 13:58:05 -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>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>36430</dependson>
          <blocked>32422</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>enrica</cc>
    
    <cc>eric</cc>
    
    <cc>justin.garcia</cc>
    
    <cc>ojan</cc>
    
    <cc>tkent</cc>
    
    <cc>tony</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>244728</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-06-30 04:49:30 -0700</bug_when>
    <thetext>InsertListCommand&apos;s doApply mainly implements insertion and removal of lists in single paragraph. To handle a selection with multiple paragraphs, doApply calls modifyRange, which iterates over paragraphs in the selection and calls doApply on each paragraph.  doApply calls modifyRange whenever the selection is a range object and returns except when the starting and the ending of the selection is in the same paragraph in which case modifyRange bails out by returning false and doApply proceed with its list insertion &amp; removal.  However, this peculiar structure makes the code harder to read and it has been an obstacle in debugging the bug 32422.

I propose to merge InsertListCommand&apos;s modifyRange with doApply and isolate the logic for single paragraph case into a separate method.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246372</commentid>
    <comment_count>1</comment_count>
      <attachid>60463</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-07-03 18:06:09 -0700</bug_when>
    <thetext>Created attachment 60463
merges modifyRange and doApply and adds doApplyForSingleParagraph

I&apos;m not happy about the fact doApplyForSingleParagraph relies on the selection but just passing the starting/ending of paragraph breaks some tests because moveParagraph makes some visible positions invalid by detaching it from the document.  So that should be done in a separate patch by replacing moveParagraph by moveParagraphWithClones.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>249689</commentid>
    <comment_count>2</comment_count>
      <attachid>60463</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-07-11 22:45:11 -0700</bug_when>
    <thetext>Comment on attachment 60463
merges modifyRange and doApply and adds doApplyForSingleParagraph

Looks OK.
Please make sure all layout tests pass with this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>250414</commentid>
    <comment_count>3</comment_count>
      <attachid>60463</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-07-13 03:12:09 -0700</bug_when>
    <thetext>Comment on attachment 60463
merges modifyRange and doApply and adds doApplyForSingleParagraph

Clearing flags on attachment: 60463

Committed r63189: &lt;http://trac.webkit.org/changeset/63189&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>250415</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-07-13 03:12:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284673</commentid>
    <comment_count>5</comment_count>
      <attachid>68740</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-09-24 13:57:21 -0700</bug_when>
    <thetext>Created attachment 68740
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284674</commentid>
    <comment_count>6</comment_count>
      <attachid>68740</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-09-24 13:58:05 -0700</bug_when>
    <thetext>Comment on attachment 68740
Patch

Oops, wrong bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60463</attachid>
            <date>2010-07-03 18:06:09 -0700</date>
            <delta_ts>2010-09-24 13:57:17 -0700</delta_ts>
            <desc>merges modifyRange and doApply and adds doApplyForSingleParagraph</desc>
            <filename>fix41403</filename>
            <type>text/plain</type>
            <size>8387</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MjQ0OCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjEgQEAKKzIwMTAtMDctMDMgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5z
ZXJ0TGlzdENvbW1hbmQncyBtb2RpZnlSYW5nZSBhbmQgZG9BcHBseSBzaG91bGQgYmUgbWVyZ2Vk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTQwMwor
CisgICAgICAgIElzb2xhdGVkIHRoZSBjb2RlIGluIGRvQXBwbHkgdG8gaW5zZXJ0IGFuZCByZW1v
dmUgbGlzdHMgZm9yIHNpbmdsZSBwYXJhZ3JhcGggaW50byBkb0FwcGx5Rm9yU2luZ2xlUGFyYWdy
YXBoLgorICAgICAgICBNZXJnZWQgdGhlIGNvZGUgaW4gbW9kaWZ5UmFuZ2UgaW50byBkb0FwcGx5
IGFuZCBjbGVhbmVkIHVwLgorCisgICAgICAgIE5vIHRlc3QgaXMgYWRkZWQgc2luY2UgdGhpcyBp
cyBhIGNsZWFuIHVwLgorCisgICAgICAgICogZWRpdGluZy9JbnNlcnRMaXN0Q29tbWFuZC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpJbnNlcnRMaXN0Q29tbWFuZDo6SW5zZXJ0TGlzdENvbW1hbmQp
OiBtX2ZvcmNlQ3JlYXRlTGlzdCBpcyBubyBsb25nZXIgaW5pdGlhbGl6ZWQKKyAgICAgICAgKFdl
YkNvcmU6Okluc2VydExpc3RDb21tYW5kOjpkb0FwcGx5KTogSXNvbGF0ZWQgdGhlIGNvZGUgdG8g
aW5zZXJ0L3JlbW92ZSBsaXN0cyBpbiBkb0FwcGx5Rm9yU2luZ2xlUGFyYWdyYXBoCisgICAgICAg
IChXZWJDb3JlOjpJbnNlcnRMaXN0Q29tbWFuZDo6ZG9BcHBseUZvclNpbmdsZVBhcmFncmFwaCk6
IEluc2VydC9yZW1vdmUgbGlzdHMgZm9yIHNpbmdsZSBwYXJhZ3JhcGgKKyAgICAgICAgKiBlZGl0
aW5nL0luc2VydExpc3RDb21tYW5kLmg6IEFkZGVkIGRvQXBwbHlGb3JTaW5nbGVQYXJhZ3JhcGgg
YW5kIHJlbW92ZWQgbV9mb3JjZUNyZWF0ZUxpc3QKKwogMjAxMC0wNy0wMyAgWGFuIExvcGV6ICA8
eGxvcGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgSW5jbHVkZSBEZXJpdmVkU291cmNlcy9XZWJD
b3JlIGJlZm9yZSBEZXJpdmVkU291cmNlcy8KSW5kZXg6IFdlYkNvcmUvZWRpdGluZy9JbnNlcnRM
aXN0Q29tbWFuZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9lZGl0aW5nL0luc2VydExpc3RD
b21tYW5kLmNwcAkocmV2aXNpb24gNjA4NzcpCisrKyBXZWJDb3JlL2VkaXRpbmcvSW5zZXJ0TGlz
dENvbW1hbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NSw1NSArNTUsMTAgQEAgSFRNTEVsZW1l
bnQqIEluc2VydExpc3RDb21tYW5kOjpmaXhPcnBoYQogfQogCiBJbnNlcnRMaXN0Q29tbWFuZDo6
SW5zZXJ0TGlzdENvbW1hbmQoRG9jdW1lbnQqIGRvY3VtZW50LCBUeXBlIHR5cGUpIAotICAgIDog
Q29tcG9zaXRlRWRpdENvbW1hbmQoZG9jdW1lbnQpLCBtX3R5cGUodHlwZSksIG1fZm9yY2VDcmVh
dGVMaXN0KGZhbHNlKQorICAgIDogQ29tcG9zaXRlRWRpdENvbW1hbmQoZG9jdW1lbnQpLCBtX3R5
cGUodHlwZSkKIHsKIH0KIAotYm9vbCBJbnNlcnRMaXN0Q29tbWFuZDo6bW9kaWZ5UmFuZ2UoKQot
ewotICAgIFZpc2libGVTZWxlY3Rpb24gc2VsZWN0aW9uID0gc2VsZWN0aW9uRm9yUGFyYWdyYXBo
SXRlcmF0aW9uKGVuZGluZ1NlbGVjdGlvbigpKTsKLSAgICBBU1NFUlQoc2VsZWN0aW9uLmlzUmFu
Z2UoKSk7Ci0gICAgVmlzaWJsZVBvc2l0aW9uIHN0YXJ0T2ZTZWxlY3Rpb24gPSBzZWxlY3Rpb24u
dmlzaWJsZVN0YXJ0KCk7Ci0gICAgVmlzaWJsZVBvc2l0aW9uIGVuZE9mU2VsZWN0aW9uID0gc2Vs
ZWN0aW9uLnZpc2libGVFbmQoKTsKLSAgICBWaXNpYmxlUG9zaXRpb24gc3RhcnRPZkxhc3RQYXJh
Z3JhcGggPSBzdGFydE9mUGFyYWdyYXBoKGVuZE9mU2VsZWN0aW9uKTsKLSAgICAKLSAgICBpZiAo
c3RhcnRPZlBhcmFncmFwaChzdGFydE9mU2VsZWN0aW9uKSA9PSBzdGFydE9mTGFzdFBhcmFncmFw
aCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgTm9kZSogc3RhcnRMaXN0ID0gZW5jbG9z
aW5nTGlzdChzdGFydE9mU2VsZWN0aW9uLmRlZXBFcXVpdmFsZW50KCkubm9kZSgpKTsKLSAgICBO
b2RlKiBlbmRMaXN0ID0gZW5jbG9zaW5nTGlzdChlbmRPZlNlbGVjdGlvbi5kZWVwRXF1aXZhbGVu
dCgpLm5vZGUoKSk7Ci0gICAgaWYgKCFzdGFydExpc3QgfHwgc3RhcnRMaXN0ICE9IGVuZExpc3Qp
Ci0gICAgICAgIG1fZm9yY2VDcmVhdGVMaXN0ID0gdHJ1ZTsKLQotICAgIHNldEVuZGluZ1NlbGVj
dGlvbihzdGFydE9mU2VsZWN0aW9uKTsKLSAgICBkb0FwcGx5KCk7Ci0gICAgLy8gRmV0Y2ggdGhl
IHN0YXJ0IG9mIHRoZSBzZWxlY3Rpb24gYWZ0ZXIgbW92aW5nIHRoZSBmaXJzdCBwYXJhZ3JhcGgs
Ci0gICAgLy8gYmVjYXVzZSBtb3ZpbmcgdGhlIHBhcmFncmFwaCB3aWxsIGludmFsaWRhdGUgdGhl
IG9yaWdpbmFsIHN0YXJ0LiAgCi0gICAgLy8gV2UnbGwgdXNlIHRoZSBuZXcgc3RhcnQgdG8gcmVz
dG9yZSB0aGUgb3JpZ2luYWwgc2VsZWN0aW9uIGFmdGVyIAotICAgIC8vIHdlIG1vZGlmaWVkIGFs
bCBzZWxlY3RlZCBwYXJhZ3JhcGhzLgotICAgIHN0YXJ0T2ZTZWxlY3Rpb24gPSBlbmRpbmdTZWxl
Y3Rpb24oKS52aXNpYmxlU3RhcnQoKTsKLSAgICBWaXNpYmxlUG9zaXRpb24gc3RhcnRPZkN1cnJl
bnRQYXJhZ3JhcGggPSBzdGFydE9mTmV4dFBhcmFncmFwaChzdGFydE9mU2VsZWN0aW9uKTsKLSAg
ICB3aGlsZSAoc3RhcnRPZkN1cnJlbnRQYXJhZ3JhcGggIT0gc3RhcnRPZkxhc3RQYXJhZ3JhcGgp
IHsKLSAgICAgICAgLy8gZG9BcHBseSgpIG1heSBvcGVyYXRlIG9uIGFuZCByZW1vdmUgdGhlIGxh
c3QgcGFyYWdyYXBoIG9mIHRoZSBzZWxlY3Rpb24gZnJvbSB0aGUgZG9jdW1lbnQgCi0gICAgICAg
IC8vIGlmIGl0J3MgaW4gdGhlIHNhbWUgbGlzdCBpdGVtIGFzIHN0YXJ0T2ZDdXJyZW50UGFyYWdy
YXBoLiAgUmV0dXJuIGVhcmx5IHRvIGF2b2lkIGFuIAotICAgICAgICAvLyBpbmZpbml0ZSBsb29w
IGFuZCBiZWNhdXNlIHRoZXJlIGlzIG5vIG1vcmUgd29yayB0byBiZSBkb25lLgotICAgICAgICAv
LyBGSVhNRSg8cmRhcjovL3Byb2JsZW0vNTk4Mzk3ND4pOiBUaGUgZW5kaW5nU2VsZWN0aW9uKCkg
bWF5IGJlIGluY29ycmVjdCBoZXJlLiAgQ29tcHV0ZSAKLSAgICAgICAgLy8gdGhlIG5ldyBsb2Nh
dGlvbiBvZiBlbmRPZlNlbGVjdGlvbiBhbmQgdXNlIGl0IGFzIHRoZSBlbmQgb2YgdGhlIG5ldyBz
ZWxlY3Rpb24uCi0gICAgICAgIGlmICghc3RhcnRPZkxhc3RQYXJhZ3JhcGguZGVlcEVxdWl2YWxl
bnQoKS5ub2RlKCktPmluRG9jdW1lbnQoKSkKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAg
ICAgICBzZXRFbmRpbmdTZWxlY3Rpb24oc3RhcnRPZkN1cnJlbnRQYXJhZ3JhcGgpOwotICAgICAg
ICBkb0FwcGx5KCk7Ci0gICAgICAgIHN0YXJ0T2ZDdXJyZW50UGFyYWdyYXBoID0gc3RhcnRPZk5l
eHRQYXJhZ3JhcGgoZW5kaW5nU2VsZWN0aW9uKCkudmlzaWJsZVN0YXJ0KCkpOwotICAgIH0KLSAg
ICBzZXRFbmRpbmdTZWxlY3Rpb24oZW5kT2ZTZWxlY3Rpb24pOwotICAgIGRvQXBwbHkoKTsKLSAg
ICAvLyBGZXRjaCB0aGUgZW5kIG9mIHRoZSBzZWxlY3Rpb24sIGZvciB0aGUgcmVhc29uIG1lbnRp
b25lZCBhYm92ZS4KLSAgICBlbmRPZlNlbGVjdGlvbiA9IGVuZGluZ1NlbGVjdGlvbigpLnZpc2li
bGVFbmQoKTsKLSAgICBzZXRFbmRpbmdTZWxlY3Rpb24oVmlzaWJsZVNlbGVjdGlvbihzdGFydE9m
U2VsZWN0aW9uLCBlbmRPZlNlbGVjdGlvbikpOwotICAgIG1fZm9yY2VDcmVhdGVMaXN0ID0gZmFs
c2U7Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KIHZvaWQgSW5zZXJ0TGlzdENvbW1hbmQ6OmRvQXBw
bHkoKQogewogICAgIGlmIChlbmRpbmdTZWxlY3Rpb24oKS5pc05vbmUoKSkKQEAgLTEyNSw5ICs4
MCw1MyBAQCB2b2lkIEluc2VydExpc3RDb21tYW5kOjpkb0FwcGx5KCkKICAgICBpZiAodmlzaWJs
ZUVuZCAhPSB2aXNpYmxlU3RhcnQgJiYgaXNTdGFydE9mUGFyYWdyYXBoKHZpc2libGVFbmQpKQog
ICAgICAgICBzZXRFbmRpbmdTZWxlY3Rpb24oVmlzaWJsZVNlbGVjdGlvbih2aXNpYmxlU3RhcnQs
IHZpc2libGVFbmQucHJldmlvdXModHJ1ZSkpKTsKIAotICAgIGlmIChlbmRpbmdTZWxlY3Rpb24o
KS5pc1JhbmdlKCkgJiYgbW9kaWZ5UmFuZ2UoKSkKLSAgICAgICAgcmV0dXJuOwotICAgIAorICAg
IGlmIChlbmRpbmdTZWxlY3Rpb24oKS5pc1JhbmdlKCkpIHsKKyAgICAgICAgVmlzaWJsZVNlbGVj
dGlvbiBzZWxlY3Rpb24gPSBzZWxlY3Rpb25Gb3JQYXJhZ3JhcGhJdGVyYXRpb24oZW5kaW5nU2Vs
ZWN0aW9uKCkpOworICAgICAgICBBU1NFUlQoc2VsZWN0aW9uLmlzUmFuZ2UoKSk7CisgICAgICAg
IFZpc2libGVQb3NpdGlvbiBzdGFydE9mU2VsZWN0aW9uID0gc2VsZWN0aW9uLnZpc2libGVTdGFy
dCgpOworICAgICAgICBWaXNpYmxlUG9zaXRpb24gZW5kT2ZTZWxlY3Rpb24gPSBzZWxlY3Rpb24u
dmlzaWJsZUVuZCgpOworICAgICAgICBWaXNpYmxlUG9zaXRpb24gc3RhcnRPZkxhc3RQYXJhZ3Jh
cGggPSBzdGFydE9mUGFyYWdyYXBoKGVuZE9mU2VsZWN0aW9uKTsKKworICAgICAgICBpZiAoc3Rh
cnRPZlBhcmFncmFwaChzdGFydE9mU2VsZWN0aW9uKSAhPSBzdGFydE9mTGFzdFBhcmFncmFwaCkg
eworICAgICAgICAgICAgTm9kZSogc3RhcnRMaXN0ID0gZW5jbG9zaW5nTGlzdChzdGFydE9mU2Vs
ZWN0aW9uLmRlZXBFcXVpdmFsZW50KCkubm9kZSgpKTsKKyAgICAgICAgICAgIE5vZGUqIGVuZExp
c3QgPSBlbmNsb3NpbmdMaXN0KGVuZE9mU2VsZWN0aW9uLmRlZXBFcXVpdmFsZW50KCkubm9kZSgp
KTsKKyAgICAgICAgICAgIGJvb2wgZm9yY2VDcmVhdGVMaXN0ID0gIXN0YXJ0TGlzdCB8fCBzdGFy
dExpc3QgIT0gZW5kTGlzdDsKKworICAgICAgICAgICAgVmlzaWJsZVBvc2l0aW9uIHN0YXJ0T2ZD
dXJyZW50UGFyYWdyYXBoID0gc3RhcnRPZlNlbGVjdGlvbjsKKyAgICAgICAgICAgIHdoaWxlIChz
dGFydE9mQ3VycmVudFBhcmFncmFwaCAhPSBzdGFydE9mTGFzdFBhcmFncmFwaCkgeworICAgICAg
ICAgICAgICAgIC8vIGRvQXBwbHkoKSBtYXkgb3BlcmF0ZSBvbiBhbmQgcmVtb3ZlIHRoZSBsYXN0
IHBhcmFncmFwaCBvZiB0aGUgc2VsZWN0aW9uIGZyb20gdGhlIGRvY3VtZW50IAorICAgICAgICAg
ICAgICAgIC8vIGlmIGl0J3MgaW4gdGhlIHNhbWUgbGlzdCBpdGVtIGFzIHN0YXJ0T2ZDdXJyZW50
UGFyYWdyYXBoLiAgUmV0dXJuIGVhcmx5IHRvIGF2b2lkIGFuIAorICAgICAgICAgICAgICAgIC8v
IGluZmluaXRlIGxvb3AgYW5kIGJlY2F1c2UgdGhlcmUgaXMgbm8gbW9yZSB3b3JrIHRvIGJlIGRv
bmUuCisgICAgICAgICAgICAgICAgLy8gRklYTUUoPHJkYXI6Ly9wcm9ibGVtLzU5ODM5NzQ+KTog
VGhlIGVuZGluZ1NlbGVjdGlvbigpIG1heSBiZSBpbmNvcnJlY3QgaGVyZS4gIENvbXB1dGUgCisg
ICAgICAgICAgICAgICAgLy8gdGhlIG5ldyBsb2NhdGlvbiBvZiBlbmRPZlNlbGVjdGlvbiBhbmQg
dXNlIGl0IGFzIHRoZSBlbmQgb2YgdGhlIG5ldyBzZWxlY3Rpb24uCisgICAgICAgICAgICAgICAg
aWYgKCFzdGFydE9mTGFzdFBhcmFncmFwaC5kZWVwRXF1aXZhbGVudCgpLm5vZGUoKS0+aW5Eb2N1
bWVudCgpKQorICAgICAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICAgICAgc2V0
RW5kaW5nU2VsZWN0aW9uKHN0YXJ0T2ZDdXJyZW50UGFyYWdyYXBoKTsKKyAgICAgICAgICAgICAg
ICBkb0FwcGx5Rm9yU2luZ2xlUGFyYWdyYXBoKGZvcmNlQ3JlYXRlTGlzdCk7CisKKyAgICAgICAg
ICAgICAgICAvLyBGZXRjaCB0aGUgc3RhcnQgb2YgdGhlIHNlbGVjdGlvbiBhZnRlciBtb3Zpbmcg
dGhlIGZpcnN0IHBhcmFncmFwaCwKKyAgICAgICAgICAgICAgICAvLyBiZWNhdXNlIG1vdmluZyB0
aGUgcGFyYWdyYXBoIHdpbGwgaW52YWxpZGF0ZSB0aGUgb3JpZ2luYWwgc3RhcnQuICAKKyAgICAg
ICAgICAgICAgICAvLyBXZSdsbCB1c2UgdGhlIG5ldyBzdGFydCB0byByZXN0b3JlIHRoZSBvcmln
aW5hbCBzZWxlY3Rpb24gYWZ0ZXIgCisgICAgICAgICAgICAgICAgLy8gd2UgbW9kaWZpZWQgYWxs
IHNlbGVjdGVkIHBhcmFncmFwaHMuCisgICAgICAgICAgICAgICAgaWYgKHN0YXJ0T2ZDdXJyZW50
UGFyYWdyYXBoID09IHN0YXJ0T2ZTZWxlY3Rpb24pCisgICAgICAgICAgICAgICAgICAgIHN0YXJ0
T2ZTZWxlY3Rpb24gPSBlbmRpbmdTZWxlY3Rpb24oKS52aXNpYmxlU3RhcnQoKTsKKworICAgICAg
ICAgICAgICAgIHN0YXJ0T2ZDdXJyZW50UGFyYWdyYXBoID0gc3RhcnRPZk5leHRQYXJhZ3JhcGgo
ZW5kaW5nU2VsZWN0aW9uKCkudmlzaWJsZVN0YXJ0KCkpOworICAgICAgICAgICAgfQorICAgICAg
ICAgICAgc2V0RW5kaW5nU2VsZWN0aW9uKGVuZE9mU2VsZWN0aW9uKTsKKyAgICAgICAgICAgIGRv
QXBwbHlGb3JTaW5nbGVQYXJhZ3JhcGgoZm9yY2VDcmVhdGVMaXN0KTsKKyAgICAgICAgICAgIC8v
IEZldGNoIHRoZSBlbmQgb2YgdGhlIHNlbGVjdGlvbiwgZm9yIHRoZSByZWFzb24gbWVudGlvbmVk
IGFib3ZlLgorICAgICAgICAgICAgZW5kT2ZTZWxlY3Rpb24gPSBlbmRpbmdTZWxlY3Rpb24oKS52
aXNpYmxlRW5kKCk7CisgICAgICAgICAgICBzZXRFbmRpbmdTZWxlY3Rpb24oVmlzaWJsZVNlbGVj
dGlvbihzdGFydE9mU2VsZWN0aW9uLCBlbmRPZlNlbGVjdGlvbikpOworICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICB9CisgICAgfQorCisgICAgZG9BcHBseUZvclNpbmdsZVBhcmFncmFwaChm
YWxzZSk7Cit9CisKK3ZvaWQgSW5zZXJ0TGlzdENvbW1hbmQ6OmRvQXBwbHlGb3JTaW5nbGVQYXJh
Z3JhcGgoYm9vbCBmb3JjZUNyZWF0ZUxpc3QpCit7CiAgICAgLy8gRklYTUU6IFRoaXMgd2lsbCBw
cm9kdWNlIHVuZXhwZWN0ZWQgcmVzdWx0cyBmb3IgYSBzZWxlY3Rpb24gdGhhdCBzdGFydHMganVz
dCBiZWZvcmUgYQogICAgIC8vIHRhYmxlIGFuZCBlbmRzIGluc2lkZSB0aGUgZmlyc3QgY2VsbCwg
c2VsZWN0aW9uRm9yUGFyYWdyYXBoSXRlcmF0aW9uIHNob3VsZCBwcm9iYWJseQogICAgIC8vIGJl
IHJlbmFtZWQgYW5kIGRlcGxveWVkIGluc2lkZSBzZXRFbmRpbmdTZWxlY3Rpb24oKS4KQEAgLTE0
Nyw3ICsxNDYsNyBAQCB2b2lkIEluc2VydExpc3RDb21tYW5kOjpkb0FwcGx5KCkKICAgICAgICAg
dW5saXN0aWZ5UGFyYWdyYXBoKGVuZGluZ1NlbGVjdGlvbigpLnZpc2libGVTdGFydCgpLCBsaXN0
Tm9kZSwgbGlzdENoaWxkTm9kZSk7CiAgICAgfQogCi0gICAgaWYgKCFsaXN0Q2hpbGROb2RlIHx8
IHN3aXRjaExpc3RUeXBlIHx8IG1fZm9yY2VDcmVhdGVMaXN0KQorICAgIGlmICghbGlzdENoaWxk
Tm9kZSB8fCBzd2l0Y2hMaXN0VHlwZSB8fCBmb3JjZUNyZWF0ZUxpc3QpCiAgICAgICAgIG1fbGlz
dEVsZW1lbnQgPSBsaXN0aWZ5UGFyYWdyYXBoKGVuZGluZ1NlbGVjdGlvbigpLnZpc2libGVTdGFy
dCgpLCBsaXN0VGFnKTsKIH0KIApJbmRleDogV2ViQ29yZS9lZGl0aW5nL0luc2VydExpc3RDb21t
YW5kLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9lZGl0aW5nL0luc2VydExpc3RDb21tYW5kLmgJ
KHJldmlzaW9uIDYwODc3KQorKysgV2ViQ29yZS9lZGl0aW5nL0luc2VydExpc3RDb21tYW5kLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTUzLDExICs1MywxMSBAQCBwcml2YXRlOgogCiAgICAgSFRNTEVs
ZW1lbnQqIGZpeE9ycGhhbmVkTGlzdENoaWxkKE5vZGUqKTsKICAgICBib29sIG1vZGlmeVJhbmdl
KCk7CisgICAgdm9pZCBkb0FwcGx5Rm9yU2luZ2xlUGFyYWdyYXBoKGJvb2wgZm9yY2VDcmVhdGVM
aXN0KTsKICAgICB2b2lkIHVubGlzdGlmeVBhcmFncmFwaChjb25zdCBWaXNpYmxlUG9zaXRpb24m
IG9yaWdpbmFsU3RhcnQsIEhUTUxFbGVtZW50KiBsaXN0Tm9kZSwgTm9kZSogbGlzdENoaWxkTm9k
ZSk7CiAgICAgUGFzc1JlZlB0cjxIVE1MRWxlbWVudD4gbGlzdGlmeVBhcmFncmFwaChjb25zdCBW
aXNpYmxlUG9zaXRpb24mIG9yaWdpbmFsU3RhcnQsIGNvbnN0IFF1YWxpZmllZE5hbWUmIGxpc3RU
YWcpOwogICAgIFJlZlB0cjxIVE1MRWxlbWVudD4gbV9saXN0RWxlbWVudDsKICAgICBUeXBlIG1f
dHlwZTsKLSAgICBib29sIG1fZm9yY2VDcmVhdGVMaXN0OwogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>68740</attachid>
            <date>2010-09-24 13:57:21 -0700</date>
            <delta_ts>2010-09-24 13:58:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-41403-20100924135720.patch</filename>
            <type>text/plain</type>
            <size>6023</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2ODI4NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjAgQEAKKzIwMTAtMDktMjQgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRm9y
bWF0QmxvY2tDb21tYW5kJ3MgbW9kaWZ5UmFuZ2UgYW5kIGRvQXBwbHkgc2hvdWxkIGJlIG1lcmdl
ZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDY1MDQK
KworICAgICAgICBJc29sYXRlZCB0aGUgY29kZSBpbiBkb0FwcGx5IHRvIGluc2VydCBhbmQgcmVt
b3ZlIGxpc3RzIGZvciBzaW5nbGUgcGFyYWdyYXBoIGludG8gZG9BcHBseUZvclNpbmdsZVBhcmFn
cmFwaC4KKyAgICAgICAgTWVyZ2VkIHRoZSBjb2RlIGluIG1vZGlmeVJhbmdlIGludG8gZG9BcHBs
eSBhbmQgY2xlYW5lZCB1cC4KKworICAgICAgICBObyBuZXcgdGVzdHMgYXJlIGFkZGVkIHNpbmNl
IHRoaXMgaXMgYSBjbGVhbnVwLgorCisgICAgICAgICogZWRpdGluZy9Gb3JtYXRCbG9ja0NvbW1h
bmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Rm9ybWF0QmxvY2tDb21tYW5kOjpkb0FwcGx5KTog
TWVyZ2VkIHdpdGggbW9kaWZ5UmFuZ2U7IGNhbGxzIGRvQXBwbHlGb3JTaW5nbGVQYXJhZ3JhcGgu
CisgICAgICAgIChXZWJDb3JlOjpGb3JtYXRCbG9ja0NvbW1hbmQ6OmRvQXBwbHlGb3JTaW5nbGVQ
YXJhZ3JhcGgpOiBBZGRlZC4KKyAgICAgICAgKiBlZGl0aW5nL0Zvcm1hdEJsb2NrQ29tbWFuZC5o
OgorCiAyMDEwLTA5LTI0ICBEYXZpZCBIeWF0dCAgPGh5YXR0QGFwcGxlLmNvbT4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpJbmRleDogV2ViQ29yZS9lZGl0aW5nL0Zvcm1hdEJs
b2NrQ29tbWFuZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9lZGl0aW5nL0Zvcm1hdEJsb2Nr
Q29tbWFuZC5jcHAJKHJldmlzaW9uIDY4MjcyKQorKysgV2ViQ29yZS9lZGl0aW5nL0Zvcm1hdEJs
b2NrQ29tbWFuZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQxLDMzICs0MSw2IEBAIEZvcm1hdEJs
b2NrQ29tbWFuZDo6Rm9ybWF0QmxvY2tDb21tYW5kKEQKIHsKIH0KIAotYm9vbCBGb3JtYXRCbG9j
a0NvbW1hbmQ6Om1vZGlmeVJhbmdlKCkKLXsKLSAgICBBU1NFUlQoZW5kaW5nU2VsZWN0aW9uKCku
aXNSYW5nZSgpKTsKLSAgICBWaXNpYmxlUG9zaXRpb24gdmlzaWJsZVN0YXJ0ID0gZW5kaW5nU2Vs
ZWN0aW9uKCkudmlzaWJsZVN0YXJ0KCk7Ci0gICAgVmlzaWJsZVBvc2l0aW9uIHZpc2libGVFbmQg
PSBlbmRpbmdTZWxlY3Rpb24oKS52aXNpYmxlRW5kKCk7Ci0gICAgVmlzaWJsZVBvc2l0aW9uIHN0
YXJ0T2ZMYXN0UGFyYWdyYXBoID0gc3RhcnRPZlBhcmFncmFwaCh2aXNpYmxlRW5kKTsKLSAgICAK
LSAgICBpZiAoc3RhcnRPZlBhcmFncmFwaCh2aXNpYmxlU3RhcnQpID09IHN0YXJ0T2ZMYXN0UGFy
YWdyYXBoKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBzZXRFbmRpbmdTZWxlY3Rpb24o
dmlzaWJsZVN0YXJ0KTsKLSAgICBkb0FwcGx5KCk7Ci0gICAgdmlzaWJsZVN0YXJ0ID0gZW5kaW5n
U2VsZWN0aW9uKCkudmlzaWJsZVN0YXJ0KCk7Ci0gICAgVmlzaWJsZVBvc2l0aW9uIG5leHRQYXJh
Z3JhcGggPSBlbmRPZlBhcmFncmFwaCh2aXNpYmxlU3RhcnQpLm5leHQoKTsKLSAgICB3aGlsZSAo
bmV4dFBhcmFncmFwaC5pc05vdE51bGwoKSAmJiBuZXh0UGFyYWdyYXBoICE9IHN0YXJ0T2ZMYXN0
UGFyYWdyYXBoKSB7Ci0gICAgICAgIHNldEVuZGluZ1NlbGVjdGlvbihuZXh0UGFyYWdyYXBoKTsK
LSAgICAgICAgZG9BcHBseSgpOwotICAgICAgICBuZXh0UGFyYWdyYXBoID0gZW5kT2ZQYXJhZ3Jh
cGgoZW5kaW5nU2VsZWN0aW9uKCkudmlzaWJsZVN0YXJ0KCkpLm5leHQoKTsKLSAgICB9Ci0gICAg
c2V0RW5kaW5nU2VsZWN0aW9uKHZpc2libGVFbmQpOwotICAgIGRvQXBwbHkoKTsKLSAgICB2aXNp
YmxlRW5kID0gZW5kaW5nU2VsZWN0aW9uKCkudmlzaWJsZUVuZCgpOwotICAgIHNldEVuZGluZ1Nl
bGVjdGlvbihWaXNpYmxlU2VsZWN0aW9uKHZpc2libGVTdGFydC5kZWVwRXF1aXZhbGVudCgpLCB2
aXNpYmxlRW5kLmRlZXBFcXVpdmFsZW50KCksIERPV05TVFJFQU0pKTsKLQotICAgIHJldHVybiB0
cnVlOwotfQotCiB2b2lkIEZvcm1hdEJsb2NrQ29tbWFuZDo6ZG9BcHBseSgpCiB7CiAgICAgaWYg
KCFlbmRpbmdTZWxlY3Rpb24oKS5pc05vbk9ycGhhbmVkQ2FyZXRPclJhbmdlKCkpCkBAIC04Niwx
MiArNTksMzUgQEAgdm9pZCBGb3JtYXRCbG9ja0NvbW1hbmQ6OmRvQXBwbHkoKQogICAgIC8vIEZJ
WE1FOiBXZSBwYWludCB0aGUgZ2FwIGJlZm9yZSBzb21lIHBhcmFncmFwaHMgdGhhdCBhcmUgaW5k
ZW50ZWQgd2l0aCBsZWZ0IAogICAgIC8vIG1hcmdpbi9wYWRkaW5nLCBidXQgbm90IG90aGVycy4g
IFdlIHNob3VsZCBtYWtlIHRoZSBnYXAgcGFpbnRpbmcgbW9yZSBjb25zaXN0ZW50IGFuZCAKICAg
ICAvLyB0aGVuIHVzZSBhIGxlZnQgbWFyZ2luL3BhZGRpbmcgcnVsZSBoZXJlLgotICAgIGlmICh2
aXNpYmxlRW5kICE9IHZpc2libGVTdGFydCAmJiBpc1N0YXJ0T2ZQYXJhZ3JhcGgodmlzaWJsZUVu
ZCkpCisgICAgaWYgKHZpc2libGVFbmQgIT0gdmlzaWJsZVN0YXJ0ICYmIGlzU3RhcnRPZlBhcmFn
cmFwaCh2aXNpYmxlRW5kKSkgewogICAgICAgICBzZXRFbmRpbmdTZWxlY3Rpb24oVmlzaWJsZVNl
bGVjdGlvbih2aXNpYmxlU3RhcnQsIHZpc2libGVFbmQucHJldmlvdXModHJ1ZSkpKTsKKyAgICAg
ICAgdmlzaWJsZUVuZCA9IGVuZGluZ1NlbGVjdGlvbigpLnZpc2libGVFbmQoKTsKKyAgICB9CiAK
LSAgICBpZiAoZW5kaW5nU2VsZWN0aW9uKCkuaXNSYW5nZSgpICYmIG1vZGlmeVJhbmdlKCkpCisg
ICAgVmlzaWJsZVBvc2l0aW9uIHN0YXJ0T2ZMYXN0UGFyYWdyYXBoID0gc3RhcnRPZlBhcmFncmFw
aCh2aXNpYmxlRW5kKTsKKyAgICBpZiAoZW5kaW5nU2VsZWN0aW9uKCkuaXNDYXJldCgpIHx8IHN0
YXJ0T2ZQYXJhZ3JhcGgodmlzaWJsZVN0YXJ0KSA9PSBzdGFydE9mTGFzdFBhcmFncmFwaCkgewor
ICAgICAgICBkb0FwcGx5Rm9yU2luZ2xlUGFyYWdyYXBoKCk7CiAgICAgICAgIHJldHVybjsKKyAg
ICB9CisKKyAgICBzZXRFbmRpbmdTZWxlY3Rpb24odmlzaWJsZVN0YXJ0KTsKKyAgICBkb0FwcGx5
Rm9yU2luZ2xlUGFyYWdyYXBoKCk7CisgICAgdmlzaWJsZVN0YXJ0ID0gZW5kaW5nU2VsZWN0aW9u
KCkudmlzaWJsZVN0YXJ0KCk7CisgICAgVmlzaWJsZVBvc2l0aW9uIG5leHRQYXJhZ3JhcGggPSBl
bmRPZlBhcmFncmFwaCh2aXNpYmxlU3RhcnQpLm5leHQoKTsKKyAgICB3aGlsZSAobmV4dFBhcmFn
cmFwaC5pc05vdE51bGwoKSAmJiBuZXh0UGFyYWdyYXBoICE9IHN0YXJ0T2ZMYXN0UGFyYWdyYXBo
KSB7CisgICAgICAgIHNldEVuZGluZ1NlbGVjdGlvbihuZXh0UGFyYWdyYXBoKTsKKyAgICAgICAg
ZG9BcHBseUZvclNpbmdsZVBhcmFncmFwaCgpOworICAgICAgICBuZXh0UGFyYWdyYXBoID0gZW5k
T2ZQYXJhZ3JhcGgoZW5kaW5nU2VsZWN0aW9uKCkudmlzaWJsZVN0YXJ0KCkpLm5leHQoKTsKKyAg
ICB9CisgICAgc2V0RW5kaW5nU2VsZWN0aW9uKHZpc2libGVFbmQpOworICAgIGRvQXBwbHlGb3JT
aW5nbGVQYXJhZ3JhcGgoKTsKKyAgICB2aXNpYmxlRW5kID0gZW5kaW5nU2VsZWN0aW9uKCkudmlz
aWJsZUVuZCgpOwogCisgICAgc2V0RW5kaW5nU2VsZWN0aW9uKFZpc2libGVTZWxlY3Rpb24odmlz
aWJsZVN0YXJ0LmRlZXBFcXVpdmFsZW50KCksIHZpc2libGVFbmQuZGVlcEVxdWl2YWxlbnQoKSwg
RE9XTlNUUkVBTSkpOworfQorCit2b2lkIEZvcm1hdEJsb2NrQ29tbWFuZDo6ZG9BcHBseUZvclNp
bmdsZVBhcmFncmFwaCgpCit7CiAgICAgRXhjZXB0aW9uQ29kZSBlYzsKICAgICBTdHJpbmcgbG9j
YWxOYW1lLCBwcmVmaXg7CiAgICAgaWYgKCFEb2N1bWVudDo6cGFyc2VRdWFsaWZpZWROYW1lKG1f
dGFnTmFtZSwgcHJlZml4LCBsb2NhbE5hbWUsIGVjKSkKQEAgLTEwMiwxNCArOTgsMTQgQEAgdm9p
ZCBGb3JtYXRCbG9ja0NvbW1hbmQ6OmRvQXBwbHkoKQogICAgIGlmIChyZWZOb2RlLT5oYXNUYWdO
YW1lKHFUeXBlT2ZCbG9jaykpCiAgICAgICAgIC8vIFdlJ3JlIGFscmVhZHkgaW4gYSBibG9jayB3
aXRoIHRoZSBmb3JtYXQgd2Ugd2FudCwgc28gd2UgZG9uJ3QgaGF2ZSB0byBkbyBhbnl0aGluZwog
ICAgICAgICByZXR1cm47Ci0gICAgCisKICAgICBWaXNpYmxlUG9zaXRpb24gcGFyYWdyYXBoU3Rh
cnQgPSBzdGFydE9mUGFyYWdyYXBoKGVuZGluZ1NlbGVjdGlvbigpLnZpc2libGVTdGFydCgpKTsK
ICAgICBWaXNpYmxlUG9zaXRpb24gcGFyYWdyYXBoRW5kID0gZW5kT2ZQYXJhZ3JhcGgoZW5kaW5n
U2VsZWN0aW9uKCkudmlzaWJsZVN0YXJ0KCkpOwogICAgIFZpc2libGVQb3NpdGlvbiBibG9ja1N0
YXJ0ID0gc3RhcnRPZkJsb2NrKGVuZGluZ1NlbGVjdGlvbigpLnZpc2libGVTdGFydCgpKTsKICAg
ICBWaXNpYmxlUG9zaXRpb24gYmxvY2tFbmQgPSBlbmRPZkJsb2NrKGVuZGluZ1NlbGVjdGlvbigp
LnZpc2libGVTdGFydCgpKTsKICAgICBSZWZQdHI8RWxlbWVudD4gYmxvY2tOb2RlID0gY3JlYXRl
SFRNTEVsZW1lbnQoZG9jdW1lbnQoKSwgbV90YWdOYW1lKTsKICAgICBSZWZQdHI8RWxlbWVudD4g
cGxhY2Vob2xkZXIgPSBjcmVhdGVCcmVha0VsZW1lbnQoZG9jdW1lbnQoKSk7Ci0gICAgCisKICAg
ICBOb2RlKiByb290ID0gZW5kaW5nU2VsZWN0aW9uKCkuc3RhcnQoKS5ub2RlKCktPnJvb3RFZGl0
YWJsZUVsZW1lbnQoKTsKICAgICBpZiAodmFsaWRCbG9ja1RhZyhyZWZOb2RlLT5ub2RlTmFtZSgp
Lmxvd2VyKCkpICYmIAogICAgICAgICBwYXJhZ3JhcGhTdGFydCA9PSBibG9ja1N0YXJ0ICYmIHBh
cmFncmFwaEVuZCA9PSBibG9ja0VuZCAmJiAKQEAgLTEyMiw3ICsxMTgsNyBAQCB2b2lkIEZvcm1h
dEJsb2NrQ29tbWFuZDo6ZG9BcHBseSgpCiAgICAgICAgIGluc2VydE5vZGVBdChibG9ja05vZGUs
IHBhcmFncmFwaFN0YXJ0LmRlZXBFcXVpdmFsZW50KCkudXBzdHJlYW0oKSk7CiAgICAgfQogICAg
IGFwcGVuZE5vZGUocGxhY2Vob2xkZXIsIGJsb2NrTm9kZSk7Ci0gICAgCisKICAgICBWaXNpYmxl
UG9zaXRpb24gZGVzdGluYXRpb24oUG9zaXRpb24ocGxhY2Vob2xkZXIuZ2V0KCksIDApKTsKICAg
ICBpZiAocGFyYWdyYXBoU3RhcnQgPT0gcGFyYWdyYXBoRW5kICYmICFsaW5lQnJlYWtFeGlzdHNB
dFZpc2libGVQb3NpdGlvbihwYXJhZ3JhcGhTdGFydCkpIHsKICAgICAgICAgc2V0RW5kaW5nU2Vs
ZWN0aW9uKGRlc3RpbmF0aW9uKTsKSW5kZXg6IFdlYkNvcmUvZWRpdGluZy9Gb3JtYXRCbG9ja0Nv
bW1hbmQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2VkaXRpbmcvRm9ybWF0QmxvY2tDb21tYW5k
LmgJKHJldmlzaW9uIDY4MjcyKQorKysgV2ViQ29yZS9lZGl0aW5nL0Zvcm1hdEJsb2NrQ29tbWFu
ZC5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw5ICs0MSw5IEBAIHByaXZhdGU6CiAgICAgRm9ybWF0
QmxvY2tDb21tYW5kKERvY3VtZW50KiwgY29uc3QgQXRvbWljU3RyaW5nJiB0YWdOYW1lKTsKIAog
ICAgIHZpcnR1YWwgdm9pZCBkb0FwcGx5KCk7CisgICAgdm9pZCBkb0FwcGx5Rm9yU2luZ2xlUGFy
YWdyYXBoKCk7CiAgICAgdmlydHVhbCBFZGl0QWN0aW9uIGVkaXRpbmdBY3Rpb24oKSBjb25zdCB7
IHJldHVybiBFZGl0QWN0aW9uRm9ybWF0QmxvY2s7IH0KIAotICAgIGJvb2wgbW9kaWZ5UmFuZ2Uo
KTsKICAgICBBdG9taWNTdHJpbmcgbV90YWdOYW1lOwogfTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>