<?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>103139</bug_id>
          
          <creation_ts>2012-11-23 06:46:54 -0800</creation_ts>
          <short_desc>[ENCHANT] Infinite loop when end word position is not found</short_desc>
          <delta_ts>2012-11-23 08:41:25 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>g.czajkowski</cc>
    
    <cc>mario</cc>
    
    <cc>mifenton</cc>
    
    <cc>mrobinson</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>774514</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-11-23 06:46:54 -0800</bug_when>
    <thetext>The problem is that in TextCheckerEnchant::checkSpellingOfString() the inner loop that looks for the end of the word doesn&apos;t break when end &gt; numberOfCharacters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774517</commentid>
    <comment_count>1</comment_count>
      <attachid>175799</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-11-23 06:51:48 -0800</bug_when>
    <thetext>Created attachment 175799
Patch

We could just fix the infinite loop by adding the check to break the inner loop, but the code can be optimized and simplified a lot using the word iterator to iterate the words and it also fixes the infinite loop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774565</commentid>
    <comment_count>2</comment_count>
      <attachid>175799</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-11-23 07:59:00 -0800</bug_when>
    <thetext>Comment on attachment 175799
Patch

Great. As long as tests pass this look like an incredible improvement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774566</commentid>
    <comment_count>3</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-11-23 08:00:59 -0800</bug_when>
    <thetext>You might want to double-check this patch before landing. At some point it seemed that the TextIterators did not support nested iterators. Perhaps that&apos;s been changed in WebCore though. This is an issue because the spell checker is called while walking through a text iterator at some points.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774586</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-11-23 08:41:25 -0800</bug_when>
    <thetext>Committed r135618: &lt;http://trac.webkit.org/changeset/135618&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175799</attachid>
            <date>2012-11-23 06:51:48 -0800</date>
            <delta_ts>2012-11-23 07:59:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wcore-enchant-infinite-loop.diff</filename>
            <type>text/plain</type>
            <size>8083</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyZWY3ZDM2Li5lMjU0NGRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUg
QEAKKzIwMTItMTEtMjMgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtFTkNIQU5UXSBJbmZpbml0ZSBsb29wIHdoZW4gZW5kIHdvcmQgcG9zaXRp
b24gaXMgbm90IGZvdW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMDMxMzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzIGluIGVkaXRpbmcvc3BlbGxpbmcuCisK
KyAgICAgICAgKiBlZGl0aW5nL3Zpc2libGVfdW5pdHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
aXNMb2dpY2FsU3RhcnRPZldvcmQpOiBNYWtlIGl0IHByaXZhdGUgYWdhaW4uCisgICAgICAgIChX
ZWJDb3JlOjppc2xvZ2ljYWxFbmRPZldvcmQpOiBEaXR0by4KKyAgICAgICAgKiBlZGl0aW5nL3Zp
c2libGVfdW5pdHMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS90ZXh0L2VuY2hhbnQvVGV4dENoZWNr
ZXJFbmNoYW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRDaGVja2VyRW5jaGFudDo6Y2hl
Y2tTcGVsbGluZ09mV29yZCk6IEhlbHBlciBmdW50aW9uCisgICAgICAgIHRvIGNoZWNrIGEgd29y
ZCBpbnNpZGUgYSBzdHJpbmcgdXNpbmcgdGhlIGxvYWRlZCBkaWN0aW9uYXJpZXMuCisgICAgICAg
IChXZWJDb3JlOjpUZXh0Q2hlY2tlckVuY2hhbnQ6OmNoZWNrU3BlbGxpbmdPZlN0cmluZyk6IE9w
dGltaXplIGFuZAorICAgICAgICBzaW1wbHkgdGhlIGNvZGUgYnkgdXNpbmcgdGhlIHdvcmQgaXRl
cmF0b3IgdG8gaXRlcmF0ZSB0aGUKKyAgICAgICAgd29yZHMuCisgICAgICAgICogcGxhdGZvcm0v
dGV4dC9lbmNoYW50L1RleHRDaGVja2VyRW5jaGFudC5oOgorICAgICAgICAoVGV4dENoZWNrZXJF
bmNoYW50KToKKwogMjAxMi0xMS0yMyAgVGhpYWdvIE1hcmNvcyBQLiBTYW50b3MgIDx0aGlhZ28u
c2FudG9zQGludGVsLmNvbT4KIAogICAgICAgICBFeHBvc2UgRE9NIGludGVyZmFjZSBmb3IgQ1NT
IERldmljZSBBZGFwdGF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL3Zp
c2libGVfdW5pdHMuY3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy92aXNpYmxlX3VuaXRzLmNw
cAppbmRleCA5NTA4Njc3Li42ZWNiNzdjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL3Zpc2libGVfdW5pdHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvdmlzaWJs
ZV91bml0cy5jcHAKQEAgLTMyMiw3ICszMjIsNyBAQCBzdGF0aWMgVGV4dEJyZWFrSXRlcmF0b3Iq
IHdvcmRCcmVha0l0ZXJhdG9yRm9yTWF4T2Zmc2V0Qm91bmRhcnkoY29uc3QgVmlzaWJsZVBvcwog
ICAgIHJldHVybiB3b3JkQnJlYWtJdGVyYXRvcihzdHJpbmcuZGF0YSgpLCBsZW4pOwogfSAKIAot
Ym9vbCBpc0xvZ2ljYWxTdGFydE9mV29yZChUZXh0QnJlYWtJdGVyYXRvciogaXRlciwgaW50IHBv
c2l0aW9uLCBib29sIGhhcmRMaW5lQnJlYWspCitzdGF0aWMgYm9vbCBpc0xvZ2ljYWxTdGFydE9m
V29yZChUZXh0QnJlYWtJdGVyYXRvciogaXRlciwgaW50IHBvc2l0aW9uLCBib29sIGhhcmRMaW5l
QnJlYWspCiB7CiAgICAgYm9vbCBib3VuZGFyeSA9IGhhcmRMaW5lQnJlYWsgPyB0cnVlIDogaXNU
ZXh0QnJlYWsoaXRlciwgcG9zaXRpb24pOwogICAgIGlmICghYm91bmRhcnkpCkBAIC0zMzMsNyAr
MzMzLDcgQEAgYm9vbCBpc0xvZ2ljYWxTdGFydE9mV29yZChUZXh0QnJlYWtJdGVyYXRvciogaXRl
ciwgaW50IHBvc2l0aW9uLCBib29sIGhhcmRMaW5lQnIKICAgICByZXR1cm4gaXNXb3JkVGV4dEJy
ZWFrKGl0ZXIpOwogfQogCi1ib29sIGlzbG9naWNhbEVuZE9mV29yZChUZXh0QnJlYWtJdGVyYXRv
ciogaXRlciwgaW50IHBvc2l0aW9uLCBib29sIGhhcmRMaW5lQnJlYWspCitzdGF0aWMgYm9vbCBp
c2xvZ2ljYWxFbmRPZldvcmQoVGV4dEJyZWFrSXRlcmF0b3IqIGl0ZXIsIGludCBwb3NpdGlvbiwg
Ym9vbCBoYXJkTGluZUJyZWFrKQogewogICAgIGJvb2wgYm91bmRhcnkgPSBpc1RleHRCcmVhayhp
dGVyLCBwb3NpdGlvbik7CiAgICAgcmV0dXJuIChoYXJkTGluZUJyZWFrIHx8IGJvdW5kYXJ5KSAm
JiBpc1dvcmRUZXh0QnJlYWsoaXRlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL3Zpc2libGVfdW5pdHMuaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvdmlzaWJsZV91bml0
cy5oCmluZGV4IDgxNmViYmIuLjcyM2MxOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvdmlzaWJsZV91bml0cy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvdmlzaWJs
ZV91bml0cy5oCkBAIC00Niw5ICs0Niw2IEBAIFZpc2libGVQb3NpdGlvbiBuZXh0V29yZFBvc2l0
aW9uKGNvbnN0IFZpc2libGVQb3NpdGlvbiAmKTsKIFZpc2libGVQb3NpdGlvbiByaWdodFdvcmRQ
b3NpdGlvbihjb25zdCBWaXNpYmxlUG9zaXRpb24mLCBib29sIHNraXBzU3BhY2VXaGVuTW92aW5n
UmlnaHQpOwogVmlzaWJsZVBvc2l0aW9uIGxlZnRXb3JkUG9zaXRpb24oY29uc3QgVmlzaWJsZVBv
c2l0aW9uJiwgYm9vbCBza2lwc1NwYWNlV2hlbk1vdmluZ1JpZ2h0KTsKIGJvb2wgaXNTdGFydE9m
V29yZChjb25zdCBWaXNpYmxlUG9zaXRpb24mKTsKLS8vIHVzZWQgYnkgVGV4dENoZWNrZXJFbmNo
YW50LmNwcAotYm9vbCBpc0xvZ2ljYWxTdGFydE9mV29yZChUZXh0QnJlYWtJdGVyYXRvciosIGlu
dCBwb3NpdGlvbiwgYm9vbCBoYXJkTGluZUJyZWFrID0gZmFsc2UpOwotYm9vbCBpc2xvZ2ljYWxF
bmRPZldvcmQoVGV4dEJyZWFrSXRlcmF0b3IqLCBpbnQgcG9zaXRpb24sIGJvb2wgaGFyZExpbmVC
cmVhayA9IGZhbHNlKTsKIAogLy8gc2VudGVuY2VzCiBWaXNpYmxlUG9zaXRpb24gc3RhcnRPZlNl
bnRlbmNlKGNvbnN0IFZpc2libGVQb3NpdGlvbiAmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL3RleHQvZW5jaGFudC9UZXh0Q2hlY2tlckVuY2hhbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9lbmNoYW50L1RleHRDaGVja2VyRW5jaGFudC5jcHAKaW5k
ZXggZjliMzBkZi4uYjk1MGRkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
dGV4dC9lbmNoYW50L1RleHRDaGVja2VyRW5jaGFudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vdGV4dC9lbmNoYW50L1RleHRDaGVja2VyRW5jaGFudC5jcHAKQEAgLTIzLDEzICsy
MywxMCBAQAogI2lmIEVOQUJMRShTUEVMTENIRUNLKQogCiAjaW5jbHVkZSA8TGFuZ3VhZ2UuaD4K
LSNpbmNsdWRlIDxlZGl0aW5nL3Zpc2libGVfdW5pdHMuaD4KICNpbmNsdWRlIDxnbGliLmg+CiAj
aW5jbHVkZSA8dGV4dC9UZXh0QnJlYWtJdGVyYXRvci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L0NT
dHJpbmcuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLXVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOworbmFtZXNwYWNlIFdlYkNvcmUgewogCiBzdGF0aWMgY29uc3Qgc2l6
ZV90IG1heGltdW1OdW1iZXJPZlN1Z2dlc3Rpb25zID0gMTA7CiAKQEAgLTY2LDYgKzYzLDI1IEBA
IHZvaWQgVGV4dENoZWNrZXJFbmNoYW50OjpsZWFybldvcmQoY29uc3QgU3RyaW5nJiB3b3JkKQog
ICAgICAgICBlbmNoYW50X2RpY3RfYWRkX3RvX3BlcnNvbmFsKCppdGVyLCB3b3JkLnV0ZjgoKS5k
YXRhKCksIC0xKTsKIH0KIAordm9pZCBUZXh0Q2hlY2tlckVuY2hhbnQ6OmNoZWNrU3BlbGxpbmdP
ZldvcmQoY29uc3QgQ1N0cmluZyYgd29yZCwgaW50IHN0YXJ0LCBpbnQgZW5kLCBpbnQmIG1pc3Nw
ZWxsaW5nTG9jYXRpb24sIGludCYgbWlzc3BlbGxpbmdMZW5ndGgpCit7CisgICAgY29uc3QgY2hh
ciogc3RyaW5nID0gd29yZC5kYXRhKCk7CisgICAgY2hhciogc3RhcnRQdHIgPSBnX3V0Zjhfb2Zm
c2V0X3RvX3BvaW50ZXIoc3RyaW5nLCBzdGFydCk7CisgICAgaW50IG51bWJlck9mQnl0ZXMgPSBz
dGF0aWNfY2FzdDxpbnQ+KGdfdXRmOF9vZmZzZXRfdG9fcG9pbnRlcihzdHJpbmcsIGVuZCkgLSBz
dGFydFB0cik7CisKKyAgICBmb3IgKFZlY3RvcjxFbmNoYW50RGljdCo+Ojpjb25zdF9pdGVyYXRv
ciBkaWN0SXRlciA9IG1fZW5jaGFudERpY3Rpb25hcmllcy5iZWdpbigpOyBkaWN0SXRlciAhPSBt
X2VuY2hhbnREaWN0aW9uYXJpZXMuZW5kKCk7ICsrZGljdEl0ZXIpIHsKKyAgICAgICAgaWYgKCFl
bmNoYW50X2RpY3RfY2hlY2soKmRpY3RJdGVyLCBzdGFydFB0ciwgbnVtYmVyT2ZCeXRlcykpIHsK
KyAgICAgICAgICAgIC8vIFN0b3AgY2hlY2tpbmcsIHRoaXMgd29yZCBpcyBvayBpbiBhdCBsZWFz
dCBvbmUgZGljdC4KKyAgICAgICAgICAgIG1pc3NwZWxsaW5nTG9jYXRpb24gPSAtMTsKKyAgICAg
ICAgICAgIG1pc3NwZWxsaW5nTGVuZ3RoID0gMDsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICB9CisKKyAgICAgICAgbWlzc3BlbGxpbmdMb2NhdGlvbiA9IHN0YXJ0OworICAgICAgICBtaXNz
cGVsbGluZ0xlbmd0aCA9IGVuZCAtIHN0YXJ0OworICAgIH0KK30KKwogdm9pZCBUZXh0Q2hlY2tl
ckVuY2hhbnQ6OmNoZWNrU3BlbGxpbmdPZlN0cmluZyhjb25zdCBTdHJpbmcmIHN0cmluZywgaW50
JiBtaXNzcGVsbGluZ0xvY2F0aW9uLCBpbnQmIG1pc3NwZWxsaW5nTGVuZ3RoKQogewogICAgIC8v
IEFzc3VtZSB0aGF0IHRoZSB3b3JkcyBpbiB0aGUgc3RyaW5nIGFyZSBzcGVsbGVkIGNvcnJlY3Rs
eS4KQEAgLTc1LDQ2ICs5MSwxNiBAQCB2b2lkIFRleHRDaGVja2VyRW5jaGFudDo6Y2hlY2tTcGVs
bGluZ09mU3RyaW5nKGNvbnN0IFN0cmluZyYgc3RyaW5nLCBpbnQmIG1pc3NwZQogICAgIGlmICgh
aGFzRGljdGlvbmFyeSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBzaXplX3QgbnVtYmVyT2ZD
aGFyYWN0ZXJzID0gc3RyaW5nLmxlbmd0aCgpOwotICAgIFRleHRCcmVha0l0ZXJhdG9yKiBpdGVy
ID0gd29yZEJyZWFrSXRlcmF0b3Ioc3RyaW5nLmNoYXJhY3RlcnMoKSwgbnVtYmVyT2ZDaGFyYWN0
ZXJzKTsKKyAgICBUZXh0QnJlYWtJdGVyYXRvciogaXRlciA9IHdvcmRCcmVha0l0ZXJhdG9yKHN0
cmluZy5jaGFyYWN0ZXJzKCksIHN0cmluZy5sZW5ndGgoKSk7CiAgICAgaWYgKCFpdGVyKQogICAg
ICAgICByZXR1cm47CiAKICAgICBDU3RyaW5nIHV0ZjhTdHJpbmcgPSBzdHJpbmcudXRmOCgpOwot
ICAgIGNvbnN0IGNoYXIqIGNTdHJpbmcgPSB1dGY4U3RyaW5nLmRhdGEoKTsKLQotICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgbnVtYmVyT2ZDaGFyYWN0ZXJzICsgMTsgaSsrKSB7Ci0gICAgICAg
IC8vIFdlIGdvIHRocm91Z2ggZWFjaCBjaGFyYWN0ZXIgdW50aWwgd2UgZmluZCB0aGUgYmVnaW5u
aW5nIG9mIHRoZSB3b3JkCi0gICAgICAgIC8vIHRoZW4gd2UgZ2V0IGludG8gYW4gaW5uZXIgbG9v
cCB0byBmaW5kIHRoZSBlbmQgb2YgdGhlIHdvcmQgY29ycmVzcG9uZGluZwotICAgICAgICAvLyB0
byBpdC4KLSAgICAgICAgaWYgKGlzTG9naWNhbFN0YXJ0T2ZXb3JkKGl0ZXIsIGkpKSB7Ci0gICAg
ICAgICAgICBpbnQgc3RhcnQgPSBpOwotICAgICAgICAgICAgaW50IGVuZCA9IGk7Ci0gICAgICAg
ICAgICBpbnQgd29yZExlbmd0aDsKLQotICAgICAgICAgICAgd2hpbGUgKCFpc2xvZ2ljYWxFbmRP
ZldvcmQoaXRlciwgZW5kKSkKLSAgICAgICAgICAgICAgICBlbmQrKzsKLQotICAgICAgICAgICAg
d29yZExlbmd0aCA9IGVuZCAtIHN0YXJ0OwotICAgICAgICAgICAgLy8gU2V0IHRoZSBpdGVyYXRv
ciB0byBiZSBhdCB0aGUgY3VycmVudCB3b3JkIGVuZCwgc28gd2UgZG9uJ3QKLSAgICAgICAgICAg
IC8vIGNoZWNrIGNoYXJhY3RlcnMgdHdpY2UuCi0gICAgICAgICAgICBpID0gZW5kOwotCi0gICAg
ICAgICAgICBjaGFyKiBjc3RhcnQgPSBnX3V0Zjhfb2Zmc2V0X3RvX3BvaW50ZXIoY1N0cmluZywg
c3RhcnQpOwotICAgICAgICAgICAgaW50IG51bWJlck9mQnl0ZXMgPSBzdGF0aWNfY2FzdDxpbnQ+
KGdfdXRmOF9vZmZzZXRfdG9fcG9pbnRlcihjU3RyaW5nLCBlbmQpIC0gY3N0YXJ0KTsKLQotICAg
ICAgICAgICAgZm9yIChWZWN0b3I8RW5jaGFudERpY3QqPjo6Y29uc3RfaXRlcmF0b3IgZGljdEl0
ZXIgPSBtX2VuY2hhbnREaWN0aW9uYXJpZXMuYmVnaW4oKTsgZGljdEl0ZXIgIT0gbV9lbmNoYW50
RGljdGlvbmFyaWVzLmVuZCgpOyArK2RpY3RJdGVyKSB7Ci0gICAgICAgICAgICAgICAgaWYgKGVu
Y2hhbnRfZGljdF9jaGVjaygqZGljdEl0ZXIsIGNzdGFydCwgbnVtYmVyT2ZCeXRlcykpIHsKLSAg
ICAgICAgICAgICAgICAgICAgbWlzc3BlbGxpbmdMb2NhdGlvbiA9IHN0YXJ0OwotICAgICAgICAg
ICAgICAgICAgICBtaXNzcGVsbGluZ0xlbmd0aCA9IHdvcmRMZW5ndGg7Ci0gICAgICAgICAgICAg
ICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgLy8gU3RvcCBjaGVja2luZywgdGhpcyB3
b3JkIGlzIG9rIGluIGF0IGxlYXN0IG9uZSBkaWN0LgotICAgICAgICAgICAgICAgICAgICBtaXNz
cGVsbGluZ0xvY2F0aW9uID0gLTE7Ci0gICAgICAgICAgICAgICAgICAgIG1pc3NwZWxsaW5nTGVu
Z3RoID0gMDsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgfQot
ICAgICAgICAgICAgfQotICAgICAgICB9CisgICAgaW50IHN0YXJ0ID0gdGV4dEJyZWFrRmlyc3Qo
aXRlcik7CisgICAgZm9yIChpbnQgZW5kID0gdGV4dEJyZWFrTmV4dChpdGVyKTsgZW5kICE9IFRl
eHRCcmVha0RvbmU7IGVuZCA9IHRleHRCcmVha05leHQoaXRlcikpIHsKKyAgICAgICAgaWYgKGlz
V29yZFRleHRCcmVhayhpdGVyKSkKKyAgICAgICAgICAgIGNoZWNrU3BlbGxpbmdPZldvcmQodXRm
OFN0cmluZywgc3RhcnQsIGVuZCwgbWlzc3BlbGxpbmdMb2NhdGlvbiwgbWlzc3BlbGxpbmdMZW5n
dGgpOworICAgICAgICBzdGFydCA9IGVuZDsKICAgICB9CiB9CiAKQEAgLTIxMiw1ICsxOTgsNyBA
QCB2b2lkIFRleHRDaGVja2VyRW5jaGFudDo6ZnJlZUVuY2hhbnRCcm9rZXJEaWN0aW9uYXJpZXMo
KQogICAgICAgICBlbmNoYW50X2Jyb2tlcl9mcmVlX2RpY3QobV9icm9rZXIsICppdGVyKTsKIH0K
IAorfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCiAjZW5kaWYgLy8gRU5BQkxFKFNQRUxMQ0hFQ0sp
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvZW5jaGFudC9UZXh0
Q2hlY2tlckVuY2hhbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvZW5jaGFudC9U
ZXh0Q2hlY2tlckVuY2hhbnQuaAppbmRleCAwZmUyY2FhLi5lMzE0MmFjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L2VuY2hhbnQvVGV4dENoZWNrZXJFbmNoYW50LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9lbmNoYW50L1RleHRDaGVja2VyRW5j
aGFudC5oCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSA8d3RmL0Zhc3RBbGxvY0Jhc2UuaD4K
ICNpbmNsdWRlIDx3dGYvUGFzc093blB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNp
bmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ5LDYgKzUwLDcgQEAgcHVibGljOgogcHJp
dmF0ZToKICAgICBUZXh0Q2hlY2tlckVuY2hhbnQoKTsKICAgICB2b2lkIGZyZWVFbmNoYW50QnJv
a2VyRGljdGlvbmFyaWVzKCk7CisgICAgdm9pZCBjaGVja1NwZWxsaW5nT2ZXb3JkKGNvbnN0IENT
dHJpbmcmLCBpbnQgc3RhcnQsIGludCBlbmQsIGludCYgbWlzc3BlbGxpbmdMb2NhdGlvbiwgaW50
JiBtaXNzcGVsbGluZ0xlbmd0aCk7CiAKICAgICBFbmNoYW50QnJva2VyKiBtX2Jyb2tlcjsKICAg
ICBWZWN0b3I8RW5jaGFudERpY3QqPiBtX2VuY2hhbnREaWN0aW9uYXJpZXM7Cg==
</data>
<flag name="review"
          id="191360"
          type_id="1"
          status="+"
          setter="mrobinson"
    />
          </attachment>
      

    </bug>

</bugzilla>