<?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>71153</bug_id>
          
          <creation_ts>2011-10-28 15:50:50 -0700</creation_ts>
          <short_desc>Factor ContextDestructionObserver out of ActiveDOMObject</short_desc>
          <delta_ts>2011-10-28 16:57:27 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>492736</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-10-28 15:50:50 -0700</bug_when>
    <thetext>Factor ContextDestructionObserver out of ActiveDOMObject</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>492737</commentid>
    <comment_count>1</comment_count>
      <attachid>112927</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-10-28 15:52:21 -0700</bug_when>
    <thetext>Created attachment 112927
work in progress</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>492774</commentid>
    <comment_count>2</comment_count>
      <attachid>112939</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-10-28 16:28:19 -0700</bug_when>
    <thetext>Created attachment 112939
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>492795</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-10-28 16:57:27 -0700</bug_when>
    <thetext>Committed r98784: &lt;http://trac.webkit.org/changeset/98784&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112927</attachid>
            <date>2011-10-28 15:52:21 -0700</date>
            <delta_ts>2011-10-28 16:28:16 -0700</delta_ts>
            <desc>work in progress</desc>
            <filename>bug-71153-20111028155220.patch</filename>
            <type>text/plain</type>
            <size>9342</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4NzcyKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTEtMTAtMjggIEFkYW0gQmFy
dGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBGYWN0b3IgQ29udGV4dERlc3RydWN0
aW9uT2JzZXJ2ZXIgb3V0IG9mIEFjdGl2ZURPTU9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzExNTMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIHBhdmVzIHRoZSB3YXkgdG8gbWFr
ZSBtb3JlIG9iamVjdHMgb2JzZXJ2ZSB0aGUgZGVzdHJ1Y3Rpb24KKyAgICAgICAgb2YgU2NyaXB0
RXhlY3V0aW9Db250ZXh0IHdpdGhvdXQgbmVlZGluZyB0byBhZGQgaWZkZWZzIHRvCisgICAgICAg
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaC9jcHAuICAoQXMgYW4gZXhhbXBsZSwgc2VlIERPTVVS
TC4pCisKKyAgICAgICAgKiBkb20vQWN0aXZlRE9NT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyOjpDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZl
cik6CisgICAgICAgIChXZWJDb3JlOjpDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlcjo6fkNvbnRl
eHREZXN0cnVjdGlvbk9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRleHREZXN0cnVj
dGlvbk9ic2VydmVyOjpjb250ZXh0RGVzdHJveWVkKToKKyAgICAgICAgKFdlYkNvcmU6OkFjdGl2
ZURPTU9iamVjdDo6QWN0aXZlRE9NT2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OkFjdGl2ZURP
TU9iamVjdDo6fkFjdGl2ZURPTU9iamVjdCk6CisgICAgICAgICogZG9tL0FjdGl2ZURPTU9iamVj
dC5oOgorICAgICAgICAoV2ViQ29yZTo6Q29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXI6OnNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQpOgorICAgICAgICAqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6On5TY3JpcHRF
eGVjdXRpb25Db250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQ6OmRpZENyZWF0ZUFjdGl2ZURPTU9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRF
eGVjdXRpb25Db250ZXh0Ojp3aWxsRGVzdHJveUFjdGl2ZURPTU9iamVjdCk6CisgICAgICAgIChX
ZWJDb3JlOjpkaWRDcmVhdGVEZXN0cnVjdGlvbk9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6
OndpbGxEZXN0cm95RGVzdHJ1Y3Rpb25PYnNlcnZlcik6CisgICAgICAgICogZG9tL1NjcmlwdEV4
ZWN1dGlvbkNvbnRleHQuaDoKKwogMjAxMS0xMC0yOCAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2
aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjk4
NzU3LgpJbmRleDogU291cmNlL1dlYkNvcmUvZG9tL0FjdGl2ZURPTU9iamVjdC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvZG9tL0FjdGl2ZURPTU9iamVjdC5jcHAJKHJldmlzaW9u
IDk4NzU0KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0FjdGl2ZURPTU9iamVjdC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTMzLDIyICszMyw0OCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLUFj
dGl2ZURPTU9iamVjdDo6QWN0aXZlRE9NT2JqZWN0KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQsIHZvaWQqIHVwY2FzdFBvaW50ZXIpCitDb250ZXh0RGVzdHJ1
Y3Rpb25PYnNlcnZlcjo6Q29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKICAgICA6IG1fc2NyaXB0RXhlY3V0aW9u
Q29udGV4dChzY3JpcHRFeGVjdXRpb25Db250ZXh0KQoreworICAgIGlmICghbV9zY3JpcHRFeGVj
dXRpb25Db250ZXh0KQorICAgICAgICByZXR1cm47CisKKyAgICBBU1NFUlQobV9zY3JpcHRFeGVj
dXRpb25Db250ZXh0LT5pc0NvbnRleHRUaHJlYWQoKSk7CisgICAgbV9zY3JpcHRFeGVjdXRpb25D
b250ZXh0LT5kaWRDcmVhdGVEZXN0cnVjdGlvbk9ic2VydmVyKHRoaXMpOworfQorCit2aXJ0dWFs
IENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyOjp+Q29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIo
KQoreworICAgIGlmICghbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0KQorICAgICAgICByZXR1cm47
CisKKyAgICBBU1NFUlQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5pc0NvbnRleHRUaHJlYWQo
KSk7CisgICAgbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT53aWxsRGVzdHJveURlc3RydWN0aW9u
T2JzZXJ2ZXIodGhpcyk7Cit9CisKK3ZvaWQgQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXI6OmNv
bnRleHREZXN0cm95ZWQoKQoreworICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dCA9IDA7Cit9
CisKK0FjdGl2ZURPTU9iamVjdDo6QWN0aXZlRE9NT2JqZWN0KFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIHZvaWQqIHVwY2FzdFBvaW50ZXIpCisgICAgOiBD
b250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlcihzY3JpcHRFeGVjdXRpb25Db250ZXh0KQogICAgICwg
bV9wZW5kaW5nQWN0aXZpdHlDb3VudCgwKQogewotICAgIGlmIChtX3NjcmlwdEV4ZWN1dGlvbkNv
bnRleHQpIHsKLSAgICAgICAgQVNTRVJUKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+aXNDb250
ZXh0VGhyZWFkKCkpOwotICAgICAgICBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPmNyZWF0ZWRB
Y3RpdmVET01PYmplY3QodGhpcywgdXBjYXN0UG9pbnRlcik7Ci0gICAgfQorICAgIGlmICghbV9z
Y3JpcHRFeGVjdXRpb25Db250ZXh0KQorICAgICAgICByZXR1cm47CisKKyAgICBBU1NFUlQobV9z
Y3JpcHRFeGVjdXRpb25Db250ZXh0LT5pc0NvbnRleHRUaHJlYWQoKSk7CisgICAgbV9zY3JpcHRF
eGVjdXRpb25Db250ZXh0LT5kaWRDcmVhdGVBY3RpdmVET01PYmplY3QodGhpcywgdXBjYXN0UG9p
bnRlcik7CiB9CiAKIEFjdGl2ZURPTU9iamVjdDo6fkFjdGl2ZURPTU9iamVjdCgpCiB7Ci0gICAg
aWYgKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkgewotICAgICAgICBBU1NFUlQobV9zY3JpcHRF
eGVjdXRpb25Db250ZXh0LT5pc0NvbnRleHRUaHJlYWQoKSk7Ci0gICAgICAgIG1fc2NyaXB0RXhl
Y3V0aW9uQ29udGV4dC0+ZGVzdHJveWVkQWN0aXZlRE9NT2JqZWN0KHRoaXMpOwotICAgIH0KKyAg
ICBpZiAoIW1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAgICAgcmV0dXJuOworCisgICAg
QVNTRVJUKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+aXNDb250ZXh0VGhyZWFkKCkpOworICAg
IG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+d2lsbERlc3Ryb3lBY3RpdmVET01PYmplY3QodGhp
cyk7CiB9CiAKIGJvb2wgQWN0aXZlRE9NT2JqZWN0OjpoYXNQZW5kaW5nQWN0aXZpdHkoKSBjb25z
dApAQCAtNTYsMTEgKzgyLDYgQEAgYm9vbCBBY3RpdmVET01PYmplY3Q6Omhhc1BlbmRpbmdBY3Rp
dml0eQogICAgIHJldHVybiBtX3BlbmRpbmdBY3Rpdml0eUNvdW50OwogfQogCi12b2lkIEFjdGl2
ZURPTU9iamVjdDo6Y29udGV4dERlc3Ryb3llZCgpCi17Ci0gICAgbV9zY3JpcHRFeGVjdXRpb25D
b250ZXh0ID0gMDsKLX0KLQogYm9vbCBBY3RpdmVET01PYmplY3Q6OmNhblN1c3BlbmQoKSBjb25z
dAogewogICAgIHJldHVybiBmYWxzZTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9BY3RpdmVE
T01PYmplY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vQWN0aXZlRE9NT2Jq
ZWN0LmgJKHJldmlzaW9uIDk4NzU0KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0FjdGl2ZURPTU9i
amVjdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMywxNCArMzMsMjUgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogCiAgICAgY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIAotICAgIGNsYXNzIEFj
dGl2ZURPTU9iamVjdCB7CisgICAgLy8gRklYTUU6IE1vdmUgdGhpcyBjbGFzcyB0byBpdCdzIG93
biBmaWxlLgorICAgIGNsYXNzIENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyIHsKICAgICBwdWJs
aWM6Ci0gICAgICAgIEFjdGl2ZURPTU9iamVjdChTY3JpcHRFeGVjdXRpb25Db250ZXh0Kiwgdm9p
ZCogdXBjYXN0UG9pbnRlcik7CisgICAgICAgIENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKKyAgICAgICAgdmlydHVhbCB2b2lkIGNvbnRleHREZXN0
cm95ZWQoKTsKIAogICAgICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRp
b25Db250ZXh0KCkgY29uc3QgeyByZXR1cm4gbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OyB9Ci0g
ICAgICAgIHZpcnR1YWwgYm9vbCBoYXNQZW5kaW5nQWN0aXZpdHkoKSBjb25zdDsKIAotICAgICAg
ICB2aXJ0dWFsIHZvaWQgY29udGV4dERlc3Ryb3llZCgpOworICAgIHByb3RlY3RlZDoKKyAgICAg
ICAgdmlydHVhbCB+Q29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIoKTsKKworICAgICAgICBTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CisgICAgfQorCisg
ICAgY2xhc3MgQWN0aXZlRE9NT2JqZWN0IDogcHVibGljIENvbnRleHREZXN0cnVjdGlvbk9ic2Vy
dmVyIHsKKyAgICBwdWJsaWM6CisgICAgICAgIEFjdGl2ZURPTU9iamVjdChTY3JpcHRFeGVjdXRp
b25Db250ZXh0Kiwgdm9pZCogdXBjYXN0UG9pbnRlcik7CisKKyAgICAgICAgdmlydHVhbCBib29s
IGhhc1BlbmRpbmdBY3Rpdml0eSgpIGNvbnN0OwogCiAgICAgICAgIC8vIGNhblN1c3BlbmQoKSBp
cyB1c2VkIGJ5IHRoZSBjYWxsZXIgaWYgdGhlcmUgaXMgYSBjaG9pY2UgYmV0d2VlbiBzdXNwZW5k
aW5nIGFuZCBzdG9wcGluZy4KICAgICAgICAgLy8gRm9yIGV4YW1wbGUsIGEgcGFnZSB3b24ndCBi
ZSBzdXNwZW5kZWQgYW5kIHBsYWNlZCBpbiB0aGUgYmFjay9mb3J3YXJkIGNhY2hlIGlmIGl0IGhh
cwpAQCAtNzYsNyArODcsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwg
fkFjdGl2ZURPTU9iamVjdCgpOwogCiAgICAgcHJpdmF0ZToKLSAgICAgICAgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0OwogICAgICAgICB1bnNpZ25lZCBt
X3BlbmRpbmdBY3Rpdml0eUNvdW50OwogICAgIH07CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Rv
bS9TY3JpcHRFeGVjdXRpb25Db250ZXh0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5jcHAJKHJldmlzaW9uIDk4NzU0KQorKysgU291
cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMDQsMTEgKzEwNCwxMiBAQCBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpTY3JpcHRFeGVj
dXRpb25DCiBTY3JpcHRFeGVjdXRpb25Db250ZXh0Ojp+U2NyaXB0RXhlY3V0aW9uQ29udGV4dCgp
CiB7CiAgICAgbV9pbkRlc3RydWN0b3IgPSB0cnVlOwotICAgIGZvciAoSGFzaE1hcDxBY3RpdmVE
T01PYmplY3QqLCB2b2lkKj46Oml0ZXJhdG9yIGl0ZXIgPSBtX2FjdGl2ZURPTU9iamVjdHMuYmVn
aW4oKTsgaXRlciAhPSBtX2FjdGl2ZURPTU9iamVjdHMuZW5kKCk7IGl0ZXIgPSBtX2FjdGl2ZURP
TU9iamVjdHMuYmVnaW4oKSkgewotICAgICAgICBBY3RpdmVET01PYmplY3QqIG9iamVjdCA9IGl0
ZXItPmZpcnN0OwotICAgICAgICBtX2FjdGl2ZURPTU9iamVjdHMucmVtb3ZlKGl0ZXIpOworCisg
ICAgZm9yIChIYXNoU2V0PENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyKj46Oml0ZXJhdG9yIGl0
ZXIgPSBtX2Rlc3RydWN0aW9uT2JzZXJ2ZXJzLmJlZ2luKCk7IGl0ZXIgIT0gbV9kZXN0cnVjdGlv
bk9ic2VydmVycy5lbmQoKTsgaXRlciA9IG1fZGVzdHJ1Y3Rpb25PYnNlcnZlcnMuYmVnaW4oKSkg
eworICAgICAgICBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlciogb2JzZXJ2ZXIgPSBpdGVyLT5m
aXJzdDsKKyAgICAgICAgbV9kZXN0cnVjdGlvbk9ic2VydmVycy5yZW1vdmUoaXRlcik7CiAgICAg
ICAgIEFTU0VSVChvYmplY3QtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSA9PSB0aGlzKTsKLSAg
ICAgICAgb2JqZWN0LT5jb250ZXh0RGVzdHJveWVkKCk7CisgICAgICAgIG9ic2VydmVyLT5jb250
ZXh0RGVzdHJveWVkKCk7CiAgICAgfQogCiAgICAgSGFzaFNldDxNZXNzYWdlUG9ydCo+OjppdGVy
YXRvciBtZXNzYWdlUG9ydHNFbmQgPSBtX21lc3NhZ2VQb3J0cy5lbmQoKTsKQEAgLTI4OCw3ICsy
ODksNyBAQCB2b2lkIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OnN0b3BBY3RpdmVECiAgICAgY2xv
c2VNZXNzYWdlUG9ydHMoKTsKIH0KIAotdm9pZCBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpjcmVh
dGVkQWN0aXZlRE9NT2JqZWN0KEFjdGl2ZURPTU9iamVjdCogb2JqZWN0LCB2b2lkKiB1cGNhc3RQ
b2ludGVyKQordm9pZCBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpkaWRDcmVhdGVBY3RpdmVET01P
YmplY3QoQWN0aXZlRE9NT2JqZWN0KiBvYmplY3QsIHZvaWQqIHVwY2FzdFBvaW50ZXIpCiB7CiAg
ICAgQVNTRVJUKG9iamVjdCk7CiAgICAgQVNTRVJUKHVwY2FzdFBvaW50ZXIpOwpAQCAtMjk4LDcg
KzI5OSw3IEBAIHZvaWQgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6Y3JlYXRlZEFjdGkKICAgICBt
X2FjdGl2ZURPTU9iamVjdHMuYWRkKG9iamVjdCwgdXBjYXN0UG9pbnRlcik7CiB9CiAKLXZvaWQg
U2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6ZGVzdHJveWVkQWN0aXZlRE9NT2JqZWN0KEFjdGl2ZURP
TU9iamVjdCogb2JqZWN0KQordm9pZCBTY3JpcHRFeGVjdXRpb25Db250ZXh0Ojp3aWxsRGVzdHJv
eUFjdGl2ZURPTU9iamVjdChBY3RpdmVET01PYmplY3QqIG9iamVjdCkKIHsKICAgICBBU1NFUlQo
b2JqZWN0KTsKICAgICBpZiAobV9pdGVyYXRpbmdBY3RpdmVET01PYmplY3RzKQpAQCAtMzA2LDYg
KzMwNywxOSBAQCB2b2lkIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OmRlc3Ryb3llZEFjCiAgICAg
bV9hY3RpdmVET01PYmplY3RzLnJlbW92ZShvYmplY3QpOwogfQogCit2b2lkIGRpZENyZWF0ZURl
c3RydWN0aW9uT2JzZXJ2ZXIoQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIqIG9ic2VydmVyKQor
eworICAgIEFTU0VSVChvYnNlcnZlcik7CisgICAgQVNTRVJUKCFtX2luRGVzdHJ1Y3Rvcik7Cisg
ICAgbV9kZXN0cnVjdGlvbk9ic2VydmVycy5hZGQob2JzZXJ2ZXIpOworfQorCit2b2lkIHdpbGxE
ZXN0cm95RGVzdHJ1Y3Rpb25PYnNlcnZlcihDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlciogb2Jz
ZXJ2ZXIpCit7CisgICAgQVNTRVJUKG9ic2VydmVyKTsKKyAgICBtX2Rlc3RydWN0aW9uT2JzZXJ2
ZXJzLnJlbW92ZShvYnNlcnZlcik7Cit9CisKIHZvaWQgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6
Y2xvc2VNZXNzYWdlUG9ydHMoKSB7CiAgICAgSGFzaFNldDxNZXNzYWdlUG9ydCo+OjppdGVyYXRv
ciBtZXNzYWdlUG9ydHNFbmQgPSBtX21lc3NhZ2VQb3J0cy5lbmQoKTsKICAgICBmb3IgKEhhc2hT
ZXQ8TWVzc2FnZVBvcnQqPjo6aXRlcmF0b3IgaXRlciA9IG1fbWVzc2FnZVBvcnRzLmJlZ2luKCk7
IGl0ZXIgIT0gbWVzc2FnZVBvcnRzRW5kOyArK2l0ZXIpIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2RvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaAkocmV2aXNpb24gOTg3NzApCisrKyBTb3Vy
Y2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xMTQsMTEgKzExNCwxNSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHJlc3VtZUFjdGl2
ZURPTU9iamVjdHMoKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcEFjdGl2ZURPTU9iamVjdHMoKTsK
IAotICAgIHZvaWQgY3JlYXRlZEFjdGl2ZURPTU9iamVjdChBY3RpdmVET01PYmplY3QqLCB2b2lk
KiB1cGNhc3RQb2ludGVyKTsKLSAgICB2b2lkIGRlc3Ryb3llZEFjdGl2ZURPTU9iamVjdChBY3Rp
dmVET01PYmplY3QqKTsKKyAgICB2b2lkIGRpZENyZWF0ZUFjdGl2ZURPTU9iamVjdChBY3RpdmVE
T01PYmplY3QqLCB2b2lkKiB1cGNhc3RQb2ludGVyKTsKKyAgICB2b2lkIHdpbGxEZXN0cm95QWN0
aXZlRE9NT2JqZWN0KEFjdGl2ZURPTU9iamVjdCopOworCiAgICAgdHlwZWRlZiBjb25zdCBIYXNo
TWFwPEFjdGl2ZURPTU9iamVjdCosIHZvaWQqPiBBY3RpdmVET01PYmplY3RzTWFwOwogICAgIEFj
dGl2ZURPTU9iamVjdHNNYXAmIGFjdGl2ZURPTU9iamVjdHMoKSBjb25zdCB7IHJldHVybiBtX2Fj
dGl2ZURPTU9iamVjdHM7IH0KIAorICAgIHZvaWQgZGlkQ3JlYXRlRGVzdHJ1Y3Rpb25PYnNlcnZl
cihDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlciopOworICAgIHZvaWQgd2lsbERlc3Ryb3lEZXN0
cnVjdGlvbk9ic2VydmVyKENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyKik7CisKICAgICB2aXJ0
dWFsIHZvaWQgc3VzcGVuZFNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlckNhbGxiYWNrcygpIHsg
fQogICAgIHZpcnR1YWwgdm9pZCByZXN1bWVTY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXJDYWxs
YmFja3MoKSB7IH0KIApAQCAtMjAwLDYgKzIwNCw3IEBAIHByaXZhdGU6CiAKICAgICBIYXNoU2V0
PE1lc3NhZ2VQb3J0Kj4gbV9tZXNzYWdlUG9ydHM7CiAKKyAgICBIYXNoU2V0PENvbnRleHREZXN0
cnVjdGlvbk9ic2VydmVyKj4gbV9kZXN0cnVjdGlvbk9ic2VydmVyczsKICAgICBIYXNoTWFwPEFj
dGl2ZURPTU9iamVjdCosIHZvaWQqPiBtX2FjdGl2ZURPTU9iamVjdHM7CiAgICAgYm9vbCBtX2l0
ZXJhdGluZ0FjdGl2ZURPTU9iamVjdHM7CiAgICAgYm9vbCBtX2luRGVzdHJ1Y3RvcjsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112939</attachid>
            <date>2011-10-28 16:28:19 -0700</date>
            <delta_ts>2011-10-28 16:36:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-71153-20111028162818.patch</filename>
            <type>text/plain</type>
            <size>9516</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4Nzc1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzAgQEAKKzIwMTEtMTAtMjggIEFkYW0gQmFy
dGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBGYWN0b3IgQ29udGV4dERlc3RydWN0
aW9uT2JzZXJ2ZXIgb3V0IG9mIEFjdGl2ZURPTU9iamVjdAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzExNTMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIHBhdmVzIHRoZSB3YXkgdG8gbWFr
ZSBtb3JlIG9iamVjdHMgb2JzZXJ2ZSB0aGUgZGVzdHJ1Y3Rpb24KKyAgICAgICAgb2YgU2NyaXB0
RXhlY3V0aW9Db250ZXh0IHdpdGhvdXQgbmVlZGluZyB0byBhZGQgaWZkZWZzIHRvCisgICAgICAg
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaC9jcHAuICAoQXMgYW4gZXhhbXBsZSwgc2VlIERPTVVS
TC4pCisKKyAgICAgICAgKiBkb20vQWN0aXZlRE9NT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyOjpDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZl
cik6CisgICAgICAgIChXZWJDb3JlOjpDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlcjo6fkNvbnRl
eHREZXN0cnVjdGlvbk9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OkNvbnRleHREZXN0cnVj
dGlvbk9ic2VydmVyOjpjb250ZXh0RGVzdHJveWVkKToKKyAgICAgICAgKFdlYkNvcmU6OkFjdGl2
ZURPTU9iamVjdDo6QWN0aXZlRE9NT2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OkFjdGl2ZURP
TU9iamVjdDo6fkFjdGl2ZURPTU9iamVjdCk6CisgICAgICAgICogZG9tL0FjdGl2ZURPTU9iamVj
dC5oOgorICAgICAgICAoV2ViQ29yZTo6Q29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXI6OnNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQpOgorICAgICAgICAqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6On5TY3JpcHRF
eGVjdXRpb25Db250ZXh0KToKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQ6OmRpZENyZWF0ZUFjdGl2ZURPTU9iamVjdCk6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRF
eGVjdXRpb25Db250ZXh0Ojp3aWxsRGVzdHJveUFjdGl2ZURPTU9iamVjdCk6CisgICAgICAgIChX
ZWJDb3JlOjpkaWRDcmVhdGVEZXN0cnVjdGlvbk9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6
OndpbGxEZXN0cm95RGVzdHJ1Y3Rpb25PYnNlcnZlcik6CisgICAgICAgICogZG9tL1NjcmlwdEV4
ZWN1dGlvbkNvbnRleHQuaDoKKwogMjAxMS0xMC0yOCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9y
dG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgQ1NTMyBJbWFnZXMgY3Jvc3MtZmFk
ZSgpIGltYWdlIGZ1bmN0aW9uCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vQWN0aXZlRE9NT2Jq
ZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vQWN0aXZlRE9NT2JqZWN0
LmNwcAkocmV2aXNpb24gOTg3NzUpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vQWN0aXZlRE9NT2Jq
ZWN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzMsMjIgKzMzLDQ4IEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotQWN0aXZlRE9NT2JqZWN0OjpBY3RpdmVET01PYmplY3QoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwgdm9pZCogdXBjYXN0UG9pbnRlcikK
K0NvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyOjpDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlcihT
Y3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KQogICAgIDogbV9z
Y3JpcHRFeGVjdXRpb25Db250ZXh0KHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQpCit7CisgICAgaWYg
KCFtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQpCisgICAgICAgIHJldHVybjsKKworICAgIEFTU0VS
VChtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPmlzQ29udGV4dFRocmVhZCgpKTsKKyAgICBtX3Nj
cmlwdEV4ZWN1dGlvbkNvbnRleHQtPmRpZENyZWF0ZURlc3RydWN0aW9uT2JzZXJ2ZXIodGhpcyk7
Cit9CisKK0NvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyOjp+Q29udGV4dERlc3RydWN0aW9uT2Jz
ZXJ2ZXIoKQoreworICAgIGlmICghbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0KQorICAgICAgICBy
ZXR1cm47CisKKyAgICBBU1NFUlQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5pc0NvbnRleHRU
aHJlYWQoKSk7CisgICAgbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT53aWxsRGVzdHJveURlc3Ry
dWN0aW9uT2JzZXJ2ZXIodGhpcyk7Cit9CisKK3ZvaWQgQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2
ZXI6OmNvbnRleHREZXN0cm95ZWQoKQoreworICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dCA9
IDA7Cit9CisKK0FjdGl2ZURPTU9iamVjdDo6QWN0aXZlRE9NT2JqZWN0KFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQsIHZvaWQqIHVwY2FzdFBvaW50ZXIpCisg
ICAgOiBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlcihzY3JpcHRFeGVjdXRpb25Db250ZXh0KQog
ICAgICwgbV9wZW5kaW5nQWN0aXZpdHlDb3VudCgwKQogewotICAgIGlmIChtX3NjcmlwdEV4ZWN1
dGlvbkNvbnRleHQpIHsKLSAgICAgICAgQVNTRVJUKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+
aXNDb250ZXh0VGhyZWFkKCkpOwotICAgICAgICBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPmNy
ZWF0ZWRBY3RpdmVET01PYmplY3QodGhpcywgdXBjYXN0UG9pbnRlcik7Ci0gICAgfQorICAgIGlm
ICghbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0KQorICAgICAgICByZXR1cm47CisKKyAgICBBU1NF
UlQobV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LT5pc0NvbnRleHRUaHJlYWQoKSk7CisgICAgbV9z
Y3JpcHRFeGVjdXRpb25Db250ZXh0LT5kaWRDcmVhdGVBY3RpdmVET01PYmplY3QodGhpcywgdXBj
YXN0UG9pbnRlcik7CiB9CiAKIEFjdGl2ZURPTU9iamVjdDo6fkFjdGl2ZURPTU9iamVjdCgpCiB7
Ci0gICAgaWYgKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkgewotICAgICAgICBBU1NFUlQobV9z
Y3JpcHRFeGVjdXRpb25Db250ZXh0LT5pc0NvbnRleHRUaHJlYWQoKSk7Ci0gICAgICAgIG1fc2Ny
aXB0RXhlY3V0aW9uQ29udGV4dC0+ZGVzdHJveWVkQWN0aXZlRE9NT2JqZWN0KHRoaXMpOwotICAg
IH0KKyAgICBpZiAoIW1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dCkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgQVNTRVJUKG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+aXNDb250ZXh0VGhyZWFkKCkp
OworICAgIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC0+d2lsbERlc3Ryb3lBY3RpdmVET01PYmpl
Y3QodGhpcyk7CiB9CiAKIGJvb2wgQWN0aXZlRE9NT2JqZWN0OjpoYXNQZW5kaW5nQWN0aXZpdHko
KSBjb25zdApAQCAtNTYsMTEgKzgyLDYgQEAgYm9vbCBBY3RpdmVET01PYmplY3Q6Omhhc1BlbmRp
bmdBY3Rpdml0eQogICAgIHJldHVybiBtX3BlbmRpbmdBY3Rpdml0eUNvdW50OwogfQogCi12b2lk
IEFjdGl2ZURPTU9iamVjdDo6Y29udGV4dERlc3Ryb3llZCgpCi17Ci0gICAgbV9zY3JpcHRFeGVj
dXRpb25Db250ZXh0ID0gMDsKLX0KLQogYm9vbCBBY3RpdmVET01PYmplY3Q6OmNhblN1c3BlbmQo
KSBjb25zdAogewogICAgIHJldHVybiBmYWxzZTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9B
Y3RpdmVET01PYmplY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vQWN0aXZl
RE9NT2JqZWN0LmgJKHJldmlzaW9uIDk4Nzc1KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0FjdGl2
ZURPTU9iamVjdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMywxNCArMzMsMjUgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiAgICAgY2xhc3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKIAotICAgIGNs
YXNzIEFjdGl2ZURPTU9iamVjdCB7CisgICAgLy8gRklYTUU6IE1vdmUgdGhpcyBjbGFzcyB0byBp
dCdzIG93biBmaWxlLgorICAgIGNsYXNzIENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyIHsKICAg
ICBwdWJsaWM6Ci0gICAgICAgIEFjdGl2ZURPTU9iamVjdChTY3JpcHRFeGVjdXRpb25Db250ZXh0
Kiwgdm9pZCogdXBjYXN0UG9pbnRlcik7CisgICAgICAgIENvbnRleHREZXN0cnVjdGlvbk9ic2Vy
dmVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqKTsKKyAgICAgICAgdmlydHVhbCB2b2lkIGNvbnRl
eHREZXN0cm95ZWQoKTsKIAogICAgICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRF
eGVjdXRpb25Db250ZXh0KCkgY29uc3QgeyByZXR1cm4gbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0
OyB9Ci0gICAgICAgIHZpcnR1YWwgYm9vbCBoYXNQZW5kaW5nQWN0aXZpdHkoKSBjb25zdDsKIAot
ICAgICAgICB2aXJ0dWFsIHZvaWQgY29udGV4dERlc3Ryb3llZCgpOworICAgIHByb3RlY3RlZDoK
KyAgICAgICAgdmlydHVhbCB+Q29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIoKTsKKworICAgICAg
ICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CisgICAg
fTsKKworICAgIGNsYXNzIEFjdGl2ZURPTU9iamVjdCA6IHB1YmxpYyBDb250ZXh0RGVzdHJ1Y3Rp
b25PYnNlcnZlciB7CisgICAgcHVibGljOgorICAgICAgICBBY3RpdmVET01PYmplY3QoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIHZvaWQqIHVwY2FzdFBvaW50ZXIpOworCisgICAgICAgIHZpcnR1
YWwgYm9vbCBoYXNQZW5kaW5nQWN0aXZpdHkoKSBjb25zdDsKIAogICAgICAgICAvLyBjYW5TdXNw
ZW5kKCkgaXMgdXNlZCBieSB0aGUgY2FsbGVyIGlmIHRoZXJlIGlzIGEgY2hvaWNlIGJldHdlZW4g
c3VzcGVuZGluZyBhbmQgc3RvcHBpbmcuCiAgICAgICAgIC8vIEZvciBleGFtcGxlLCBhIHBhZ2Ug
d29uJ3QgYmUgc3VzcGVuZGVkIGFuZCBwbGFjZWQgaW4gdGhlIGJhY2svZm9yd2FyZCBjYWNoZSBp
ZiBpdCBoYXMKQEAgLTc2LDcgKzg3LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2
aXJ0dWFsIH5BY3RpdmVET01PYmplY3QoKTsKIAogICAgIHByaXZhdGU6Ci0gICAgICAgIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKICAgICAgICAgdW5z
aWduZWQgbV9wZW5kaW5nQWN0aXZpdHlDb3VudDsKICAgICB9OwogCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuY3BwCShyZXZpc2lvbiA5ODc3NSkK
KysrIFNvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTA0LDExICsxMDQsMTIgQEAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6U2Ny
aXB0RXhlY3V0aW9uQwogU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6flNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKQogewogICAgIG1faW5EZXN0cnVjdG9yID0gdHJ1ZTsKLSAgICBmb3IgKEhhc2hNYXA8
QWN0aXZlRE9NT2JqZWN0Kiwgdm9pZCo+OjppdGVyYXRvciBpdGVyID0gbV9hY3RpdmVET01PYmpl
Y3RzLmJlZ2luKCk7IGl0ZXIgIT0gbV9hY3RpdmVET01PYmplY3RzLmVuZCgpOyBpdGVyID0gbV9h
Y3RpdmVET01PYmplY3RzLmJlZ2luKCkpIHsKLSAgICAgICAgQWN0aXZlRE9NT2JqZWN0KiBvYmpl
Y3QgPSBpdGVyLT5maXJzdDsKLSAgICAgICAgbV9hY3RpdmVET01PYmplY3RzLnJlbW92ZShpdGVy
KTsKLSAgICAgICAgQVNTRVJUKG9iamVjdC0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpID09IHRo
aXMpOwotICAgICAgICBvYmplY3QtPmNvbnRleHREZXN0cm95ZWQoKTsKKworICAgIGZvciAoSGFz
aFNldDxDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlcio+OjppdGVyYXRvciBpdGVyID0gbV9kZXN0
cnVjdGlvbk9ic2VydmVycy5iZWdpbigpOyBpdGVyICE9IG1fZGVzdHJ1Y3Rpb25PYnNlcnZlcnMu
ZW5kKCk7IGl0ZXIgPSBtX2Rlc3RydWN0aW9uT2JzZXJ2ZXJzLmJlZ2luKCkpIHsKKyAgICAgICAg
Q29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIqIG9ic2VydmVyID0gKml0ZXI7CisgICAgICAgIG1f
ZGVzdHJ1Y3Rpb25PYnNlcnZlcnMucmVtb3ZlKG9ic2VydmVyKTsKKyAgICAgICAgQVNTRVJUKG9i
c2VydmVyLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgPT0gdGhpcyk7CisgICAgICAgIG9ic2Vy
dmVyLT5jb250ZXh0RGVzdHJveWVkKCk7CiAgICAgfQogCiAgICAgSGFzaFNldDxNZXNzYWdlUG9y
dCo+OjppdGVyYXRvciBtZXNzYWdlUG9ydHNFbmQgPSBtX21lc3NhZ2VQb3J0cy5lbmQoKTsKQEAg
LTI4OCw3ICsyODksNyBAQCB2b2lkIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OnN0b3BBY3RpdmVE
CiAgICAgY2xvc2VNZXNzYWdlUG9ydHMoKTsKIH0KIAotdm9pZCBTY3JpcHRFeGVjdXRpb25Db250
ZXh0OjpjcmVhdGVkQWN0aXZlRE9NT2JqZWN0KEFjdGl2ZURPTU9iamVjdCogb2JqZWN0LCB2b2lk
KiB1cGNhc3RQb2ludGVyKQordm9pZCBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpkaWRDcmVhdGVB
Y3RpdmVET01PYmplY3QoQWN0aXZlRE9NT2JqZWN0KiBvYmplY3QsIHZvaWQqIHVwY2FzdFBvaW50
ZXIpCiB7CiAgICAgQVNTRVJUKG9iamVjdCk7CiAgICAgQVNTRVJUKHVwY2FzdFBvaW50ZXIpOwpA
QCAtMjk4LDcgKzI5OSw3IEBAIHZvaWQgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6Y3JlYXRlZEFj
dGkKICAgICBtX2FjdGl2ZURPTU9iamVjdHMuYWRkKG9iamVjdCwgdXBjYXN0UG9pbnRlcik7CiB9
CiAKLXZvaWQgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6ZGVzdHJveWVkQWN0aXZlRE9NT2JqZWN0
KEFjdGl2ZURPTU9iamVjdCogb2JqZWN0KQordm9pZCBTY3JpcHRFeGVjdXRpb25Db250ZXh0Ojp3
aWxsRGVzdHJveUFjdGl2ZURPTU9iamVjdChBY3RpdmVET01PYmplY3QqIG9iamVjdCkKIHsKICAg
ICBBU1NFUlQob2JqZWN0KTsKICAgICBpZiAobV9pdGVyYXRpbmdBY3RpdmVET01PYmplY3RzKQpA
QCAtMzA2LDYgKzMwNywxOSBAQCB2b2lkIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OmRlc3Ryb3ll
ZEFjCiAgICAgbV9hY3RpdmVET01PYmplY3RzLnJlbW92ZShvYmplY3QpOwogfQogCit2b2lkIFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQ6OmRpZENyZWF0ZURlc3RydWN0aW9uT2JzZXJ2ZXIoQ29udGV4
dERlc3RydWN0aW9uT2JzZXJ2ZXIqIG9ic2VydmVyKQoreworICAgIEFTU0VSVChvYnNlcnZlcik7
CisgICAgQVNTRVJUKCFtX2luRGVzdHJ1Y3Rvcik7CisgICAgbV9kZXN0cnVjdGlvbk9ic2VydmVy
cy5hZGQob2JzZXJ2ZXIpOworfQorCit2b2lkIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ6OndpbGxE
ZXN0cm95RGVzdHJ1Y3Rpb25PYnNlcnZlcihDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlciogb2Jz
ZXJ2ZXIpCit7CisgICAgQVNTRVJUKG9ic2VydmVyKTsKKyAgICBtX2Rlc3RydWN0aW9uT2JzZXJ2
ZXJzLnJlbW92ZShvYnNlcnZlcik7Cit9CisKIHZvaWQgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6
Y2xvc2VNZXNzYWdlUG9ydHMoKSB7CiAgICAgSGFzaFNldDxNZXNzYWdlUG9ydCo+OjppdGVyYXRv
ciBtZXNzYWdlUG9ydHNFbmQgPSBtX21lc3NhZ2VQb3J0cy5lbmQoKTsKICAgICBmb3IgKEhhc2hT
ZXQ8TWVzc2FnZVBvcnQqPjo6aXRlcmF0b3IgaXRlciA9IG1fbWVzc2FnZVBvcnRzLmJlZ2luKCk7
IGl0ZXIgIT0gbWVzc2FnZVBvcnRzRW5kOyArK2l0ZXIpIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2RvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaAkocmV2aXNpb24gOTg3NzUpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xMTQsMTEgKzExNCwxNSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHJlc3VtZUFjdGl2
ZURPTU9iamVjdHMoKTsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcEFjdGl2ZURPTU9iamVjdHMoKTsK
IAotICAgIHZvaWQgY3JlYXRlZEFjdGl2ZURPTU9iamVjdChBY3RpdmVET01PYmplY3QqLCB2b2lk
KiB1cGNhc3RQb2ludGVyKTsKLSAgICB2b2lkIGRlc3Ryb3llZEFjdGl2ZURPTU9iamVjdChBY3Rp
dmVET01PYmplY3QqKTsKKyAgICB2b2lkIGRpZENyZWF0ZUFjdGl2ZURPTU9iamVjdChBY3RpdmVE
T01PYmplY3QqLCB2b2lkKiB1cGNhc3RQb2ludGVyKTsKKyAgICB2b2lkIHdpbGxEZXN0cm95QWN0
aXZlRE9NT2JqZWN0KEFjdGl2ZURPTU9iamVjdCopOworCiAgICAgdHlwZWRlZiBjb25zdCBIYXNo
TWFwPEFjdGl2ZURPTU9iamVjdCosIHZvaWQqPiBBY3RpdmVET01PYmplY3RzTWFwOwogICAgIEFj
dGl2ZURPTU9iamVjdHNNYXAmIGFjdGl2ZURPTU9iamVjdHMoKSBjb25zdCB7IHJldHVybiBtX2Fj
dGl2ZURPTU9iamVjdHM7IH0KIAorICAgIHZvaWQgZGlkQ3JlYXRlRGVzdHJ1Y3Rpb25PYnNlcnZl
cihDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlciopOworICAgIHZvaWQgd2lsbERlc3Ryb3lEZXN0
cnVjdGlvbk9ic2VydmVyKENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyKik7CisKICAgICB2aXJ0
dWFsIHZvaWQgc3VzcGVuZFNjcmlwdGVkQW5pbWF0aW9uQ29udHJvbGxlckNhbGxiYWNrcygpIHsg
fQogICAgIHZpcnR1YWwgdm9pZCByZXN1bWVTY3JpcHRlZEFuaW1hdGlvbkNvbnRyb2xsZXJDYWxs
YmFja3MoKSB7IH0KIApAQCAtMTk5LDcgKzIwMyw3IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPENv
bnRlbnRTZWN1cml0eVBvbGljeT4gbV9jb250ZW50U2VjdXJpdHlQb2xpY3k7CiAKICAgICBIYXNo
U2V0PE1lc3NhZ2VQb3J0Kj4gbV9tZXNzYWdlUG9ydHM7Ci0KKyAgICBIYXNoU2V0PENvbnRleHRE
ZXN0cnVjdGlvbk9ic2VydmVyKj4gbV9kZXN0cnVjdGlvbk9ic2VydmVyczsKICAgICBIYXNoTWFw
PEFjdGl2ZURPTU9iamVjdCosIHZvaWQqPiBtX2FjdGl2ZURPTU9iamVjdHM7CiAgICAgYm9vbCBt
X2l0ZXJhdGluZ0FjdGl2ZURPTU9iamVjdHM7CiAgICAgYm9vbCBtX2luRGVzdHJ1Y3RvcjsK
</data>
<flag name="review"
          id="111151"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>