<?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>29040</bug_id>
          
          <creation_ts>2009-09-08 10:47:42 -0700</creation_ts>
          <short_desc>Geolocation does not correctly handle reentrant calls from callbacks</short_desc>
          <delta_ts>2009-09-10 10:17:18 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>28305</dependson>
          <blocked>27944</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Steve Block">steveblock</reporter>
          <assigned_to name="Steve Block">steveblock</assigned_to>
          <cc>andreip</cc>
    
    <cc>benm</cc>
    
    <cc>steveblock</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>145442</commentid>
    <comment_count>0</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2009-09-08 10:47:42 -0700</bug_when>
    <thetext>When Geolocation callbacks are made, currently running requests (oneShots and watchers) are stopped immediately afterwards. This means that if reentrant calls to Geolocation methods are made from the callbacks, any new requests started by those reentrant calls are immediately stopped.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145445</commentid>
    <comment_count>1</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2009-09-08 10:51:00 -0700</bug_when>
    <thetext>The tests for Bug 27944 require that this bug is fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145816</commentid>
    <comment_count>2</comment_count>
      <attachid>39275</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2009-09-09 10:18:06 -0700</bug_when>
    <thetext>Created attachment 39275
Patch 1 for bug 29040

Fixes bug and adds LayoutTests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146248</commentid>
    <comment_count>3</comment_count>
    <who name="Ben Murdoch">benm</who>
    <bug_when>2009-09-10 10:17:18 -0700</bug_when>
    <thetext>Landed as r48258.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39275</attachid>
            <date>2009-09-09 10:18:06 -0700</date>
            <delta_ts>2009-09-10 07:37:29 -0700</delta_ts>
            <desc>Patch 1 for bug 29040</desc>
            <filename>fixReentrantCallbacks.txt</filename>
            <type>text/plain</type>
            <size>14040</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0ODIxMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTggQEAKKzIwMDktMDktMDkgIFN0ZXZlIEJsb2NrICA8c3RldmVibG9ja0Bnb29n
bGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEdlb2xvY2F0aW9uIGRvZXMgbm90IGNvcnJlY3RseSBoYW5kbGUgcmVlbnRyYW50IGNhbGxzIGZy
b20gY2FsbGJhY2tzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjkwNDAKKworICAgICAgICBUZXN0czogZmFzdC9kb20vR2VvbG9jYXRpb24vcmVlbnRy
YW50LWVycm9yLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZG9tL0dlb2xvY2F0aW9uL3JlZW50
cmFudC1zdWNjZXNzLmh0bWwKKworICAgICAgICAqIHBhZ2UvR2VvbG9jYXRpb24uY3BwOiBNb2Rp
ZmllZC4KKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjpoYW5kbGVFcnJvcik6IE1vZGlm
aWVkLiBDYWxsIHNlbmRFcnJvciBkaXJlY3RseSwgY2xlYXJpbmcgbm90aWZpZXIgbGlzdHMgYmVm
b3JlIG1ha2luZyBjYWxsYmFjay4KKyAgICAgICAgKFdlYkNvcmU6Okdlb2xvY2F0aW9uOjptYWtl
U3VjY2Vzc0NhbGxiYWNrcyk6IE1vZGlmaWVkLiBDYWxsIHNlbmRQb3NpdGlvbiBkaXJlY3RseSwg
Y2xlYXJpbmcgbm90aWZpZXIgbGlzdHMgYmVmb3JlIG1ha2luZyBjYWxsYmFjay4KKyAgICAgICAg
KiBwYWdlL0dlb2xvY2F0aW9uLmg6IE1vZGlmaWVkLiBEZWxldGVkIHNlbmRFcnJvclRvWFggYW5k
IHNlbmRQb3NpdGlvblRvWFhYIG1ldGhvZHMuCisKIDIwMDktMDktMDkgIFN0ZXZlIEJsb2NrICA8
c3RldmVibG9ja0Bnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGgu
CkluZGV4OiBXZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcGFnZS9HZW9sb2NhdGlvbi5jcHAJKHJldmlzaW9uIDQ4MjA5KQorKysgV2ViQ29yZS9wYWdl
L0dlb2xvY2F0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTYyLDIyICsxNjIsNiBAQCB2b2lk
IEdlb2xvY2F0aW9uOjpzZW5kRXJyb3IoVmVjdG9yPFJlZlB0CiAgICAgIH0KIH0KIAotdm9pZCBH
ZW9sb2NhdGlvbjo6c2VuZEVycm9yVG9PbmVTaG90cyhQb3NpdGlvbkVycm9yKiBlcnJvcikKLXsK
LSAgICBWZWN0b3I8UmVmUHRyPEdlb05vdGlmaWVyPiA+IGNvcHk7Ci0gICAgY29weVRvVmVjdG9y
KG1fb25lU2hvdHMsIGNvcHkpOwotCi0gICAgc2VuZEVycm9yKGNvcHksIGVycm9yKTsKLX0KLQot
dm9pZCBHZW9sb2NhdGlvbjo6c2VuZEVycm9yVG9XYXRjaGVycyhQb3NpdGlvbkVycm9yKiBlcnJv
cikKLXsKLSAgICBWZWN0b3I8UmVmUHRyPEdlb05vdGlmaWVyPiA+IGNvcHk7Ci0gICAgY29weVZh
bHVlc1RvVmVjdG9yKG1fd2F0Y2hlcnMsIGNvcHkpOwotCi0gICAgc2VuZEVycm9yKGNvcHksIGVy
cm9yKTsKLX0KLQogdm9pZCBHZW9sb2NhdGlvbjo6c2VuZFBvc2l0aW9uKFZlY3RvcjxSZWZQdHI8
R2VvTm90aWZpZXI+ID4mIG5vdGlmaWVycywgR2VvcG9zaXRpb24qIHBvc2l0aW9uKQogewogICAg
IFZlY3RvcjxSZWZQdHI8R2VvTm90aWZpZXI+ID46OmNvbnN0X2l0ZXJhdG9yIGVuZCA9IG5vdGlm
aWVycy5lbmQoKTsKQEAgLTE5NSwyMiArMTc5LDYgQEAgdm9pZCBHZW9sb2NhdGlvbjo6c2VuZFBv
c2l0aW9uKFZlY3RvcjxSZQogICAgIH0KIH0KIAotdm9pZCBHZW9sb2NhdGlvbjo6c2VuZFBvc2l0
aW9uVG9PbmVTaG90cyhHZW9wb3NpdGlvbiogcG9zaXRpb24pCi17Ci0gICAgVmVjdG9yPFJlZlB0
cjxHZW9Ob3RpZmllcj4gPiBjb3B5OwotICAgIGNvcHlUb1ZlY3RvcihtX29uZVNob3RzLCBjb3B5
KTsKLSAgICAKLSAgICBzZW5kUG9zaXRpb24oY29weSwgcG9zaXRpb24pOwotfQotCi12b2lkIEdl
b2xvY2F0aW9uOjpzZW5kUG9zaXRpb25Ub1dhdGNoZXJzKEdlb3Bvc2l0aW9uKiBwb3NpdGlvbikK
LXsKLSAgICBWZWN0b3I8UmVmUHRyPEdlb05vdGlmaWVyPiA+IGNvcHk7Ci0gICAgY29weVZhbHVl
c1RvVmVjdG9yKG1fd2F0Y2hlcnMsIGNvcHkpOwotICAgIAotICAgIHNlbmRQb3NpdGlvbihjb3B5
LCBwb3NpdGlvbik7Ci19Ci0KIHZvaWQgR2VvbG9jYXRpb246OnN0YXJ0VGltZXIoVmVjdG9yPFJl
ZlB0cjxHZW9Ob3RpZmllcj4gPiYgbm90aWZpZXJzKQogewogICAgIFZlY3RvcjxSZWZQdHI8R2Vv
Tm90aWZpZXI+ID46OmNvbnN0X2l0ZXJhdG9yIGVuZCA9IG5vdGlmaWVycy5lbmQoKTsKQEAgLTI0
NiwxMyArMjE0LDIyIEBAIHZvaWQgR2VvbG9jYXRpb246OmhhbmRsZUVycm9yKFBvc2l0aW9uRXIK
IHsKICAgICBBU1NFUlQoZXJyb3IpOwogICAgIAotICAgIHNlbmRFcnJvclRvT25lU2hvdHMoZXJy
b3IpOyAgICAKLSAgICBzZW5kRXJyb3JUb1dhdGNoZXJzKGVycm9yKTsKKyAgICBWZWN0b3I8UmVm
UHRyPEdlb05vdGlmaWVyPiA+IG9uZVNob3RzQ29weTsKKyAgICBjb3B5VG9WZWN0b3IobV9vbmVT
aG90cywgb25lU2hvdHNDb3B5KTsKKworICAgIFZlY3RvcjxSZWZQdHI8R2VvTm90aWZpZXI+ID4g
d2F0Y2hlcnNDb3B5OworICAgIGNvcHlWYWx1ZXNUb1ZlY3RvcihtX3dhdGNoZXJzLCB3YXRjaGVy
c0NvcHkpOwogCisgICAgLy8gQ2xlYXIgdGhlIGxpc3RzIGJlZm9yZSB3ZSBtYWtlIHRoZSBjYWxs
YmFja3MsIHRvIGF2b2lkIGNsZWFyaW5nIG5vdGlmaWVycworICAgIC8vIGFkZGVkIGJ5IGNhbGxz
IHRvIEdlb2xvY2F0aW9uIG1ldGhvZHMgZnJvbSB0aGUgY2FsbGJhY2tzLCBhbmQgdG8gcHJldmVu
dAorICAgIC8vIGZ1cnRoZXIgY2FsbGJhY2tzIHRvIHRoZXNlIG5vdGlmaWVycy4KICAgICBtX29u
ZVNob3RzLmNsZWFyKCk7CiAgICAgaWYgKGVycm9yLT5pc0ZhdGFsKCkpCiAgICAgICAgIG1fd2F0
Y2hlcnMuY2xlYXIoKTsKIAorICAgIHNlbmRFcnJvcihvbmVTaG90c0NvcHksIGVycm9yKTsKKyAg
ICBzZW5kRXJyb3Iod2F0Y2hlcnNDb3B5LCBlcnJvcik7CisKICAgICBpZiAoIWhhc0xpc3RlbmVy
cygpKQogICAgICAgICBtX3NlcnZpY2UtPnN0b3BVcGRhdGluZygpOwogfQpAQCAtMjk3LDExICsy
NzQsMjAgQEAgdm9pZCBHZW9sb2NhdGlvbjo6bWFrZVN1Y2Nlc3NDYWxsYmFja3MoKQogICAgIEFT
U0VSVChtX3NlcnZpY2UtPmxhc3RQb3NpdGlvbigpKTsKICAgICBBU1NFUlQoaXNBbGxvd2VkKCkp
OwogICAgIAotICAgIHNlbmRQb3NpdGlvblRvT25lU2hvdHMobV9zZXJ2aWNlLT5sYXN0UG9zaXRp
b24oKSk7Ci0gICAgc2VuZFBvc2l0aW9uVG9XYXRjaGVycyhtX3NlcnZpY2UtPmxhc3RQb3NpdGlv
bigpKTsKLSAgICAgICAgCisgICAgVmVjdG9yPFJlZlB0cjxHZW9Ob3RpZmllcj4gPiBvbmVTaG90
c0NvcHk7CisgICAgY29weVRvVmVjdG9yKG1fb25lU2hvdHMsIG9uZVNob3RzQ29weSk7CisgICAg
CisgICAgVmVjdG9yPFJlZlB0cjxHZW9Ob3RpZmllcj4gPiB3YXRjaGVyc0NvcHk7CisgICAgY29w
eVZhbHVlc1RvVmVjdG9yKG1fd2F0Y2hlcnMsIHdhdGNoZXJzQ29weSk7CisgICAgCisgICAgLy8g
Q2xlYXIgdGhlIGxpc3RzIGJlZm9yZSB3ZSBtYWtlIHRoZSBjYWxsYmFja3MsIHRvIGF2b2lkIGNs
ZWFyaW5nIG5vdGlmaWVycworICAgIC8vIGFkZGVkIGJ5IGNhbGxzIHRvIEdlb2xvY2F0aW9uIG1l
dGhvZHMgZnJvbSB0aGUgY2FsbGJhY2tzLCBhbmQgdG8gcHJldmVudAorICAgIC8vIGZ1cnRoZXIg
Y2FsbGJhY2tzIHRvIHRoZXNlIG5vdGlmaWVycy4KICAgICBtX29uZVNob3RzLmNsZWFyKCk7CiAK
KyAgICBzZW5kUG9zaXRpb24ob25lU2hvdHNDb3B5LCBtX3NlcnZpY2UtPmxhc3RQb3NpdGlvbigp
KTsKKyAgICBzZW5kUG9zaXRpb24od2F0Y2hlcnNDb3B5LCBtX3NlcnZpY2UtPmxhc3RQb3NpdGlv
bigpKTsKKwogICAgIGlmICghaGFzTGlzdGVuZXJzKCkpCiAgICAgICAgIG1fc2VydmljZS0+c3Rv
cFVwZGF0aW5nKCk7CiB9CkluZGV4OiBXZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uaAkocmV2aXNpb24gNDgyMDkpCisrKyBX
ZWJDb3JlL3BhZ2UvR2VvbG9jYXRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtOTAsMTIgKzkwLDcg
QEAgcHJpdmF0ZToKICAgICBib29sIGhhc0xpc3RlbmVycygpIGNvbnN0IHsgcmV0dXJuICFtX29u
ZVNob3RzLmlzRW1wdHkoKSB8fCAhbV93YXRjaGVycy5pc0VtcHR5KCk7IH0KIAogICAgIHZvaWQg
c2VuZEVycm9yKFZlY3RvcjxSZWZQdHI8R2VvTm90aWZpZXI+ID4mLCBQb3NpdGlvbkVycm9yKik7
Ci0gICAgdm9pZCBzZW5kRXJyb3JUb09uZVNob3RzKFBvc2l0aW9uRXJyb3IqKTsKLSAgICB2b2lk
IHNlbmRFcnJvclRvV2F0Y2hlcnMoUG9zaXRpb25FcnJvciopOwotICAgIAogICAgIHZvaWQgc2Vu
ZFBvc2l0aW9uKFZlY3RvcjxSZWZQdHI8R2VvTm90aWZpZXI+ID4mLCBHZW9wb3NpdGlvbiopOwot
ICAgIHZvaWQgc2VuZFBvc2l0aW9uVG9PbmVTaG90cyhHZW9wb3NpdGlvbiopOwotICAgIHZvaWQg
c2VuZFBvc2l0aW9uVG9XYXRjaGVycyhHZW9wb3NpdGlvbiopOwogICAgIAogICAgIHN0YXRpYyB2
b2lkIHN0YXJ0VGltZXIoVmVjdG9yPFJlZlB0cjxHZW9Ob3RpZmllcj4gPiYpOwogICAgIHZvaWQg
c3RhcnRUaW1lcnNGb3JPbmVTaG90cygpOwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gNDgyMTIpCisrKyBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOCBAQAorMjAw
OS0wOS0wOSAgU3RldmUgQmxvY2sgIDxzdGV2ZWJsb2NrQGdvb2dsZS5jb20+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgR2VvbG9jYXRpb24gZG9lcyBu
b3QgY29ycmVjdGx5IGhhbmRsZSByZWVudHJhbnQgY2FsbHMgZnJvbSBjYWxsYmFja3MuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTA0MAorCisgICAg
ICAgICogZmFzdC9kb20vR2VvbG9jYXRpb24vcmVzb3VyY2VzL3JlZW50cmFudC1lcnJvci5qczog
QWRkZWQuIFRlc3RzIHRoYXQgcmVlbnRyYW50IGNhbGxzIGZyb20gdGhlIGVycm9yIGNhbGxiYWNr
IGFyZSBPSy4KKyAgICAgICAgKiBmYXN0L2RvbS9HZW9sb2NhdGlvbi9yZWVudHJhbnQtZXJyb3Iu
aHRtbDogQWRkZWQuIFdyYXBwZXIgZm9yIGFib3ZlIHRlc3QuCisgICAgICAgICogZmFzdC9kb20v
R2VvbG9jYXRpb24vcmVlbnRyYW50LWVycm9yLWV4cGVjdGVkLnR4dDogQWRkZWQuIEV4cGVjdGVk
IHJlc3VsdCBmb3IgYWJvdmUgdGVzdC4KKyAgICAgICAgKiBmYXN0L2RvbS9HZW9sb2NhdGlvbi9y
ZXNvdXJjZXMvcmVlbnRyYW50LXN1Y2Nlc3MuanM6IEFkZGVkLiBUZXN0cyB0aGF0IHJlZW50cmFu
dCBjYWxscyBmcm9tIHRoZSBzdWNjZXNzIGNhbGxiYWNrIGFyZSBPSy4KKyAgICAgICAgKiBmYXN0
L2RvbS9HZW9sb2NhdGlvbi9yZWVudHJhbnQtc3VjY2Vzcy5odG1sOiBBZGRlZC4gV3JhcHBlciBm
b3IgYWJvdmUgdGVzdC4KKyAgICAgICAgKiBmYXN0L2RvbS9HZW9sb2NhdGlvbi9yZWVudHJhbnQt
c3VjY2Vzcy1leHBlY3RlZC50eHQ6IEFkZGVkLiBFeHBlY3RlZCByZXN1bHQgZm9yIGFib3ZlIHRl
c3QuCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6IE1vZGlmaWVkLiBTa2lwcyBhYm92
ZSB0ZXN0cy4KKwogMjAwOS0wOS0wOSAgRXJpayBBcnZpZHNzb24gIDxhcnZAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhdmlkIExldmluLgpJbmRleDogTGF5b3V0VGVzdHMv
ZmFzdC9kb20vR2VvbG9jYXRpb24vcmVlbnRyYW50LWVycm9yLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9HZW9sb2NhdGlvbi9yZWVudHJhbnQtZXJyb3It
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vR2VvbG9j
YXRpb24vcmVlbnRyYW50LWVycm9yLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwyMSBAQAorVGVzdHMgdGhhdCByZWVudHJhbnQgY2FsbHMgdG8gR2VvbG9jYXRpb24gbWV0aG9k
cyBmcm9tIHRoZSBlcnJvciBjYWxsYmFjayBhcmUgT0suCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCitQQVNTIGVycm9yLmNvZGUgaXMgbW9ja0NvZGUKK1BBU1MgZXJyb3IubWVzc2Fn
ZSBpcyBtb2NrTWVzc2FnZQorUEFTUyBlcnJvci5VTktOT1dOX0VSUk9SIGlzIDAKK1BBU1MgZXJy
b3IuUEVSTUlTU0lPTl9ERU5JRUQgaXMgMQorUEFTUyBlcnJvci5QT1NJVElPTl9VTkFWQUlMQUJM
RSBpcyAyCitQQVNTIGVycm9yLlRJTUVPVVQgaXMgMworCitQQVNTIGVycm9yLmNvZGUgaXMgbW9j
a0NvZGUKK1BBU1MgZXJyb3IubWVzc2FnZSBpcyBtb2NrTWVzc2FnZQorUEFTUyBlcnJvci5VTktO
T1dOX0VSUk9SIGlzIDAKK1BBU1MgZXJyb3IuUEVSTUlTU0lPTl9ERU5JRUQgaXMgMQorUEFTUyBl
cnJvci5QT1NJVElPTl9VTkFWQUlMQUJMRSBpcyAyCitQQVNTIGVycm9yLlRJTUVPVVQgaXMgMwor
CitURVNUIENPTVBMRVRFCisKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0dlb2xvY2F0aW9u
L3JlZW50cmFudC1lcnJvci5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9t
L0dlb2xvY2F0aW9uL3JlZW50cmFudC1lcnJvci5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvZmFzdC9kb20vR2VvbG9jYXRpb24vcmVlbnRyYW50LWVycm9yLmh0bWwJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMTIgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFRE
IEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxz
Y3JpcHQgc3JjPSJyZXNvdXJjZXMvcmVlbnRyYW50LWVycm9yLmpzIj48L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0dlb2xvY2F0aW9uL3JlZW50
cmFudC1zdWNjZXNzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9HZW9sb2NhdGlvbi9yZWVudHJhbnQtc3VjY2Vzcy1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9HZW9sb2NhdGlvbi9yZWVudHJhbnQtc3VjY2Vz
cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTUgQEAKK1Rlc3RzIHRoYXQg
cmVlbnRyYW50IGNhbGxzIHRvIEdlb2xvY2F0aW9uIG1ldGhvZHMgZnJvbSB0aGUgc3VjY2VzcyBj
YWxsYmFjayBhcmUgT0suCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHBv
c2l0aW9uLmNvb3Jkcy5sYXRpdHVkZSBpcyBtb2NrTGF0aXR1ZGUKK1BBU1MgcG9zaXRpb24uY29v
cmRzLmxvbmdpdHVkZSBpcyBtb2NrTG9uZ2l0dWRlCitQQVNTIHBvc2l0aW9uLmNvb3Jkcy5hY2N1
cmFjeSBpcyBtb2NrQWNjdXJhY3kKKworUEFTUyBwb3NpdGlvbi5jb29yZHMubGF0aXR1ZGUgaXMg
bW9ja0xhdGl0dWRlCitQQVNTIHBvc2l0aW9uLmNvb3Jkcy5sb25naXR1ZGUgaXMgbW9ja0xvbmdp
dHVkZQorUEFTUyBwb3NpdGlvbi5jb29yZHMuYWNjdXJhY3kgaXMgbW9ja0FjY3VyYWN5CisKK1RF
U1QgQ09NUExFVEUKKwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vR2VvbG9jYXRpb24vcmVl
bnRyYW50LXN1Y2Nlc3MuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9H
ZW9sb2NhdGlvbi9yZWVudHJhbnQtc3VjY2Vzcy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvZmFzdC9kb20vR2VvbG9jYXRpb24vcmVlbnRyYW50LXN1Y2Nlc3MuaHRtbAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwxMiBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9E
VEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJl
Zj0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2Pgor
PHNjcmlwdCBzcmM9InJlc291cmNlcy9yZWVudHJhbnQtc3VjY2Vzcy5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9HZW9sb2NhdGlvbi9y
ZXNvdXJjZXMvcmVlbnRyYW50LWVycm9yLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zh
c3QvZG9tL0dlb2xvY2F0aW9uL3Jlc291cmNlcy9yZWVudHJhbnQtZXJyb3IuanMJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9HZW9sb2NhdGlvbi9yZXNvdXJjZXMvcmVlbnRy
YW50LWVycm9yLmpzCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDUyIEBACitkZXNjcmlwdGlvbigi
VGVzdHMgdGhhdCByZWVudHJhbnQgY2FsbHMgdG8gR2VvbG9jYXRpb24gbWV0aG9kcyBmcm9tIHRo
ZSBlcnJvciBjYWxsYmFjayBhcmUgT0suIik7CisKK3ZhciBtb2NrQ29kZSA9IDA7Cit2YXIgbW9j
a01lc3NhZ2UgPSAndGVzdCc7CisKK3dpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5zZXRNb2Nr
R2VvbG9jYXRpb25FcnJvcihtb2NrQ29kZSwgbW9ja01lc3NhZ2UpOworCit2YXIgZXJyb3I7Cit2
YXIgZXJyb3JDYWxsYmFja0ludm9rZWQgPSBmYWxzZTsKK25hdmlnYXRvci5nZW9sb2NhdGlvbi5n
ZXRDdXJyZW50UG9zaXRpb24oZnVuY3Rpb24ocCkgeworICAgIHRlc3RGYWlsZWQoJ1N1Y2Nlc3Mg
Y2FsbGJhY2sgaW52b2tlZCB1bmV4cGVjdGVkbHknKTsKKyAgICB3aW5kb3cubGF5b3V0VGVzdENv
bnRyb2xsZXIubm90aWZ5RG9uZSgpOworfSwgZnVuY3Rpb24oZSkgeworICAgIGlmIChlcnJvckNh
bGxiYWNrSW52b2tlZCkgeworICAgICAgICB0ZXN0RmFpbGVkKCdFcnJvciBjYWxsYmFjayBpbnZv
a2VkIHVuZXhwZWN0ZWRseScpOworICAgICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIu
bm90aWZ5RG9uZSgpOworICAgIH0KKyAgICBlcnJvckNhbGxiYWNrSW52b2tlZCA9IHRydWU7CisK
KyAgICBlcnJvciA9IGU7CisgICAgc2hvdWxkQmUoJ2Vycm9yLmNvZGUnLCAnbW9ja0NvZGUnKTsK
KyAgICBzaG91bGRCZSgnZXJyb3IubWVzc2FnZScsICdtb2NrTWVzc2FnZScpOworICAgIHNob3Vs
ZEJlKCdlcnJvci5VTktOT1dOX0VSUk9SJywgJzAnKTsKKyAgICBzaG91bGRCZSgnZXJyb3IuUEVS
TUlTU0lPTl9ERU5JRUQnLCAnMScpOworICAgIHNob3VsZEJlKCdlcnJvci5QT1NJVElPTl9VTkFW
QUlMQUJMRScsICcyJyk7CisgICAgc2hvdWxkQmUoJ2Vycm9yLlRJTUVPVVQnLCAnMycpOworICAg
IGRlYnVnKCcnKTsKKyAgICBjb250aW51ZVRlc3QoKTsKK30pOworCitmdW5jdGlvbiBjb250aW51
ZVRlc3QoKSB7CisgICAgbW9ja0NvZGUgKz0gMTsKKyAgICBtb2NrTWVzc2FnZSArPSAnIHJlcGVh
dCc7CisKKyAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0TW9ja0dlb2xvY2F0aW9u
RXJyb3IobW9ja0NvZGUsIG1vY2tNZXNzYWdlKTsKKworICAgIG5hdmlnYXRvci5nZW9sb2NhdGlv
bi5nZXRDdXJyZW50UG9zaXRpb24oZnVuY3Rpb24ocCkgeworICAgICAgICB0ZXN0RmFpbGVkKCdT
dWNjZXNzIGNhbGxiYWNrIGludm9rZWQgdW5leHBlY3RlZGx5Jyk7CisgICAgICAgIHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgfSwgZnVuY3Rpb24oZSkgewor
ICAgICAgICBlcnJvciA9IGU7CisgICAgICAgIHNob3VsZEJlKCdlcnJvci5jb2RlJywgJ21vY2tD
b2RlJyk7CisgICAgICAgIHNob3VsZEJlKCdlcnJvci5tZXNzYWdlJywgJ21vY2tNZXNzYWdlJyk7
CisgICAgICAgIHNob3VsZEJlKCdlcnJvci5VTktOT1dOX0VSUk9SJywgJzAnKTsKKyAgICAgICAg
c2hvdWxkQmUoJ2Vycm9yLlBFUk1JU1NJT05fREVOSUVEJywgJzEnKTsKKyAgICAgICAgc2hvdWxk
QmUoJ2Vycm9yLlBPU0lUSU9OX1VOQVZBSUxBQkxFJywgJzInKTsKKyAgICAgICAgc2hvdWxkQmUo
J2Vycm9yLlRJTUVPVVQnLCAnMycpOworICAgICAgICBkZWJ1ZygnPGJyIC8+PHNwYW4gY2xhc3M9
InBhc3MiPlRFU1QgQ09NUExFVEU8L3NwYW4+Jyk7CisgICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgfSk7Cit9Cit3aW5kb3cubGF5b3V0VGVzdENv
bnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vR2Vv
bG9jYXRpb24vcmVzb3VyY2VzL3JlZW50cmFudC1zdWNjZXNzLmpzCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2Zhc3QvZG9tL0dlb2xvY2F0aW9uL3Jlc291cmNlcy9yZWVudHJhbnQtc3VjY2Vz
cy5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL0dlb2xvY2F0aW9uL3Jl
c291cmNlcy9yZWVudHJhbnQtc3VjY2Vzcy5qcwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw1MiBA
QAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgcmVlbnRyYW50IGNhbGxzIHRvIEdlb2xvY2F0aW9u
IG1ldGhvZHMgZnJvbSB0aGUgc3VjY2VzcyBjYWxsYmFjayBhcmUgT0suIik7CisKK3ZhciBtb2Nr
TGF0aXR1ZGUgPSA1MS40Nzg7Cit2YXIgbW9ja0xvbmdpdHVkZSA9IC0wLjE2NjsKK3ZhciBtb2Nr
QWNjdXJhY3kgPSAxMDAuMDsKKword2luZG93LmxheW91dFRlc3RDb250cm9sbGVyLnNldEdlb2xv
Y2F0aW9uUGVybWlzc2lvbih0cnVlKTsKK3dpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5zZXRN
b2NrR2VvbG9jYXRpb25Qb3NpdGlvbihtb2NrTGF0aXR1ZGUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9ja0xvbmdpdHVkZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2NrQWNj
dXJhY3kpOworCit2YXIgcG9zaXRpb247Cit2YXIgc3VjY2Vzc0NhbGxiYWNrSW52b2tlZCA9IGZh
bHNlOworbmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihmdW5jdGlvbihw
KSB7CisgICAgaWYgKHN1Y2Nlc3NDYWxsYmFja0ludm9rZWQpIHsKKyAgICAgICAgdGVzdEZhaWxl
ZCgnU3VjY2VzcyBjYWxsYmFjayBpbnZva2VkIHVuZXhwZWN0ZWRseScpOworICAgICAgICB3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgIH0KKyAgICBzdWNjZXNz
Q2FsbGJhY2tJbnZva2VkID0gdHJ1ZTsKKworICAgIHBvc2l0aW9uID0gcDsKKyAgICBzaG91bGRC
ZSgncG9zaXRpb24uY29vcmRzLmxhdGl0dWRlJywgJ21vY2tMYXRpdHVkZScpOworICAgIHNob3Vs
ZEJlKCdwb3NpdGlvbi5jb29yZHMubG9uZ2l0dWRlJywgJ21vY2tMb25naXR1ZGUnKTsKKyAgICBz
aG91bGRCZSgncG9zaXRpb24uY29vcmRzLmFjY3VyYWN5JywgJ21vY2tBY2N1cmFjeScpOworICAg
IGRlYnVnKCcnKTsKKyAgICBjb250aW51ZVRlc3QoKTsKK30sIGZ1bmN0aW9uKGUpIHsKKyAgICB0
ZXN0RmFpbGVkKCdFcnJvciBjYWxsYmFjayBpbnZva2VkIHVuZXhwZWN0ZWRseScpOworICAgIHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cit9KTsKKworZnVuY3Rpb24g
Y29udGludWVUZXN0KCkgeworICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5zZXRNb2Nr
R2VvbG9jYXRpb25Qb3NpdGlvbigrK21vY2tMYXRpdHVkZSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyttb2NrTG9uZ2l0dWRlLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICArK21vY2tBY2N1cmFjeSk7CisKKyAgICBuYXZpZ2F0b3IuZ2VvbG9jYXRpb24uZ2V0Q3VycmVu
dFBvc2l0aW9uKGZ1bmN0aW9uKHApIHsKKyAgICAgICAgcG9zaXRpb24gPSBwOworICAgICAgICBz
aG91bGRCZSgncG9zaXRpb24uY29vcmRzLmxhdGl0dWRlJywgJ21vY2tMYXRpdHVkZScpOworICAg
ICAgICBzaG91bGRCZSgncG9zaXRpb24uY29vcmRzLmxvbmdpdHVkZScsICdtb2NrTG9uZ2l0dWRl
Jyk7CisgICAgICAgIHNob3VsZEJlKCdwb3NpdGlvbi5jb29yZHMuYWNjdXJhY3knLCAnbW9ja0Fj
Y3VyYWN5Jyk7CisgICAgICAgIGRlYnVnKCc8YnIgLz48c3BhbiBjbGFzcz0icGFzcyI+VEVTVCBD
T01QTEVURTwvc3Bhbj4nKTsKKyAgICAgICAgd2luZG93LmxheW91dFRlc3RDb250cm9sbGVyLm5v
dGlmeURvbmUoKTsKKyAgICB9LCBmdW5jdGlvbihlKSB7CisgICAgICAgIHRlc3RGYWlsZWQoJ0Vy
cm9yIGNhbGxiYWNrIGludm9rZWQgdW5leHBlY3RlZGx5Jyk7CisgICAgICAgIHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgfSk7Cit9Cit3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworCisKKwpJbmRleDogTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z3RrL1NraXBwZWQJKHJldmlzaW9uIDQ4MjA5KQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3Rr
L1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTE1NzIsNiArMTU3Miw4IEBAIGZhc3QvZG9tL2Zy
YW1lLWxvYWRpbmctdmlhLWRvY3VtZW50LXdyaXQKIGZhc3QvZG9tL0dlb2xvY2F0aW9uL2Vycm9y
Lmh0bWwKIGZhc3QvZG9tL0dlb2xvY2F0aW9uL3Blcm1pc3Npb24tZGVuaWVkLmh0bWwKIGZhc3Qv
ZG9tL0dlb2xvY2F0aW9uL3Blcm1pc3Npb24tZGVuaWVkLXN0b3BzLXdhdGNoZXMuaHRtbAorZmFz
dC9kb20vR2VvbG9jYXRpb24vcmVlbnRyYW50LWVycm9yLmh0bWwKK2Zhc3QvZG9tL0dlb2xvY2F0
aW9uL3JlZW50cmFudC1zdWNjZXNzLmh0bWwKIGZhc3QvZG9tL0dlb2xvY2F0aW9uL3N1Y2Nlc3Mu
aHRtbAogZmFzdC9kb20vR2VvbG9jYXRpb24vd2F0Y2guaHRtbAogZmFzdC9kb20vZ2V0Qm91bmRp
bmdDbGllbnRSZWN0Lmh0bWwK
</data>
<flag name="review"
          id="20344"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>