<?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>99392</bug_id>
          
          <creation_ts>2012-10-15 17:17:27 -0700</creation_ts>
          <short_desc>Creating a String from an NSString should check for all 8 bit strings</short_desc>
          <delta_ts>2012-10-17 15:17:57 -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>Mac</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Saboff">msaboff</reporter>
          <assigned_to name="Michael Saboff">msaboff</assigned_to>
          <cc>benjamin</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>742610</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2012-10-15 17:17:27 -0700</bug_when>
    <thetext>In most cases NSString&apos;s that are used to create String&apos;s are all 8 bit (typically ASCII).  In these cases we should create 8 bit Strings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742638</commentid>
    <comment_count>1</comment_count>
      <attachid>168818</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2012-10-15 17:34:26 -0700</bug_when>
    <thetext>Created attachment 168818
Patch

During simple testing, I never saw a 16 bit NSString.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742749</commentid>
    <comment_count>2</comment_count>
      <attachid>168818</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-10-15 20:24:14 -0700</bug_when>
    <thetext>Comment on attachment 168818
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=168818&amp;action=review

Please look into putting the fast check for 8-bit characters in ASCIIFastPath.h instead of here.

&gt; Source/WTF/wtf/text/StringImpl.cpp:1579
&gt; +#if CPU(X86_64)
&gt; +bool containsOnly8BitCharacters(const UChar* characters, unsigned length)

This looks like code that should be in the ASCIIFastPath.h, rather than in this source file. The same techniques used in charactersAreAllASCII are appropriate and that function is even better optimized than this code, I believe.

With a bit of work we could probably make the code for charactersAreAllASCII and charactersAreAll8Bit be generated from a single function template.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743391</commentid>
    <comment_count>3</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2012-10-16 12:04:37 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; In most cases NSString&apos;s that are used to create String&apos;s are all 8 bit (typically ASCII).  In these cases we should create 8 bit Strings.

How common is this?
Can we fix those at the source, when the NSString/CFString are created? CoreFoundation also have shortcuts for 8bits, it would be nice if we could enjoy those.

&gt; This looks like code that should be in the ASCIIFastPath.h, rather than in this source file. The same techniques used in charactersAreAllASCII are appropriate and that function is even better optimized than this code, I believe.
&gt; 
&gt; With a bit of work we could probably make the code for charactersAreAllASCII and charactersAreAll8Bit be generated from a single function template.

I would prefer a new header (Latin1FastPath.h?).
We are already abusing ASCIIFastPath.h with non-ASCII functions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743625</commentid>
    <comment_count>4</comment_count>
      <attachid>169039</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2012-10-16 15:15:44 -0700</bug_when>
    <thetext>Created attachment 169039
Updated Patch

It appears that these NSStrings are used in network responses among other places.  They appear to be created by Core Foundation code.

Found a way for CFStringGetBytes() to return an 8 bit Latin1 string that we can use directly.  No need to check for 8 bit characters.  Again in my simple browsing test this worked every time.

If I need to check for all 8 bit characters in the future, I think modifying and renaming ASCIIFastPath.h to CharacterFastPath.h is the way to go.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743683</commentid>
    <comment_count>5</comment_count>
      <attachid>169039</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-10-16 16:31:05 -0700</bug_when>
    <thetext>Comment on attachment 169039
Updated Patch

Attachment 169039 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/14396335

New failing tests:
platform/mac/editing/pasteboard/text-precomposed.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744350</commentid>
    <comment_count>6</comment_count>
      <attachid>169206</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2012-10-17 10:14:10 -0700</bug_when>
    <thetext>Created attachment 169206
Patch with Test Failure Fix

Added code to check that all characters in the CFString were used in the conversion to Latin1.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744576</commentid>
    <comment_count>7</comment_count>
      <attachid>169251</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2012-10-17 13:52:33 -0700</bug_when>
    <thetext>Created attachment 169251
Fixed WTF/ChangeLog

No other change from prior patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744637</commentid>
    <comment_count>8</comment_count>
      <attachid>169251</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-10-17 14:46:52 -0700</bug_when>
    <thetext>Comment on attachment 169251
Fixed WTF/ChangeLog

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744694</commentid>
    <comment_count>9</comment_count>
      <attachid>169251</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-17 15:17:53 -0700</bug_when>
    <thetext>Comment on attachment 169251
Fixed WTF/ChangeLog

Clearing flags on attachment: 169251

Committed r131656: &lt;http://trac.webkit.org/changeset/131656&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744695</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-17 15:17:57 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168818</attachid>
            <date>2012-10-15 17:34:26 -0700</date>
            <delta_ts>2012-10-16 15:15:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>99392.patch</filename>
            <type>text/plain</type>
            <size>6279</size>
            <attacher name="Michael Saboff">msaboff</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxMzEzODUpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDEyLTEwLTE1ICBNaWNoYWVsIFNhYm9mZiAgPG1z
YWJvZmZAYXBwbGUuY29tPgorCisgICAgICAgIENyZWF0aW5nIGEgU3RyaW5nIGZyb20gYW4gTlNT
dHJpbmcgc2hvdWxkIGNoZWNrIGZvciBhbGwgOCBiaXQgc3RyaW5ncworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkzOTIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCBzdXBwb3J0IGZ1bmN0aW9ucyB0
byBkZXRlY3QgOCBiaXQgZGF0YSBpbiBhIFVDaGFyKiBzdHJpbmcgYW5kIHRvIGNyZWF0ZSBhbgor
ICAgICAgICA4IGJpdCBzdHJpbmcgZ2l2ZW4gVUNoYXIqIGRhdGEuCisKKyAgICAgICAgKiB3dGYv
dGV4dC9TdHJpbmdJbXBsLmNwcDoKKyAgICAgICAgKFdURjo6U3RyaW5nSW1wbDo6Y3JlYXRlOEJp
dEZyb20xNkJpdCk6CisgICAgICAgIChXVEY6OmNvbnRhaW5zT25seThCaXRDaGFyYWN0ZXJzKToK
KyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdJbXBsLmg6CisgICAgICAgIChTdHJpbmdJbXBsKToK
KwogMjAxMi0xMC0xNSAgQW5kcmVhcyBLbGluZyAgPGtsaW5nQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgUmVtb3ZlIFdURjo6ZmFzdERlbGV0ZUFsbFZhbHVlcygpLgpJbmRleDogU291cmNlL1dURi93
dGYvdGV4dC9TdHJpbmdJbXBsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0
L1N0cmluZ0ltcGwuY3BwCShyZXZpc2lvbiAxMzEzMTEpCisrKyBTb3VyY2UvV1RGL3d0Zi90ZXh0
L1N0cmluZ0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzEsNiArMjcxLDE3IEBAIFBhc3NS
ZWZQdHI8U3RyaW5nSW1wbD4gU3RyaW5nSW1wbDo6Y3JlYXQKICAgICByZXR1cm4gY3JlYXRlKHN0
cmluZywgbGVuZ3RoKTsKIH0KIAorUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBTdHJpbmdJbXBsOjpj
cmVhdGU4Qml0RnJvbTE2Qml0KGNvbnN0IFVDaGFyKiBjaGFyYWN0ZXJzLCB1bnNpZ25lZCBsZW5n
dGgpCit7CisgICAgaWYgKCFjaGFyYWN0ZXJzIHx8ICFsZW5ndGgpCisgICAgICAgIHJldHVybiBl
bXB0eSgpOworCisgICAgTENoYXIqIGRhdGE7CisgICAgUmVmUHRyPFN0cmluZ0ltcGw+IHN0cmlu
ZyA9IGNyZWF0ZVVuaW5pdGlhbGl6ZWQobGVuZ3RoLCBkYXRhKTsKKyAgICBjb3B5TENoYXJzRnJv
bVVDaGFyU291cmNlKGRhdGEsIGNoYXJhY3RlcnMsIGxlbmd0aCk7CisgICAgcmV0dXJuIHN0cmlu
Zy5yZWxlYXNlKCk7Cit9CisKIGNvbnN0IFVDaGFyKiBTdHJpbmdJbXBsOjpnZXREYXRhMTZTbG93
Q2FzZSgpIGNvbnN0CiB7CiAgICAgaWYgKGhhczE2Qml0U2hhZG93KCkpCkBAIC0xNTY0LDYgKzE1
NzUsNjEgQEAgUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBTdHJpbmdJbXBsOjpyZXBsYQogICAgIHJl
dHVybiBuZXdJbXBsLnJlbGVhc2UoKTsKIH0KIAorI2lmIENQVShYODZfNjQpCitib29sIGNvbnRh
aW5zT25seThCaXRDaGFyYWN0ZXJzKGNvbnN0IFVDaGFyKiBjaGFyYWN0ZXJzLCB1bnNpZ25lZCBs
ZW5ndGgpCit7CisgICAgdWludDY0X3Qgb3JEYXRhID0gMDsKKyAgICB1bnNpZ25lZCBkd29yZExl
bmd0aCA9IGxlbmd0aCA+PiAyOworCisgICAgaWYgKGR3b3JkTGVuZ3RoKSB7CisgICAgICAgIGNv
bnN0IHVpbnQ2NF90KiBkV29yZENoYXJhY3RlcnMgPSByZWludGVycHJldF9jYXN0PGNvbnN0IHVp
bnQ2NF90Kj4oY2hhcmFjdGVycyk7CisKKyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSAh
PSBkd29yZExlbmd0aDsgKytpKQorICAgICAgICAgICAgb3JEYXRhIHw9ICpkV29yZENoYXJhY3Rl
cnMrKzsKKworICAgICAgICBjaGFyYWN0ZXJzID0gcmVpbnRlcnByZXRfY2FzdDxjb25zdCBVQ2hh
cio+KGRXb3JkQ2hhcmFjdGVycyk7CisgICAgfQorCisgICAgaWYgKGxlbmd0aCAmIDIpIHsKKyAg
ICAgICAgb3JEYXRhIHw9ICpyZWludGVycHJldF9jYXN0PGNvbnN0IHVpbnQzMl90Kj4oY2hhcmFj
dGVycyk7CisKKyAgICAgICAgY2hhcmFjdGVycyArPSAyOworICAgIH0KKworICAgIGlmIChsZW5n
dGggJiAxKQorICAgICAgICBvckRhdGEgfD0gKmNoYXJhY3RlcnM7CisKKyAgICByZXR1cm4gIShv
ckRhdGEgJiAweGZmMDBmZjAwZmYwMGZmMDApOworfQorI2VsaWYgQ1BVKFg4NikKK2Jvb2wgY29u
dGFpbnNPbmx5OEJpdENoYXJhY3RlcnMoY29uc3QgVUNoYXIqIGNoYXJhY3RlcnMsIHVuc2lnbmVk
IGxlbmd0aCkKK3sKKyAgICB1aW50MzJfdCBvckRhdGEgPSAwOworCisgICAgY29uc3QgdWludDMy
X3QqIHdvcmRDaGFyYWN0ZXJzID0gcmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50MzJfdCo+KGNo
YXJhY3RlcnMpOworCisgICAgdW5zaWduZWQgd29yZExlbmd0aCA9IGxlbmd0aCA+PiAxOworCisg
ICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSAhPSB3b3JkTGVuZ3RoOyArK2kpCisgICAgICAgIG9y
RGF0YSB8PSAqd29yZENoYXJhY3RlcnMrKzsKKworICAgIGlmIChsZW5ndGggJiAxKQorICAgICAg
ICBvckRhdGEgfD0gKnJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgVUNoYXIqPih3b3JkQ2hhcmFjdGVy
cyk7CisKKyAgICByZXR1cm4gIShvckRhdGEgJiAweGZmMDBmZjAwKTsKK30KKyNlbHNlCitib29s
IGNvbnRhaW5zT25seThCaXRDaGFyYWN0ZXJzKGNvbnN0IFVDaGFyKiBjaGFyYWN0ZXJzLCB1bnNp
Z25lZCBsZW5ndGgpCit7CisgICAgVUNoYXIgb3JEYXRhID0gMDsKKworICAgIGZvciAodW5zaWdu
ZWQgaSA9IDA7IGkgIT0gbGVuZ3RoOyArK2kpCisgICAgICAgIG9yRGF0YSB8PSAqY2hhcmFjdGVy
cysrOworCisgICAgcmV0dXJuIG9yRGF0YSA8PSAweGZmOworfQorI2VuZGlmCisKIGJvb2wgZXF1
YWwoY29uc3QgU3RyaW5nSW1wbCogYSwgY29uc3QgU3RyaW5nSW1wbCogYikKIHsKICAgICByZXR1
cm4gU3RyaW5nSGFzaDo6ZXF1YWwoYSwgYik7CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0
cmluZ0ltcGwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwu
aAkocmV2aXNpb24gMTMxMzExKQorKysgU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTM1MCw2ICszNTAsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFBh
c3NSZWZQdHI8U3RyaW5nSW1wbD4gY3JlYXRlKGNvbnN0IExDaGFyKiwgdW5zaWduZWQgbGVuZ3Ro
KTsKICAgICBBTFdBWVNfSU5MSU5FIHN0YXRpYyBQYXNzUmVmUHRyPFN0cmluZ0ltcGw+IGNyZWF0
ZShjb25zdCBjaGFyKiBzLCB1bnNpZ25lZCBsZW5ndGgpIHsgcmV0dXJuIGNyZWF0ZShyZWludGVy
cHJldF9jYXN0PGNvbnN0IExDaGFyKj4ocyksIGxlbmd0aCk7IH0KICAgICBXVEZfRVhQT1JUX1NU
UklOR19BUEkgc3RhdGljIFBhc3NSZWZQdHI8U3RyaW5nSW1wbD4gY3JlYXRlKGNvbnN0IExDaGFy
Kik7CisgICAgV1RGX0VYUE9SVF9TVFJJTkdfQVBJIHN0YXRpYyBQYXNzUmVmUHRyPFN0cmluZ0lt
cGw+IGNyZWF0ZThCaXRGcm9tMTZCaXQoY29uc3QgVUNoYXIqLCB1bnNpZ25lZCBsZW5ndGgpOwog
ICAgIEFMV0FZU19JTkxJTkUgc3RhdGljIFBhc3NSZWZQdHI8U3RyaW5nSW1wbD4gY3JlYXRlKGNv
bnN0IGNoYXIqIHMpIHsgcmV0dXJuIGNyZWF0ZShyZWludGVycHJldF9jYXN0PGNvbnN0IExDaGFy
Kj4ocykpOyB9CiAKICAgICBzdGF0aWMgQUxXQVlTX0lOTElORSBQYXNzUmVmUHRyPFN0cmluZ0lt
cGw+IGNyZWF0ZTgoUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiByZXAsIHVuc2lnbmVkIG9mZnNldCwg
dW5zaWduZWQgbGVuZ3RoKQpAQCAtNzczLDYgKzc3NCw4IEBAIEFMV0FZU19JTkxJTkUgY29uc3Qg
TENoYXIqIFN0cmluZ0ltcGw6OmcKIHRlbXBsYXRlIDw+CiBBTFdBWVNfSU5MSU5FIGNvbnN0IFVD
aGFyKiBTdHJpbmdJbXBsOjpnZXRDaGFyYWN0ZXJzPFVDaGFyPigpIGNvbnN0IHsgcmV0dXJuIGNo
YXJhY3RlcnMoKTsgfQogCitXVEZfRVhQT1JUX1NUUklOR19BUEkgYm9vbCBjb250YWluc09ubHk4
Qml0Q2hhcmFjdGVycyhjb25zdCBVQ2hhciosIHVuc2lnbmVkKTsKKwogV1RGX0VYUE9SVF9TVFJJ
TkdfQVBJIGJvb2wgZXF1YWwoY29uc3QgU3RyaW5nSW1wbCosIGNvbnN0IFN0cmluZ0ltcGwqKTsK
IFdURl9FWFBPUlRfU1RSSU5HX0FQSSBib29sIGVxdWFsKGNvbnN0IFN0cmluZ0ltcGwqLCBjb25z
dCBMQ2hhciopOwogaW5saW5lIGJvb2wgZXF1YWwoY29uc3QgU3RyaW5nSW1wbCogYSwgY29uc3Qg
Y2hhciogYikgeyByZXR1cm4gZXF1YWwoYSwgcmVpbnRlcnByZXRfY2FzdDxjb25zdCBMQ2hhcio+
KGIpKTsgfQpAQCAtMTEzNyw2ICsxMTQwLDcgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgRGVmYXVsdEhh
c2g8UmVmUHRyPFN0cgogCiB1c2luZyBXVEY6OlN0cmluZ0ltcGw7CiB1c2luZyBXVEY6OmVxdWFs
OwordXNpbmcgV1RGOjpjb250YWluc09ubHk4Qml0Q2hhcmFjdGVyczsKIHVzaW5nIFdURjo6VGV4
dENhc2VTZW5zaXRpdml0eTsKIHVzaW5nIFdURjo6VGV4dENhc2VTZW5zaXRpdmU7CiB1c2luZyBX
VEY6OlRleHRDYXNlSW5zZW5zaXRpdmU7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAxMzEzODUp
CisrKyBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwx
NyBAQAorMjAxMi0xMC0xNSAgTWljaGFlbCBTYWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKwor
ICAgICAgICBDcmVhdGluZyBhIFN0cmluZyBmcm9tIGFuIE5TU3RyaW5nIHNob3VsZCBjaGVjayBm
b3IgYWxsIDggYml0IHN0cmluZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTk5MzkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQ2hlY2sgdG8gc2VlIGlmIHRoZSBhcmd1bWVudCBzdHJpbmcgaXMgYWxsIDgg
Yml0LCBpZiBzbyBjcmVhdGUgYW4gOCBiaXQgc3RyaW5nLgorCisgICAgICAgIE5vIGZ1bmN0aW9u
YWwgY2hhbmdlLCBjaGFuZ2UgY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAq
IHBsYXRmb3JtL3RleHQvbWFjL1N0cmluZ01hYy5tbToKKyAgICAgICAgKFdURjo6U3RyaW5nOjpT
dHJpbmcpOgorCiAyMDEyLTEwLTE1ICBUb255IENoYW5nICA8dG9ueUBjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjEzMTM2Ny4KSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3RleHQvbWFjL1N0cmluZ01hYy5tbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L21hYy9TdHJpbmdNYWMubW0JKHJldmlzaW9uIDEzMTMx
MSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvbWFjL1N0cmluZ01hYy5tbQkod29y
a2luZyBjb3B5KQpAQCAtMzYsNiArMzYsMTIgQEAgU3RyaW5nOjpTdHJpbmcoTlNTdHJpbmcqIHN0
cikKICAgICBlbHNlIHsKICAgICAgICAgVmVjdG9yPFVDaGFyLCAxMDI0PiBidWZmZXIoc2l6ZSk7
CiAgICAgICAgIENGU3RyaW5nR2V0Q2hhcmFjdGVycyhyZWludGVycHJldF9jYXN0PENGU3RyaW5n
UmVmPihzdHIpLCBDRlJhbmdlTWFrZSgwLCBzaXplKSwgYnVmZmVyLmRhdGEoKSk7CisKKyAgICAg
ICAgaWYgKGNvbnRhaW5zT25seThCaXRDaGFyYWN0ZXJzKGJ1ZmZlci5kYXRhKCksIHNpemUpKSB7
CisgICAgICAgICAgICBtX2ltcGwgPSBTdHJpbmdJbXBsOjpjcmVhdGU4Qml0RnJvbTE2Qml0KGJ1
ZmZlci5kYXRhKCksIHNpemUpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKICAg
ICAgICAgbV9pbXBsID0gU3RyaW5nSW1wbDo6Y3JlYXRlKGJ1ZmZlci5kYXRhKCksIHNpemUpOwog
ICAgIH0KIH0K
</data>
<flag name="review"
          id="181906"
          type_id="1"
          status="-"
          setter="darin"
    />
    <flag name="commit-queue"
          id="181907"
          type_id="3"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>169039</attachid>
            <date>2012-10-16 15:15:44 -0700</date>
            <delta_ts>2012-10-17 10:14:10 -0700</delta_ts>
            <desc>Updated Patch</desc>
            <filename>99392-2.patch</filename>
            <type>text/plain</type>
            <size>4175</size>
            <attacher name="Michael Saboff">msaboff</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxMzE0NzcpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDMyIEBACisyMDEyLTEwLTE1ICBNaWNoYWVsIFNhYm9mZiAgPG1z
YWJvZmZAYXBwbGUuY29tPgorCisgICAgICAgIENyZWF0aW5nIGEgU3RyaW5nIGZyb20gYW4gTlNT
dHJpbmcgc2hvdWxkIGNoZWNrIGZvciBhbGwgOCBiaXQgc3RyaW5ncworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkzOTIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFeHBvcnRlZCB0aGUgTENoYXIqIHZlcnNp
b24gb2YgY3JlYXRlKCkuCisKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdJbXBsLmNwcDoKKyAg
ICAgICAgKFdURjo6U3RyaW5nSW1wbDo6Y3JlYXRlKToKKworMjAxMi0xMC0xNSAgTWljaGFlbCBT
YWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKworICAgICAgICBTdHJpbmdJbXBsOjpyZXZlcnNl
RmluZCgpIHdpdGggYSBzaW5nbGUgbWF0Y2ggY2hhcmFjdGVyIGlzbid0IG9wdGltYWwgZm9yIG1p
eGVkIDgvMTYgYml0IGNhc2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD05OTM2MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEZhY3RvcmVkIG91dCB0aGUgOC8xNiBiaXRuZXNzIGNoZWNrIG9mIHRoZSBtYXRj
aCBjaGFyYWN0ZXIgZnJvbSB0aGUgc3ViamVjdCBjaGFyYWN0ZXIgYml0bmVzcworICAgICAgICBj
aGVjay4gIERpZCB0aGlzIGZvciBib3RoIGZpbmQoKSBhbmQgcmV2ZXJzZUZpbmQoKS4gIEFkZGVk
IGFsbCBVQ2hhci9MQ2hhciBjb21iaW5hdGlvbnMgdG8gdGhlCisgICAgICAgIGlubGluZSByZXZl
cnNlRmluZCgpLgorCisgICAgICAgICogd3RmL3RleHQvU3RyaW5nSW1wbC5jcHA6CisgICAgICAg
IChXVEY6OlN0cmluZ0ltcGw6OmZpbmQpOgorICAgICAgICAoV1RGOjpTdHJpbmdJbXBsOjpyZXZl
cnNlRmluZCk6CisgICAgICAgICogd3RmL3RleHQvU3RyaW5nSW1wbC5oOgorICAgICAgICAoV1RG
OjpyZXZlcnNlRmluZCk6CisKIDIwMTItMTAtMTUgIEFuZHJlYXMgS2xpbmcgIDxrbGluZ0B3ZWJr
aXQub3JnPgogCiAgICAgICAgIFJlbW92ZSBXVEY6OmZhc3REZWxldGVBbGxWYWx1ZXMoKS4KSW5k
ZXg6IFNvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCShyZXZpc2lvbiAxMzE0NzcpCisrKyBTb3VyY2Uv
V1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuaAkod29ya2luZyBjb3B5KQpAQCAtMzUxLDcgKzM1MSw3
IEBAIHB1YmxpYzoKICAgICBXVEZfRVhQT1JUX1NUUklOR19BUEkgflN0cmluZ0ltcGwoKTsKIAog
ICAgIFdURl9FWFBPUlRfU1RSSU5HX0FQSSBzdGF0aWMgUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBj
cmVhdGUoY29uc3QgVUNoYXIqLCB1bnNpZ25lZCBsZW5ndGgpOwotICAgIHN0YXRpYyBQYXNzUmVm
UHRyPFN0cmluZ0ltcGw+IGNyZWF0ZShjb25zdCBMQ2hhciosIHVuc2lnbmVkIGxlbmd0aCk7Cisg
ICAgV1RGX0VYUE9SVF9TVFJJTkdfQVBJIHN0YXRpYyBQYXNzUmVmUHRyPFN0cmluZ0ltcGw+IGNy
ZWF0ZShjb25zdCBMQ2hhciosIHVuc2lnbmVkIGxlbmd0aCk7CiAgICAgQUxXQVlTX0lOTElORSBz
dGF0aWMgUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBjcmVhdGUoY29uc3QgY2hhciogcywgdW5zaWdu
ZWQgbGVuZ3RoKSB7IHJldHVybiBjcmVhdGUocmVpbnRlcnByZXRfY2FzdDxjb25zdCBMQ2hhcio+
KHMpLCBsZW5ndGgpOyB9CiAgICAgV1RGX0VYUE9SVF9TVFJJTkdfQVBJIHN0YXRpYyBQYXNzUmVm
UHRyPFN0cmluZ0ltcGw+IGNyZWF0ZShjb25zdCBMQ2hhciopOwogICAgIEFMV0FZU19JTkxJTkUg
c3RhdGljIFBhc3NSZWZQdHI8U3RyaW5nSW1wbD4gY3JlYXRlKGNvbnN0IGNoYXIqIHMpIHsgcmV0
dXJuIGNyZWF0ZShyZWludGVycHJldF9jYXN0PGNvbnN0IExDaGFyKj4ocykpOyB9CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxMzE0NzcpCisrKyBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHdv
cmtpbmcgY29weSkKQEAgLTEsMyArMSwxNyBAQAorMjAxMi0xMC0xNSAgTWljaGFlbCBTYWJvZmYg
IDxtc2Fib2ZmQGFwcGxlLmNvbT4KKworICAgICAgICBDcmVhdGluZyBhIFN0cmluZyBmcm9tIGFu
IE5TU3RyaW5nIHNob3VsZCBjaGVjayBmb3IgYWxsIDggYml0IHN0cmluZ3MKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk5MzkyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIENGU3RyaW5nR2V0Qnl0ZXMo
KSB0byB0cnkgdG8gZ2V0IExhdGluMSBkYXRhIHRvIGNyZWF0ZSBhbiA4IGJpdCBzdHJpbmcuCisK
KyAgICAgICAgTm8gZnVuY3Rpb25hbCBjaGFuZ2UsIGNoYW5nZSBjb3ZlcmVkIGJ5IGV4aXN0aW5n
IHRlc3RzLgorCisgICAgICAgICogcGxhdGZvcm0vdGV4dC9tYWMvU3RyaW5nTWFjLm1tOgorICAg
ICAgICAoV1RGOjpTdHJpbmc6OlN0cmluZyk6CisKIDIwMTItMTAtMTYgIFBhYmxvIEZsb3VyZXQg
IDxwYWJsb2ZAbW90b3JvbGEuY29tPgogCiAgICAgICAgIFByZS1wcm9jZXNzIENTU0dyYW1tYXIu
eSBiZWZvcmUgcnVubmluZyB0aHJvdWdoIGJpc29uLgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vdGV4dC9tYWMvU3RyaW5nTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL3RleHQvbWFjL1N0cmluZ01hYy5tbQkocmV2aXNpb24gMTMxNDc3KQorKysgU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9tYWMvU3RyaW5nTWFjLm1tCSh3b3JraW5nIGNvcHkp
CkBAIC0zNCw5ICszNCwxNiBAQCBTdHJpbmc6OlN0cmluZyhOU1N0cmluZyogc3RyKQogICAgIGlm
IChzaXplID09IDApCiAgICAgICAgIG1faW1wbCA9IFN0cmluZ0ltcGw6OmVtcHR5KCk7CiAgICAg
ZWxzZSB7Ci0gICAgICAgIFZlY3RvcjxVQ2hhciwgMTAyND4gYnVmZmVyKHNpemUpOwotICAgICAg
ICBDRlN0cmluZ0dldENoYXJhY3RlcnMocmVpbnRlcnByZXRfY2FzdDxDRlN0cmluZ1JlZj4oc3Ry
KSwgQ0ZSYW5nZU1ha2UoMCwgc2l6ZSksIGJ1ZmZlci5kYXRhKCkpOwotICAgICAgICBtX2ltcGwg
PSBTdHJpbmdJbXBsOjpjcmVhdGUoYnVmZmVyLmRhdGEoKSwgc2l6ZSk7CisgICAgICAgIFZlY3Rv
cjxMQ2hhciwgMTAyND4gbGNoYXJCdWZmZXIoc2l6ZSk7CisgICAgICAgIENGSW5kZXggY29udmVy
dGVkc2l6ZSA9IENGU3RyaW5nR2V0Qnl0ZXMocmVpbnRlcnByZXRfY2FzdDxDRlN0cmluZ1JlZj4o
c3RyKSwgQ0ZSYW5nZU1ha2UoMCwgc2l6ZSksIGtDRlN0cmluZ0VuY29kaW5nSVNPTGF0aW4xLCAw
LCBmYWxzZSwgbGNoYXJCdWZmZXIuZGF0YSgpLCBzaXplLCAwKTsKKyAgICAgICAgaWYgKGNvbnZl
cnRlZHNpemUgPT0gc2l6ZSkgeworICAgICAgICAgICAgbV9pbXBsID0gU3RyaW5nSW1wbDo6Y3Jl
YXRlKGxjaGFyQnVmZmVyLmRhdGEoKSwgc2l6ZSk7CisgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgIH0KKworICAgICAgICBWZWN0b3I8VUNoYXIsIDEwMjQ+IHVjaGFyQnVmZmVyKHNpemUpOwor
ICAgICAgICBDRlN0cmluZ0dldENoYXJhY3RlcnMocmVpbnRlcnByZXRfY2FzdDxDRlN0cmluZ1Jl
Zj4oc3RyKSwgQ0ZSYW5nZU1ha2UoMCwgc2l6ZSksIHVjaGFyQnVmZmVyLmRhdGEoKSk7CisgICAg
ICAgIG1faW1wbCA9IFN0cmluZ0ltcGw6OmNyZWF0ZSh1Y2hhckJ1ZmZlci5kYXRhKCksIHNpemUp
OwogICAgIH0KIH0KIAo=
</data>
<flag name="commit-queue"
          id="182192"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>169206</attachid>
            <date>2012-10-17 10:14:10 -0700</date>
            <delta_ts>2012-10-17 13:52:33 -0700</delta_ts>
            <desc>Patch with Test Failure Fix</desc>
            <filename>99392-3.patch</filename>
            <type>text/plain</type>
            <size>4298</size>
            <attacher name="Michael Saboff">msaboff</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxMzE1MjQpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDMyIEBACisyMDEyLTEwLTE3ICBNaWNoYWVsIFNhYm9mZiAgPG1z
YWJvZmZAYXBwbGUuY29tPgorCisgICAgICAgIENyZWF0aW5nIGEgU3RyaW5nIGZyb20gYW4gTlNT
dHJpbmcgc2hvdWxkIGNoZWNrIGZvciBhbGwgOCBiaXQgc3RyaW5ncworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkzOTIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFeHBvcnRlZCB0aGUgTENoYXIqIHZlcnNp
b24gb2YgY3JlYXRlKCkuCisKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdJbXBsLmNwcDoKKyAg
ICAgICAgKFdURjo6U3RyaW5nSW1wbDo6Y3JlYXRlKToKKworMjAxMi0xMC0xNSAgTWljaGFlbCBT
YWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKworICAgICAgICBTdHJpbmdJbXBsOjpyZXZlcnNl
RmluZCgpIHdpdGggYSBzaW5nbGUgbWF0Y2ggY2hhcmFjdGVyIGlzbid0IG9wdGltYWwgZm9yIG1p
eGVkIDgvMTYgYml0IGNhc2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD05OTM2MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIEZhY3RvcmVkIG91dCB0aGUgOC8xNiBiaXRuZXNzIGNoZWNrIG9mIHRoZSBtYXRj
aCBjaGFyYWN0ZXIgZnJvbSB0aGUgc3ViamVjdCBjaGFyYWN0ZXIgYml0bmVzcworICAgICAgICBj
aGVjay4gIERpZCB0aGlzIGZvciBib3RoIGZpbmQoKSBhbmQgcmV2ZXJzZUZpbmQoKS4gIEFkZGVk
IGFsbCBVQ2hhci9MQ2hhciBjb21iaW5hdGlvbnMgdG8gdGhlCisgICAgICAgIGlubGluZSByZXZl
cnNlRmluZCgpLgorCisgICAgICAgICogd3RmL3RleHQvU3RyaW5nSW1wbC5jcHA6CisgICAgICAg
IChXVEY6OlN0cmluZ0ltcGw6OmZpbmQpOgorICAgICAgICAoV1RGOjpTdHJpbmdJbXBsOjpyZXZl
cnNlRmluZCk6CisgICAgICAgICogd3RmL3RleHQvU3RyaW5nSW1wbC5oOgorICAgICAgICAoV1RG
OjpyZXZlcnNlRmluZCk6CisKIDIwMTItMTAtMTYgIE1pY2hhZWwgU2Fib2ZmICA8bXNhYm9mZkBh
cHBsZS5jb20+CiAKICAgICAgICAgU3RyaW5nSW1wbDo6cmV2ZXJzZUZpbmQoKSB3aXRoIGEgc2lu
Z2xlIG1hdGNoIGNoYXJhY3RlciBpc24ndCBvcHRpbWFsIGZvciBtaXhlZCA4LzE2IGJpdCBjYXNl
cwpJbmRleDogU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmgJKHJldmlzaW9uIDEzMTUyNCkKKysrIFNv
dXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNTEsNyAr
MzUxLDcgQEAgcHVibGljOgogICAgIFdURl9FWFBPUlRfU1RSSU5HX0FQSSB+U3RyaW5nSW1wbCgp
OwogCiAgICAgV1RGX0VYUE9SVF9TVFJJTkdfQVBJIHN0YXRpYyBQYXNzUmVmUHRyPFN0cmluZ0lt
cGw+IGNyZWF0ZShjb25zdCBVQ2hhciosIHVuc2lnbmVkIGxlbmd0aCk7Ci0gICAgc3RhdGljIFBh
c3NSZWZQdHI8U3RyaW5nSW1wbD4gY3JlYXRlKGNvbnN0IExDaGFyKiwgdW5zaWduZWQgbGVuZ3Ro
KTsKKyAgICBXVEZfRVhQT1JUX1NUUklOR19BUEkgc3RhdGljIFBhc3NSZWZQdHI8U3RyaW5nSW1w
bD4gY3JlYXRlKGNvbnN0IExDaGFyKiwgdW5zaWduZWQgbGVuZ3RoKTsKICAgICBBTFdBWVNfSU5M
SU5FIHN0YXRpYyBQYXNzUmVmUHRyPFN0cmluZ0ltcGw+IGNyZWF0ZShjb25zdCBjaGFyKiBzLCB1
bnNpZ25lZCBsZW5ndGgpIHsgcmV0dXJuIGNyZWF0ZShyZWludGVycHJldF9jYXN0PGNvbnN0IExD
aGFyKj4ocyksIGxlbmd0aCk7IH0KICAgICBXVEZfRVhQT1JUX1NUUklOR19BUEkgc3RhdGljIFBh
c3NSZWZQdHI8U3RyaW5nSW1wbD4gY3JlYXRlKGNvbnN0IExDaGFyKik7CiAgICAgQUxXQVlTX0lO
TElORSBzdGF0aWMgUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBjcmVhdGUoY29uc3QgY2hhciogcykg
eyByZXR1cm4gY3JlYXRlKHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgTENoYXIqPihzKSk7IH0KSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzMTUyMykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDEyLTEwLTE3ICBNaWNoYWVsIFNh
Ym9mZiAgPG1zYWJvZmZAYXBwbGUuY29tPgorCisgICAgICAgIENyZWF0aW5nIGEgU3RyaW5nIGZy
b20gYW4gTlNTdHJpbmcgc2hvdWxkIGNoZWNrIGZvciBhbGwgOCBiaXQgc3RyaW5ncworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkzOTIKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgQ0ZTdHJpbmdHZXRC
eXRlcygpIHRvIHRyeSB0byBnZXQgTGF0aW4xIGRhdGEgdG8gY3JlYXRlIGFuIDggYml0IHN0cmlu
Zy4KKworICAgICAgICBObyBmdW5jdGlvbmFsIGNoYW5nZSwgY2hhbmdlIGNvdmVyZWQgYnkgZXhp
c3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS90ZXh0L21hYy9TdHJpbmdNYWMubW06
CisgICAgICAgIChXVEY6OlN0cmluZzo6U3RyaW5nKToKKwogMjAxMi0xMC0xNiAgTm9hbSBSb3Nl
bnRoYWwgIDxub2FtLnJvc2VudGhhbEBub2tpYS5jb20+CiAKICAgICAgICAgW1F0XSBSRUdSRVNT
SU9OKHIxMzE0ODUpOiBJdCBicm9rZSB0aGUgYnVpbGQKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL3RleHQvbWFjL1N0cmluZ01hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS90ZXh0L21hYy9TdHJpbmdNYWMubW0JKHJldmlzaW9uIDEzMTUyMykKKysrIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvbWFjL1N0cmluZ01hYy5tbQkod29ya2luZyBjb3B5
KQpAQCAtMzQsOSArMzQsMTcgQEAgU3RyaW5nOjpTdHJpbmcoTlNTdHJpbmcqIHN0cikKICAgICBp
ZiAoc2l6ZSA9PSAwKQogICAgICAgICBtX2ltcGwgPSBTdHJpbmdJbXBsOjplbXB0eSgpOwogICAg
IGVsc2UgewotICAgICAgICBWZWN0b3I8VUNoYXIsIDEwMjQ+IGJ1ZmZlcihzaXplKTsKLSAgICAg
ICAgQ0ZTdHJpbmdHZXRDaGFyYWN0ZXJzKHJlaW50ZXJwcmV0X2Nhc3Q8Q0ZTdHJpbmdSZWY+KHN0
ciksIENGUmFuZ2VNYWtlKDAsIHNpemUpLCBidWZmZXIuZGF0YSgpKTsKLSAgICAgICAgbV9pbXBs
ID0gU3RyaW5nSW1wbDo6Y3JlYXRlKGJ1ZmZlci5kYXRhKCksIHNpemUpOworICAgICAgICBWZWN0
b3I8TENoYXIsIDEwMjQ+IGxjaGFyQnVmZmVyKHNpemUpOworICAgICAgICBDRkluZGV4IHVzZWRC
dWZMZW47CisgICAgICAgIENGSW5kZXggY29udmVydGVkc2l6ZSA9IENGU3RyaW5nR2V0Qnl0ZXMo
cmVpbnRlcnByZXRfY2FzdDxDRlN0cmluZ1JlZj4oc3RyKSwgQ0ZSYW5nZU1ha2UoMCwgc2l6ZSks
IGtDRlN0cmluZ0VuY29kaW5nSVNPTGF0aW4xLCAwLCBmYWxzZSwgbGNoYXJCdWZmZXIuZGF0YSgp
LCBzaXplLCAmdXNlZEJ1Zkxlbik7CisgICAgICAgIGlmICgoY29udmVydGVkc2l6ZSA9PSBzaXpl
KSAmJiAodXNlZEJ1ZkxlbiA9PSBzaXplKSkgeworICAgICAgICAgICAgbV9pbXBsID0gU3RyaW5n
SW1wbDo6Y3JlYXRlKGxjaGFyQnVmZmVyLmRhdGEoKSwgc2l6ZSk7CisgICAgICAgICAgICByZXR1
cm47CisgICAgICAgIH0KKworICAgICAgICBWZWN0b3I8VUNoYXIsIDEwMjQ+IHVjaGFyQnVmZmVy
KHNpemUpOworICAgICAgICBDRlN0cmluZ0dldENoYXJhY3RlcnMocmVpbnRlcnByZXRfY2FzdDxD
RlN0cmluZ1JlZj4oc3RyKSwgQ0ZSYW5nZU1ha2UoMCwgc2l6ZSksIHVjaGFyQnVmZmVyLmRhdGEo
KSk7CisgICAgICAgIG1faW1wbCA9IFN0cmluZ0ltcGw6OmNyZWF0ZSh1Y2hhckJ1ZmZlci5kYXRh
KCksIHNpemUpOwogICAgIH0KIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>169251</attachid>
            <date>2012-10-17 13:52:33 -0700</date>
            <delta_ts>2012-10-17 15:17:53 -0700</delta_ts>
            <desc>Fixed WTF/ChangeLog</desc>
            <filename>99392-4.patch</filename>
            <type>text/plain</type>
            <size>3640</size>
            <attacher name="Michael Saboff">msaboff</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxMzE2MjYpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDEyLTEwLTE3ICBNaWNoYWVsIFNhYm9mZiAgPG1z
YWJvZmZAYXBwbGUuY29tPgorCisgICAgICAgIENyZWF0aW5nIGEgU3RyaW5nIGZyb20gYW4gTlNT
dHJpbmcgc2hvdWxkIGNoZWNrIGZvciBhbGwgOCBiaXQgc3RyaW5ncworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkzOTIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFeHBvcnRlZCB0aGUgTENoYXIqIHZlcnNp
b24gb2YgY3JlYXRlKCkuCisKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdJbXBsLmNwcDoKKyAg
ICAgICAgKFdURjo6U3RyaW5nSW1wbDo6Y3JlYXRlKToKKwogMjAxMi0xMC0xNyAgQW5kZXJzIENh
cmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAgICAgICAgIEFsd2F5cyB1c2UgZmFzdFJl
YWxsb2Mgd2hlbiBncm93aW5nIG9yIHNocmlua2luZyB0aGUgVmVjdG9yIGJ1ZmZlcgpJbmRleDog
U291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dU
Ri93dGYvdGV4dC9TdHJpbmdJbXBsLmgJKHJldmlzaW9uIDEzMTYyNikKKysrIFNvdXJjZS9XVEYv
d3RmL3RleHQvU3RyaW5nSW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNTEsNyArMzUxLDcgQEAg
cHVibGljOgogICAgIFdURl9FWFBPUlRfU1RSSU5HX0FQSSB+U3RyaW5nSW1wbCgpOwogCiAgICAg
V1RGX0VYUE9SVF9TVFJJTkdfQVBJIHN0YXRpYyBQYXNzUmVmUHRyPFN0cmluZ0ltcGw+IGNyZWF0
ZShjb25zdCBVQ2hhciosIHVuc2lnbmVkIGxlbmd0aCk7Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8
U3RyaW5nSW1wbD4gY3JlYXRlKGNvbnN0IExDaGFyKiwgdW5zaWduZWQgbGVuZ3RoKTsKKyAgICBX
VEZfRVhQT1JUX1NUUklOR19BUEkgc3RhdGljIFBhc3NSZWZQdHI8U3RyaW5nSW1wbD4gY3JlYXRl
KGNvbnN0IExDaGFyKiwgdW5zaWduZWQgbGVuZ3RoKTsKICAgICBBTFdBWVNfSU5MSU5FIHN0YXRp
YyBQYXNzUmVmUHRyPFN0cmluZ0ltcGw+IGNyZWF0ZShjb25zdCBjaGFyKiBzLCB1bnNpZ25lZCBs
ZW5ndGgpIHsgcmV0dXJuIGNyZWF0ZShyZWludGVycHJldF9jYXN0PGNvbnN0IExDaGFyKj4ocyks
IGxlbmd0aCk7IH0KICAgICBXVEZfRVhQT1JUX1NUUklOR19BUEkgc3RhdGljIFBhc3NSZWZQdHI8
U3RyaW5nSW1wbD4gY3JlYXRlKGNvbnN0IExDaGFyKik7CiAgICAgQUxXQVlTX0lOTElORSBzdGF0
aWMgUGFzc1JlZlB0cjxTdHJpbmdJbXBsPiBjcmVhdGUoY29uc3QgY2hhciogcykgeyByZXR1cm4g
Y3JlYXRlKHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgTENoYXIqPihzKSk7IH0KSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cJKHJldmlzaW9uIDEzMTYyNikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDEyLTEwLTE3ICBNaWNoYWVsIFNhYm9mZiAgPG1z
YWJvZmZAYXBwbGUuY29tPgorCisgICAgICAgIENyZWF0aW5nIGEgU3RyaW5nIGZyb20gYW4gTlNT
dHJpbmcgc2hvdWxkIGNoZWNrIGZvciBhbGwgOCBiaXQgc3RyaW5ncworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkzOTIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgQ0ZTdHJpbmdHZXRCeXRlcygpIHRv
IHRyeSB0byBnZXQgTGF0aW4xIGRhdGEgdG8gY3JlYXRlIGFuIDggYml0IHN0cmluZy4KKworICAg
ICAgICBObyBmdW5jdGlvbmFsIGNoYW5nZSwgY2hhbmdlIGNvdmVyZWQgYnkgZXhpc3RpbmcgdGVz
dHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS90ZXh0L21hYy9TdHJpbmdNYWMubW06CisgICAgICAg
IChXVEY6OlN0cmluZzo6U3RyaW5nKToKKwogMjAxMi0xMC0xNyAgU2ltb24gRnJhc2VyICA8c2lt
b24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBHcmFwaGljc0xheWVyIHZpc2libGUgcmVj
dCBjb21wdXRhdGlvbiBuZWVkcyB0byB1c2UgdGhlIGN1cnJlbnQgYW5pbWF0aW5nIHRyYW5zZm9y
bQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9tYWMvU3RyaW5nTWFjLm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvbWFjL1N0cmluZ01hYy5t
bQkocmV2aXNpb24gMTMxNjI2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9tYWMv
U3RyaW5nTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw5ICszNCwxNyBAQCBTdHJpbmc6OlN0
cmluZyhOU1N0cmluZyogc3RyKQogICAgIGlmIChzaXplID09IDApCiAgICAgICAgIG1faW1wbCA9
IFN0cmluZ0ltcGw6OmVtcHR5KCk7CiAgICAgZWxzZSB7Ci0gICAgICAgIFZlY3RvcjxVQ2hhciwg
MTAyND4gYnVmZmVyKHNpemUpOwotICAgICAgICBDRlN0cmluZ0dldENoYXJhY3RlcnMocmVpbnRl
cnByZXRfY2FzdDxDRlN0cmluZ1JlZj4oc3RyKSwgQ0ZSYW5nZU1ha2UoMCwgc2l6ZSksIGJ1ZmZl
ci5kYXRhKCkpOwotICAgICAgICBtX2ltcGwgPSBTdHJpbmdJbXBsOjpjcmVhdGUoYnVmZmVyLmRh
dGEoKSwgc2l6ZSk7CisgICAgICAgIFZlY3RvcjxMQ2hhciwgMTAyND4gbGNoYXJCdWZmZXIoc2l6
ZSk7CisgICAgICAgIENGSW5kZXggdXNlZEJ1ZkxlbjsKKyAgICAgICAgQ0ZJbmRleCBjb252ZXJ0
ZWRzaXplID0gQ0ZTdHJpbmdHZXRCeXRlcyhyZWludGVycHJldF9jYXN0PENGU3RyaW5nUmVmPihz
dHIpLCBDRlJhbmdlTWFrZSgwLCBzaXplKSwga0NGU3RyaW5nRW5jb2RpbmdJU09MYXRpbjEsIDAs
IGZhbHNlLCBsY2hhckJ1ZmZlci5kYXRhKCksIHNpemUsICZ1c2VkQnVmTGVuKTsKKyAgICAgICAg
aWYgKChjb252ZXJ0ZWRzaXplID09IHNpemUpICYmICh1c2VkQnVmTGVuID09IHNpemUpKSB7Cisg
ICAgICAgICAgICBtX2ltcGwgPSBTdHJpbmdJbXBsOjpjcmVhdGUobGNoYXJCdWZmZXIuZGF0YSgp
LCBzaXplKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIFZlY3Rv
cjxVQ2hhciwgMTAyND4gdWNoYXJCdWZmZXIoc2l6ZSk7CisgICAgICAgIENGU3RyaW5nR2V0Q2hh
cmFjdGVycyhyZWludGVycHJldF9jYXN0PENGU3RyaW5nUmVmPihzdHIpLCBDRlJhbmdlTWFrZSgw
LCBzaXplKSwgdWNoYXJCdWZmZXIuZGF0YSgpKTsKKyAgICAgICAgbV9pbXBsID0gU3RyaW5nSW1w
bDo6Y3JlYXRlKHVjaGFyQnVmZmVyLmRhdGEoKSwgc2l6ZSk7CiAgICAgfQogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>