<?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>22361</bug_id>
          
          <creation_ts>2008-11-19 11:54:57 -0800</creation_ts>
          <short_desc>A little more RegExp refactoring</short_desc>
          <delta_ts>2008-11-19 13:08:58 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</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="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>99352</commentid>
    <comment_count>0</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2008-11-19 11:54:57 -0800</bug_when>
    <thetext>Patch coming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>99353</commentid>
    <comment_count>1</comment_count>
      <attachid>25283</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2008-11-19 11:55:40 -0800</bug_when>
    <thetext>Created attachment 25283
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>99356</commentid>
    <comment_count>2</comment_count>
      <attachid>25283</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-11-19 12:06:49 -0800</bug_when>
    <thetext>Comment on attachment 25283
patch

&gt; +        Made the error message you see when match has no input a little more
&gt; +        informative, as in Firefox.

Does this affect any regression test results?

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>99373</commentid>
    <comment_count>3</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2008-11-19 13:08:58 -0800</bug_when>
    <thetext>Committed revision 38603.

There was no existing test, so I added one.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25283</attachid>
            <date>2008-11-19 11:55:40 -0800</date>
            <delta_ts>2008-11-19 12:06:49 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch-regexp.txt</filename>
            <type>text/plain</type>
            <size>8700</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IENoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBDaGFuZ2VMb2cJKHJldmlzaW9uIDM4NjAw
KQorKysgQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzAgQEAKKzIwMDgtMTEt
MTkgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIEEgbGl0dGxlIG1vcmUgUmVn
RXhwIHJlZmFjdG9yaW5nLgorICAgICAgICAKKyAgICAgICAgQ29uc2lzdGVudGx5IG5hbWVkIHZh
cmlhYmxlcyBob2xkaW5nIHRoZSBzdGFydGluZyBwb3NpdGlvbiBhdCB3aGljaAorICAgICAgICBy
ZWdleHAgbWF0Y2hpbmcgc2hvdWxkIGJlZ2luIHRvICJzdGFydE9mZnNldCIuCisgICAgICAgIAor
ICAgICAgICBBIGZldyBtb3JlICJyZWdFeHBPYmplY3QiID0+ICJyZWdFeHBDb25zdHJ1Y3RvciIg
Y2hhbmdlcy4KKyAgICAgICAgCisgICAgICAgIFJlZmFjdG9yZWQgUmVnRXhwT2JqZWN0OjptYXRj
aCBmb3IgY2xhcml0eSwgYW5kIHJlcGxhY2VkIGEgc2xvdyAiZ2V0IgorICAgICAgICBvZiB0aGUg
Imdsb2JhbCIgcHJvcGVydHkgd2l0aCBhIGZhc3QgYWNjZXNzIHRvIHRoZSBnbG9iYWwgYml0Lgor
ICAgICAgICAKKyAgICAgICAgTWFkZSB0aGUgZXJyb3IgbWVzc2FnZSB5b3Ugc2VlIHdoZW4gbWF0
Y2ggaGFzIG5vIGlucHV0IGEgbGl0dGxlIG1vcmUKKyAgICAgICAgaW5mb3JtYXRpdmUsIGFzIGlu
IEZpcmVmb3guCisKKyAgICAgICAgKiBydW50aW1lL1JlZ0V4cC5jcHA6CisgICAgICAgIChKU0M6
OlJlZ0V4cDo6bWF0Y2gpOgorICAgICAgICAqIHJ1bnRpbWUvUmVnRXhwLmg6CisgICAgICAgICog
cnVudGltZS9SZWdFeHBPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpSZWdFeHBPYmplY3Q6Om1h
dGNoKToKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgIChK
U0M6OnN0cmluZ1Byb3RvRnVuY1JlcGxhY2UpOgorICAgICAgICAoSlNDOjpzdHJpbmdQcm90b0Z1
bmNNYXRjaCk6CisgICAgICAgIChKU0M6OnN0cmluZ1Byb3RvRnVuY1NlYXJjaCk6CisKIDIwMDgt
MTEtMTkgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBTYW0gV2VpbmlnLgpJbmRleDogcnVudGltZS9SZWdFeHAuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIHJ1bnRpbWUvUmVnRXhwLmNwcAkocmV2aXNpb24gMzg1OTkpCisrKyBydW50aW1lL1JlZ0V4
cC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExMywxNCArMTEzLDE0IEBAIFJlZ0V4cDo6flJlZ0V4
cCgpCiAjZW5kaWYKIH0KIAotaW50IFJlZ0V4cDo6bWF0Y2goY29uc3QgVVN0cmluZyYgcywgaW50
IGksIE93bkFycmF5UHRyPGludD4qIG92ZWN0b3IpCitpbnQgUmVnRXhwOjptYXRjaChjb25zdCBV
U3RyaW5nJiBzLCBpbnQgc3RhcnRPZmZzZXQsIE93bkFycmF5UHRyPGludD4qIG92ZWN0b3IpCiB7
Ci0gICAgaWYgKGkgPCAwKQotICAgICAgICBpID0gMDsKKyAgICBpZiAoc3RhcnRPZmZzZXQgPCAw
KQorICAgICAgICBzdGFydE9mZnNldCA9IDA7CiAgICAgaWYgKG92ZWN0b3IpCiAgICAgICAgIG92
ZWN0b3ItPmNsZWFyKCk7CiAKLSAgICBpZiAoaSA+IHMuc2l6ZSgpIHx8IHMuaXNOdWxsKCkpCisg
ICAgaWYgKHN0YXJ0T2Zmc2V0ID4gcy5zaXplKCkgfHwgcy5pc051bGwoKSkKICAgICAgICAgcmV0
dXJuIC0xOwogCiAjaWYgRU5BQkxFKFdSRUMpCkBAIC0xMzYsNyArMTM2LDcgQEAgaW50IFJlZ0V4
cDo6bWF0Y2goY29uc3QgVVN0cmluZyYgcywgaW50IAogICAgICAgICBlbHNlCiAgICAgICAgICAg
ICBvdmVjdG9yLT5zZXQob2Zmc2V0VmVjdG9yKTsKIAotICAgICAgICBpbnQgcmVzdWx0ID0gbV93
cmVjRnVuY3Rpb24ocy5kYXRhKCksIGksIHMuc2l6ZSgpLCBvZmZzZXRWZWN0b3IpOworICAgICAg
ICBpbnQgcmVzdWx0ID0gbV93cmVjRnVuY3Rpb24ocy5kYXRhKCksIHN0YXJ0T2Zmc2V0LCBzLnNp
emUoKSwgb2Zmc2V0VmVjdG9yKTsKIAogICAgICAgICBpZiAocmVzdWx0IDwgMCkgewogI2lmbmRl
ZiBOREVCVUcKQEAgLTE2NSw3ICsxNjUsNyBAQCBpbnQgUmVnRXhwOjptYXRjaChjb25zdCBVU3Ry
aW5nJiBzLCBpbnQgCiAgICAgICAgICAgICBvdmVjdG9yLT5zZXQob2Zmc2V0VmVjdG9yKTsKICAg
ICAgICAgfQogCi0gICAgICAgIGludCBudW1NYXRjaGVzID0ganNSZWdFeHBFeGVjdXRlKG1fcmVn
RXhwLCByZWludGVycHJldF9jYXN0PGNvbnN0IFVDaGFyKj4ocy5kYXRhKCkpLCBzLnNpemUoKSwg
aSwgb2Zmc2V0VmVjdG9yLCBvZmZzZXRWZWN0b3JTaXplKTsKKyAgICAgICAgaW50IG51bU1hdGNo
ZXMgPSBqc1JlZ0V4cEV4ZWN1dGUobV9yZWdFeHAsIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgVUNo
YXIqPihzLmRhdGEoKSksIHMuc2l6ZSgpLCBzdGFydE9mZnNldCwgb2Zmc2V0VmVjdG9yLCBvZmZz
ZXRWZWN0b3JTaXplKTsKICAgICAKICAgICAgICAgaWYgKG51bU1hdGNoZXMgPCAwKSB7CiAjaWZu
ZGVmIE5ERUJVRwpJbmRleDogcnVudGltZS9SZWdFeHAuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBydW50aW1l
L1JlZ0V4cC5oCShyZXZpc2lvbiAzODU5OSkKKysrIHJ1bnRpbWUvUmVnRXhwLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTQ4LDcgKzQ4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIGJvb2wgaXNW
YWxpZCgpIGNvbnN0IHsgcmV0dXJuICFtX2NvbnN0cnVjdGlvbkVycm9yOyB9CiAgICAgICAgIGNv
bnN0IGNoYXIqIGVycm9yTWVzc2FnZSgpIGNvbnN0IHsgcmV0dXJuIG1fY29uc3RydWN0aW9uRXJy
b3I7IH0KIAotICAgICAgICBpbnQgbWF0Y2goY29uc3QgVVN0cmluZyYsIGludCBvZmZzZXQsIE93
bkFycmF5UHRyPGludD4qIG92ZWN0b3IgPSAwKTsKKyAgICAgICAgaW50IG1hdGNoKGNvbnN0IFVT
dHJpbmcmLCBpbnQgc3RhcnRPZmZzZXQsIE93bkFycmF5UHRyPGludD4qIG92ZWN0b3IgPSAwKTsK
ICAgICAgICAgdW5zaWduZWQgbnVtU3VicGF0dGVybnMoKSBjb25zdCB7IHJldHVybiBtX251bVN1
YnBhdHRlcm5zOyB9CiAKICAgICBwcml2YXRlOgpJbmRleDogcnVudGltZS9SZWdFeHBPYmplY3Qu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIHJ1bnRpbWUvUmVnRXhwT2JqZWN0LmNwcAkocmV2aXNpb24gMzg1
OTkpCisrKyBydW50aW1lL1JlZ0V4cE9iamVjdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwNiw0
MyArMTA2LDYgQEAgdm9pZCBzZXRSZWdFeHBPYmplY3RMYXN0SW5kZXgoRXhlY1N0YXRlKgogICAg
IGFzUmVnRXhwT2JqZWN0KGJhc2VPYmplY3QpLT5zZXRMYXN0SW5kZXgodmFsdWUtPnRvSW50ZWdl
cihleGVjKSk7CiB9CiAKLWJvb2wgUmVnRXhwT2JqZWN0OjptYXRjaChFeGVjU3RhdGUqIGV4ZWMs
IGNvbnN0IEFyZ0xpc3QmIGFyZ3MpCi17Ci0gICAgUmVnRXhwQ29uc3RydWN0b3IqIHJlZ0V4cENv
bnN0cnVjdG9yID0gZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLT5yZWdFeHBDb25zdHJ1Y3Rv
cigpOwotCi0gICAgVVN0cmluZyBpbnB1dDsKLSAgICBpZiAoIWFyZ3MuaXNFbXB0eSgpKQotICAg
ICAgICBpbnB1dCA9IGFyZ3MuYXQoZXhlYywgMCktPnRvU3RyaW5nKGV4ZWMpOwotICAgIGVsc2Ug
ewotICAgICAgICBpbnB1dCA9IHJlZ0V4cENvbnN0cnVjdG9yLT5pbnB1dCgpOwotICAgICAgICBp
ZiAoaW5wdXQuaXNOdWxsKCkpIHsKLSAgICAgICAgICAgIHRocm93RXJyb3IoZXhlYywgR2VuZXJh
bEVycm9yLCAiTm8gaW5wdXQuIik7Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAg
IH0KLSAgICB9Ci0KLSAgICBib29sIGdsb2JhbCA9IGdldChleGVjLCBleGVjLT5wcm9wZXJ0eU5h
bWVzKCkuZ2xvYmFsKS0+dG9Cb29sZWFuKGV4ZWMpOwotICAgIGludCBsYXN0SW5kZXggPSAwOwot
ICAgIGlmIChnbG9iYWwpIHsKLSAgICAgICAgaWYgKGQtPmxhc3RJbmRleCA8IDAgfHwgZC0+bGFz
dEluZGV4ID4gaW5wdXQuc2l6ZSgpKSB7Ci0gICAgICAgICAgICBkLT5sYXN0SW5kZXggPSAwOwot
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICB9Ci0gICAgICAgIGxhc3RJbmRleCA9
IHN0YXRpY19jYXN0PGludD4oZC0+bGFzdEluZGV4KTsKLSAgICB9Ci0KLSAgICBpbnQgZm91bmRJ
bmRleDsKLSAgICBpbnQgZm91bmRMZW5ndGg7Ci0gICAgcmVnRXhwQ29uc3RydWN0b3ItPnBlcmZv
cm1NYXRjaChkLT5yZWdFeHAuZ2V0KCksIGlucHV0LCBsYXN0SW5kZXgsIGZvdW5kSW5kZXgsIGZv
dW5kTGVuZ3RoKTsKLQotICAgIGlmIChnbG9iYWwpIHsKLSAgICAgICAgbGFzdEluZGV4ID0gZm91
bmRJbmRleCA8IDAgPyAwIDogZm91bmRJbmRleCArIGZvdW5kTGVuZ3RoOwotICAgICAgICBkLT5s
YXN0SW5kZXggPSBsYXN0SW5kZXg7Ci0gICAgfQotCi0gICAgcmV0dXJuIGZvdW5kSW5kZXggPj0g
MDsKLX0KLQogSlNWYWx1ZSogUmVnRXhwT2JqZWN0Ojp0ZXN0KEV4ZWNTdGF0ZSogZXhlYywgY29u
c3QgQXJnTGlzdCYgYXJncykKIHsKICAgICByZXR1cm4ganNCb29sZWFuKG1hdGNoKGV4ZWMsIGFy
Z3MpKTsKQEAgLTE2Niw0ICsxMjksMzkgQEAgQ2FsbFR5cGUgUmVnRXhwT2JqZWN0OjpnZXRDYWxs
RGF0YShDYWxsRAogICAgIHJldHVybiBDYWxsVHlwZUhvc3Q7CiB9CiAKKy8vIFNoYXJlZCBpbXBs
ZW1lbnRhdGlvbiB1c2VkIGJ5IHRlc3QgYW5kIGV4ZWMuCitib29sIFJlZ0V4cE9iamVjdDo6bWF0
Y2goRXhlY1N0YXRlKiBleGVjLCBjb25zdCBBcmdMaXN0JiBhcmdzKQoreworICAgIFJlZ0V4cENv
bnN0cnVjdG9yKiByZWdFeHBDb25zdHJ1Y3RvciA9IGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3Qo
KS0+cmVnRXhwQ29uc3RydWN0b3IoKTsKKworICAgIFVTdHJpbmcgaW5wdXQgPSBhcmdzLmlzRW1w
dHkoKSA/IHJlZ0V4cENvbnN0cnVjdG9yLT5pbnB1dCgpIDogYXJncy5hdChleGVjLCAwKS0+dG9T
dHJpbmcoZXhlYyk7CisgICAgaWYgKGlucHV0LmlzTnVsbCgpKSB7CisgICAgICAgIHRocm93RXJy
b3IoZXhlYywgR2VuZXJhbEVycm9yLCAiTm8gaW5wdXQgdG8gIiArIHRvU3RyaW5nKGV4ZWMpICsg
Ii4iKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmICghcmVnRXhwKCkt
Pmdsb2JhbCgpKSB7CisgICAgICAgIGludCBwb3NpdGlvbjsKKyAgICAgICAgaW50IGxlbmd0aDsK
KyAgICAgICAgcmVnRXhwQ29uc3RydWN0b3ItPnBlcmZvcm1NYXRjaChkLT5yZWdFeHAuZ2V0KCks
IGlucHV0LCAwLCBwb3NpdGlvbiwgbGVuZ3RoKTsKKyAgICAgICAgcmV0dXJuIHBvc2l0aW9uID49
IDA7CisgICAgfQorCisgICAgaWYgKGQtPmxhc3RJbmRleCA8IDAgfHwgZC0+bGFzdEluZGV4ID4g
aW5wdXQuc2l6ZSgpKSB7CisgICAgICAgIGQtPmxhc3RJbmRleCA9IDA7CisgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICB9CisKKyAgICBpbnQgcG9zaXRpb247CisgICAgaW50IGxlbmd0aDsKKyAg
ICByZWdFeHBDb25zdHJ1Y3Rvci0+cGVyZm9ybU1hdGNoKGQtPnJlZ0V4cC5nZXQoKSwgaW5wdXQs
IHN0YXRpY19jYXN0PGludD4oZC0+bGFzdEluZGV4KSwgcG9zaXRpb24sIGxlbmd0aCk7CisgICAg
aWYgKHBvc2l0aW9uIDwgMCkgeworICAgICAgICBkLT5sYXN0SW5kZXggPSAwOworICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgZC0+bGFzdEluZGV4ID0gcG9zaXRpb24gKyBsZW5n
dGg7CisgICAgcmV0dXJuIHRydWU7Cit9CisKIH0gLy8gbmFtZXNwYWNlIEpTQwpJbmRleDogcnVu
dGltZS9TdHJpbmdQcm90b3R5cGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHJ1bnRpbWUvU3RyaW5nUHJv
dG90eXBlLmNwcAkocmV2aXNpb24gMzg1OTkpCisrKyBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTIyMSw3ICsyMjEsNyBAQCBKU1ZhbHVlKiBzdHJpbmdQcm90
b0Z1bmNSZXBsYWNlKEV4ZWNTdGF0CiAgICAgICAgIFJlZ0V4cCogcmVnID0gYXNSZWdFeHBPYmpl
Y3QocGF0dGVybiktPnJlZ0V4cCgpOwogICAgICAgICBib29sIGdsb2JhbCA9IHJlZy0+Z2xvYmFs
KCk7CiAKLSAgICAgICAgUmVnRXhwQ29uc3RydWN0b3IqIHJlZ0V4cE9iaiA9IGV4ZWMtPmxleGlj
YWxHbG9iYWxPYmplY3QoKS0+cmVnRXhwQ29uc3RydWN0b3IoKTsKKyAgICAgICAgUmVnRXhwQ29u
c3RydWN0b3IqIHJlZ0V4cENvbnN0cnVjdG9yID0gZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgp
LT5yZWdFeHBDb25zdHJ1Y3RvcigpOwogCiAgICAgICAgIGludCBsYXN0SW5kZXggPSAwOwogICAg
ICAgICBpbnQgc3RhcnRQb3NpdGlvbiA9IDA7CkBAIC0yMzQsNyArMjM0LDcgQEAgSlNWYWx1ZSog
c3RyaW5nUHJvdG9GdW5jUmVwbGFjZShFeGVjU3RhdAogICAgICAgICAgICAgaW50IG1hdGNoSW5k
ZXg7CiAgICAgICAgICAgICBpbnQgbWF0Y2hMZW47CiAgICAgICAgICAgICBpbnQqIG92ZWN0b3I7
Ci0gICAgICAgICAgICByZWdFeHBPYmotPnBlcmZvcm1NYXRjaChyZWcsIHNvdXJjZSwgc3RhcnRQ
b3NpdGlvbiwgbWF0Y2hJbmRleCwgbWF0Y2hMZW4sICZvdmVjdG9yKTsKKyAgICAgICAgICAgIHJl
Z0V4cENvbnN0cnVjdG9yLT5wZXJmb3JtTWF0Y2gocmVnLCBzb3VyY2UsIHN0YXJ0UG9zaXRpb24s
IG1hdGNoSW5kZXgsIG1hdGNoTGVuLCAmb3ZlY3Rvcik7CiAgICAgICAgICAgICBpZiAobWF0Y2hJ
bmRleCA8IDApCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKQEAgLTQxNCwxNSArNDE0LDE1IEBA
IEpTVmFsdWUqIHN0cmluZ1Byb3RvRnVuY01hdGNoKEV4ZWNTdGF0ZSoKICAgICAgICAgICovCiAg
ICAgICAgIHJlZyA9IFJlZ0V4cDo6Y3JlYXRlKCZleGVjLT5nbG9iYWxEYXRhKCksIGEwLT50b1N0
cmluZyhleGVjKSk7CiAgICAgfQotICAgIFJlZ0V4cENvbnN0cnVjdG9yKiByZWdFeHBPYmogPSBl
eGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPnJlZ0V4cENvbnN0cnVjdG9yKCk7CisgICAgUmVn
RXhwQ29uc3RydWN0b3IqIHJlZ0V4cENvbnN0cnVjdG9yID0gZXhlYy0+bGV4aWNhbEdsb2JhbE9i
amVjdCgpLT5yZWdFeHBDb25zdHJ1Y3RvcigpOwogICAgIGludCBwb3M7CiAgICAgaW50IG1hdGNo
TGVuZ3RoOwotICAgIHJlZ0V4cE9iai0+cGVyZm9ybU1hdGNoKHJlZy5nZXQoKSwgdSwgMCwgcG9z
LCBtYXRjaExlbmd0aCk7CisgICAgcmVnRXhwQ29uc3RydWN0b3ItPnBlcmZvcm1NYXRjaChyZWcu
Z2V0KCksIHUsIDAsIHBvcywgbWF0Y2hMZW5ndGgpOwogICAgIGlmICghKHJlZy0+Z2xvYmFsKCkp
KSB7CiAgICAgICAgIC8vIGNhc2Ugd2l0aG91dCAnZycgZmxhZyBpcyBoYW5kbGVkIGxpa2UgUmVn
RXhwLnByb3RvdHlwZS5leGVjCiAgICAgICAgIGlmIChwb3MgPCAwKQogICAgICAgICAgICAgcmV0
dXJuIGpzTnVsbCgpOwotICAgICAgICByZXR1cm4gcmVnRXhwT2JqLT5hcnJheU9mTWF0Y2hlcyhl
eGVjKTsKKyAgICAgICAgcmV0dXJuIHJlZ0V4cENvbnN0cnVjdG9yLT5hcnJheU9mTWF0Y2hlcyhl
eGVjKTsKICAgICB9CiAKICAgICAvLyByZXR1cm4gYXJyYXkgb2YgbWF0Y2hlcwpAQCAtNDMyLDcg
KzQzMiw3IEBAIEpTVmFsdWUqIHN0cmluZ1Byb3RvRnVuY01hdGNoKEV4ZWNTdGF0ZSoKICAgICAg
ICAgbGlzdC5hcHBlbmQoanNTdWJzdHJpbmcoZXhlYywgdSwgcG9zLCBtYXRjaExlbmd0aCkpOwog
ICAgICAgICBsYXN0SW5kZXggPSBwb3M7CiAgICAgICAgIHBvcyArPSBtYXRjaExlbmd0aCA9PSAw
ID8gMSA6IG1hdGNoTGVuZ3RoOwotICAgICAgICByZWdFeHBPYmotPnBlcmZvcm1NYXRjaChyZWcu
Z2V0KCksIHUsIHBvcywgcG9zLCBtYXRjaExlbmd0aCk7CisgICAgICAgIHJlZ0V4cENvbnN0cnVj
dG9yLT5wZXJmb3JtTWF0Y2gocmVnLmdldCgpLCB1LCBwb3MsIHBvcywgbWF0Y2hMZW5ndGgpOwog
ICAgIH0KICAgICBpZiAoaW1wKQogICAgICAgICBpbXAtPnNldExhc3RJbmRleChsYXN0SW5kZXgp
OwpAQCAtNDY0LDEwICs0NjQsMTAgQEAgSlNWYWx1ZSogc3RyaW5nUHJvdG9GdW5jU2VhcmNoKEV4
ZWNTdGF0ZQogICAgICAgICAgKi8KICAgICAgICAgcmVnID0gUmVnRXhwOjpjcmVhdGUoJmV4ZWMt
Pmdsb2JhbERhdGEoKSwgYTAtPnRvU3RyaW5nKGV4ZWMpKTsKICAgICB9Ci0gICAgUmVnRXhwQ29u
c3RydWN0b3IqIHJlZ0V4cE9iaiA9IGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKS0+cmVnRXhw
Q29uc3RydWN0b3IoKTsKKyAgICBSZWdFeHBDb25zdHJ1Y3RvciogcmVnRXhwQ29uc3RydWN0b3Ig
PSBleGVjLT5sZXhpY2FsR2xvYmFsT2JqZWN0KCktPnJlZ0V4cENvbnN0cnVjdG9yKCk7CiAgICAg
aW50IHBvczsKICAgICBpbnQgbWF0Y2hMZW5ndGg7Ci0gICAgcmVnRXhwT2JqLT5wZXJmb3JtTWF0
Y2gocmVnLmdldCgpLCB1LCAwLCBwb3MsIG1hdGNoTGVuZ3RoKTsKKyAgICByZWdFeHBDb25zdHJ1
Y3Rvci0+cGVyZm9ybU1hdGNoKHJlZy5nZXQoKSwgdSwgMCwgcG9zLCBtYXRjaExlbmd0aCk7CiAg
ICAgcmV0dXJuIGpzTnVtYmVyKGV4ZWMsIHBvcyk7CiB9CiAK
</data>
<flag name="review"
          id="11691"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>