<?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>140173</bug_id>
          
          <creation_ts>2015-01-06 21:09:53 -0800</creation_ts>
          <short_desc>The ASCII decoding for non ASCII character is incorrect if this character comes after the going through fast decoding code path and before the end of the text by less than a machine word size of characters</short_desc>
          <delta_ts>2015-01-07 21:18:29 -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>Page Loading</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="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1059318</commentid>
    <comment_count>0</comment_count>
      <attachid>244137</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-01-06 21:09:53 -0800</bug_when>
    <thetext>Created attachment 244137
Test case

1. Check the function TextCodecLatin1::decode()
2. Suppose the following text is decoded: &quot;%41%42%43%44%45%46%47%48%82%82&quot;.
3. The URL precent encoded text will be converted to 10 bytes array and sent to TextCodecLatin1::decode(),
4. Since the first byte is ASCII and since its index is 8-bytes aligned, we use the fast decoding path.
5. Since the first eight bytes are all ASCII, we do the decoding in one step and and we copy the whole word from the source byte array to the result buffer.
6. Since after the first eight bytes, what is left is less than a machine word, we exit the fast decoding path.
7. The problem is after breaking the fast decoding code path, we copy the current byte as is even if it is a non ASCII character.

A test case is attached. It works correctly in FireFox and Chrome and shows two non ASCII 0x82 characters at the end. But in Safari, it shows a single 0x82 character at the end.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059321</commentid>
    <comment_count>1</comment_count>
      <attachid>244140</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-01-06 21:25:26 -0800</bug_when>
    <thetext>Created attachment 244140
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059341</commentid>
    <comment_count>2</comment_count>
      <attachid>244140</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-01-06 23:50:29 -0800</bug_when>
    <thetext>Comment on attachment 244140
Patch

This makes the all-ASCII-but-not-aligned-to-machine-word case slower unnecessarily.

I think a better fix might be to just add:

    if (!isASCII(*source))
        goto useLookupTable;

right after the code that says:

    if (source == end)
        break;

at the end of the isAlignedToMachineWord(source) block.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059342</commentid>
    <comment_count>3</comment_count>
      <attachid>244140</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-01-06 23:51:39 -0800</bug_when>
    <thetext>Comment on attachment 244140
Patch

Great catch, by the way! Please consider my suggested alternate fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059451</commentid>
    <comment_count>4</comment_count>
      <attachid>244172</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-01-07 12:04:04 -0800</bug_when>
    <thetext>Created attachment 244172
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059456</commentid>
    <comment_count>5</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-01-07 12:13:08 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 244140 [details]
&gt; Patch
&gt; 
&gt; Great catch, by the way! Please consider my suggested alternate fix.

Done. Thanks for the suggestion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059723</commentid>
    <comment_count>6</comment_count>
      <attachid>244172</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-07 21:18:26 -0800</bug_when>
    <thetext>Comment on attachment 244172
Patch

Clearing flags on attachment: 244172

Committed r178099: &lt;http://trac.webkit.org/changeset/178099&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1059724</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-01-07 21:18:29 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>244137</attachid>
            <date>2015-01-06 21:09:53 -0800</date>
            <delta_ts>2015-01-06 21:09:53 -0800</delta_ts>
            <desc>Test case</desc>
            <filename>test039.html</filename>
            <type>text/html</type>
            <size>73</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">PGlmcmFtZSBpZD0iaWZyYW1lIiBzcmM9ImRhdGE6LCU0MSU0MiU0MyU0NCU0NSU0NiU0NyU0OCU4
MiU4MiI+PC9pZnJhbWU+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>244140</attachid>
            <date>2015-01-06 21:25:26 -0800</date>
            <delta_ts>2015-01-07 12:04:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-140173-20150106212530.patch</filename>
            <type>text/plain</type>
            <size>5966</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3ODAxOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDE1LTAxLTA2ICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgVGhlIEFTQ0lJ
IGRlY29kaW5nIGZvciBub24gQVNDSUkgY2hhcmFjdGVyIGlzIGluY29ycmVjdCBpZiB0aGlzIGNo
YXJhY3RlciBjb21lcyBhZnRlciB0aGUgZ29pbmcgdGhyb3VnaCBmYXN0IGRlY29kaW5nIGNvZGUg
cGF0aCBhbmQgYmVmb3JlIHRoZSBlbmQgb2YgdGhlIHRleHQgYnkgbGVzcyB0aGFuIGEgbWFjaGlu
ZSB3b3JkIHNpemUgb2YgY2hhcmFjdGVycy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0MDE3My4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUZXN0czogZmFzdC9lbmNvZGluZy9jaGFyLWFmdGVyLWZhc3Qt
cGF0aC1hc2NpaS1kZWNvZGluZy5odG1sLgorCisgICAgICAgICogcGxhdGZvcm0vdGV4dC9UZXh0
Q29kZWNMYXRpbjEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGV4dENvZGVjTGF0aW4xOjpkZWNv
ZGUpOgorICAgICAgICBUaGlzIGZ1bmN0aW9uIGhhcyBhIGJ1ZyB3aGVuIGl0IGdvZXMgdGhyb3Vn
aCB0aGUgZmFzdCBkZWNvZGluZyBwYXRoLiBBZnRlciBjb3B5aW5nIG9uZSBvciAKKyAgICAgICAg
bW9yZSBhbGwgQVNDSUkgTWFjaGluZVdvcmRzIGZyb20gc291cmNlIHRvIHRoZSBkZXN0aW5hdGlv
biwgdGhlIGZvbGxvd2luZyBieXRlIGlzIGNvcGllZAorICAgICAgICBhcyBpcyBmcm9tIHRoZSBz
b3VyY2UgdG8gdGhlIGRlc3RpbmF0aW9uIGV2ZW4gaWYgaXQgaXMgbm9uIEFTQ0lJIGJ5dGUuIFRo
aXMgY2F1c2VzIHRoZSBkZWNvZGVkCisgICAgICAgIGJ5dGVzIHRvIGJlIGluY29ycmVjdC4gVGhl
IGZpeCBpcyB0byB1c2UgdGhlIG1hcHBpbmcgdGFibGUgYWx3YXlzIHNpbmNlIGl0IHJldHVybnMg
dGhlIHNhbWUKKyAgICAgICAgdmFsdWUgaWYgdGhlIGJ5dGUgaXMgQVNDSUkuIEFuIGFsdGVybmF0
aXZlIHNvbHV0aW9uIGlzIHRvIGNoZWNrIGlzQVNDSUkoKnNvdXJjZSkgaXMgdHJ1ZQorICAgICAg
ICBiZWZvcmUgc2V0dGluZyAqZGVzdGluYXRpb24gPSAqc291cmNlLiBCdXQgdGhlIGZ1bmN0aW9u
IGNhbGwgc2VlbXMgdG8gYmUgbW9yZSBleHBlbnNpdmUKKyAgICAgICAgdGhhbiB0aGUgYXJyYXkg
aW5kZXhpbmcuCisKIDIwMTUtMDEtMDYgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
IAogICAgICAgICBEcm9wIFJlc291cmNlUmVzcG9uc2VCYXNlOjpjb25uZWN0aW9uSUQgYW5kIGNv
bm5lY3Rpb25SZXVzZWQgbWVtYmVycwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4
dC9UZXh0Q29kZWNMYXRpbjEuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL3RleHQvVGV4dENvZGVjTGF0aW4xLmNwcAkocmV2aXNpb24gMTc3OTgzKQorKysgU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9UZXh0Q29kZWNMYXRpbjEuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMzcsNyArMTM3LDcgQEAgU3RyaW5nIFRleHRDb2RlY0xhdGluMTo6ZGVjb2RlKGNvbnN0
IGNoYQogICAgICAgICAgICAgICAgICAgICBNYWNoaW5lV29yZCBjaHVuayA9ICpyZWludGVycHJl
dF9jYXN0X3B0cjxjb25zdCBNYWNoaW5lV29yZCo+KHNvdXJjZSk7CiAKICAgICAgICAgICAgICAg
ICAgICAgaWYgKCFpc0FsbEFTQ0lJPExDaGFyPihjaHVuaykpCi0gICAgICAgICAgICAgICAgICAg
ICAgICBnb3RvIHVzZUxvb2t1cFRhYmxlOworICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7
CiAKICAgICAgICAgICAgICAgICAgICAgY29weUFTQ0lJTWFjaGluZVdvcmQoZGVzdGluYXRpb24s
IHNvdXJjZSk7CiAgICAgICAgICAgICAgICAgICAgIHNvdXJjZSArPSBzaXplb2YoTWFjaGluZVdv
cmQpOwpAQCAtMTQ3LDE1ICsxNDcsMTQgQEAgU3RyaW5nIFRleHRDb2RlY0xhdGluMTo6ZGVjb2Rl
KGNvbnN0IGNoYQogICAgICAgICAgICAgICAgIGlmIChzb3VyY2UgPT0gZW5kKQogICAgICAgICAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICpkZXN0aW5hdGlv
biA9ICpzb3VyY2U7Ci0gICAgICAgIH0gZWxzZSB7Ci11c2VMb29rdXBUYWJsZToKLSAgICAgICAg
ICAgIGlmICh0YWJsZVsqc291cmNlXSA+IDB4ZmYpCi0gICAgICAgICAgICAgICAgZ290byB1cENv
bnZlcnRUbzE2Qml0OwotCi0gICAgICAgICAgICAqZGVzdGluYXRpb24gPSB0YWJsZVsqc291cmNl
XTsKICAgICAgICAgfQogCisgICAgICAgIGlmICh0YWJsZVsqc291cmNlXSA+IDB4ZmYpCisgICAg
ICAgICAgICBnb3RvIHVwQ29udmVydFRvMTZCaXQ7CisKKyAgICAgICAgQVNTRVJUKCFpc0FTQ0lJ
KCpzb3VyY2UpIHx8ICpzb3VyY2UgPT0gdGFibGVbKnNvdXJjZV0pOworICAgICAgICAqZGVzdGlu
YXRpb24gPSB0YWJsZVsqc291cmNlXTsKKwogICAgICAgICArK3NvdXJjZTsKICAgICAgICAgKytk
ZXN0aW5hdGlvbjsKICAgICB9CkBAIC0xODgsNyArMTg3LDcgQEAgdXBDb252ZXJ0VG8xNkJpdDoK
ICAgICAgICAgICAgICAgICAgICAgTWFjaGluZVdvcmQgY2h1bmsgPSAqcmVpbnRlcnByZXRfY2Fz
dF9wdHI8Y29uc3QgTWFjaGluZVdvcmQqPihzb3VyY2UpOwogICAgICAgICAgICAgICAgICAgICAK
ICAgICAgICAgICAgICAgICAgICAgaWYgKCFpc0FsbEFTQ0lJPExDaGFyPihjaHVuaykpCi0gICAg
ICAgICAgICAgICAgICAgICAgICBnb3RvIHVzZUxvb2t1cFRhYmxlMTY7CisgICAgICAgICAgICAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAg
ICAgIGNvcHlBU0NJSU1hY2hpbmVXb3JkKGRlc3RpbmF0aW9uMTYsIHNvdXJjZSk7CiAgICAgICAg
ICAgICAgICAgICAgIHNvdXJjZSArPSBzaXplb2YoTWFjaGluZVdvcmQpOwpAQCAtMTk4LDEyICsx
OTcsMTEgQEAgdXBDb252ZXJ0VG8xNkJpdDoKICAgICAgICAgICAgICAgICBpZiAoc291cmNlID09
IGVuZCkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9Ci0gICAgICAg
ICAgICAqZGVzdGluYXRpb24xNiA9ICpzb3VyY2U7Ci0gICAgICAgIH0gZWxzZSB7Ci11c2VMb29r
dXBUYWJsZTE2OgotICAgICAgICAgICAgKmRlc3RpbmF0aW9uMTYgPSB0YWJsZVsqc291cmNlXTsK
ICAgICAgICAgfQotICAgICAgICAKKworICAgICAgICBBU1NFUlQoIWlzQVNDSUkoKnNvdXJjZSkg
fHwgKnNvdXJjZSA9PSB0YWJsZVsqc291cmNlXSk7CisgICAgICAgICpkZXN0aW5hdGlvbjE2ID0g
dGFibGVbKnNvdXJjZV07CisKICAgICAgICAgKytzb3VyY2U7CiAgICAgICAgICsrZGVzdGluYXRp
b24xNjsKICAgICB9CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNzgwMTkpCisrKyBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAxNS0wMS0wNiAgU2Fp
ZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhhbGxhd2FAYXBwbGUuY29tPgorCisgICAgICAgIFRoZSBB
U0NJSSBkZWNvZGluZyBmb3Igbm9uIEFTQ0lJIGNoYXJhY3RlciBpcyBpbmNvcnJlY3QgaWYgdGhp
cyBjaGFyYWN0ZXIgY29tZXMgYWZ0ZXIgdGhlIGdvaW5nIHRocm91Z2ggZmFzdCBkZWNvZGluZyBj
b2RlIHBhdGggYW5kIGJlZm9yZSB0aGUgZW5kIG9mIHRoZSB0ZXh0IGJ5IGxlc3MgdGhhbiBhIG1h
Y2hpbmUgd29yZCBzaXplIG9mIGNoYXJhY3RlcnMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDAxNzMuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2VuY29kaW5nL2NoYXItYWZ0ZXItZmFzdC1w
YXRoLWFzY2lpLWRlY29kaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9l
bmNvZGluZy9jaGFyLWFmdGVyLWZhc3QtcGF0aC1hc2NpaS1kZWNvZGluZy5odG1sOiBBZGRlZC4K
KyAgICAgICAgRW5zdXJlcyB3aGVuIGFuIG5vbiBBU0NJSSBjaGFyYWN0ZXIgY29tZXMgYWZ0ZXIg
YSBtYWNoaW5lIHdvcmQsIHdob3NlIGJ5dGVzIGFyZSBhbGwKKyAgICAgICAgb2YgQVNDSUkgY2hh
cmFjdGVycywgaXMgZGVjb2RlZCBjb3JyZWN0bHkuCisKIDIwMTUtMDEtMDYgIEJlbSBKb25lcy1C
ZXkgIDxiam9uZXNiZUBhZG9iZS5jb20+CiAKICAgICAgICAgW0NTUyBNYXNraW5nXVtDU1MgU2hh
cGVzXSBMYXJnZSBjb3JuZXIgcmFkaWkgdXNlIHdpdGggaW5zZXQoKSBjbGlwLXBhdGggYXJlIG5v
dCBwcm9wZXJseSBjb25zdHJhaW5lZApJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9j
aGFyLWFmdGVyLWZhc3QtcGF0aC1hc2NpaS1kZWNvZGluZy1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9jaGFyLWFmdGVyLWZhc3QtcGF0aC1hc2Np
aS1kZWNvZGluZy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2VuY29kaW5nL2NoYXItYWZ0ZXItZmFzdC1wYXRoLWFzY2lpLWRlY29kaW5nLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDIgQEAKKworQUJDREVGR0jigJrigJoKSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvY2hhci1hZnRlci1mYXN0LXBhdGgtYXNjaWktZGVj
b2RpbmcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2VuY29kaW5nL2NoYXIt
YWZ0ZXItZmFzdC1wYXRoLWFzY2lpLWRlY29kaW5nLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2VuY29kaW5nL2NoYXItYWZ0ZXItZmFzdC1wYXRoLWFzY2lpLWRlY29kaW5n
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyMyBAQAorPGh0bWw+Cis8Ym9keT4KKyAg
PGlmcmFtZSBpZD0iaWZyYW1lIiBzcmM9ImRhdGE6LCU0MSU0MiU0MyU0NCU0NSU0NiU0NyU0OCU4
MiU4MiI+PC9pZnJhbWU+CisgIDxwIGlkPSJyZXN1bHQiPjwvcD4KKyAgPHNjcmlwdD4KKyAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dChmYWxz
ZSk7CisgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICB9CisKKyAgICBzZXRU
aW1lb3V0KGNvcHlJZnJhbWVUZXh0LCA1MDApOworICAgIAorICAgIGZ1bmN0aW9uIGNvcHlJZnJh
bWVUZXh0KCkKKyAgICB7ICAKKyAgICAgIHZhciBpZnJhbWUgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiaWZyYW1lIik7CisgICAgICB2YXIgcmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInJlc3VsdCIpOworICAgICAgcmVzdWx0LmlubmVySFRNTCA9IGlmcmFtZS5jb250ZW50RG9j
dW1lbnQuYm9keS5pbm5lckhUTUw7CisgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
ICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0KKyAgPC9zY3JpcHQ+Cis8L2JvZHk+
Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>244172</attachid>
            <date>2015-01-07 12:04:04 -0800</date>
            <delta_ts>2015-01-07 21:18:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-140173-20150107120408.patch</filename>
            <type>text/plain</type>
            <size>4719</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3ODAxOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIwIEBACisyMDE1LTAxLTA2ICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgVGhlIEFTQ0lJ
IGRlY29kaW5nIGZvciBub24gQVNDSUkgY2hhcmFjdGVyIGlzIGluY29ycmVjdCBpZiB0aGlzIGNo
YXJhY3RlciBjb21lcyBhZnRlciBnb2luZyB0aHJvdWdoIHRoZSBmYXN0IGRlY29kaW5nIGNvZGUg
cGF0aCBhbmQgYmVmb3JlIHRoZSBlbmQgb2YgdGhlIHRleHQgYnkgbGVzcyB0aGFuIGEgbWFjaGlu
ZSB3b3JkIHNpemUgb2YgY2hhcmFjdGVycy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE0MDE3My4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUZXN0czogZmFzdC9lbmNvZGluZy9jaGFyLWFmdGVyLWZhc3Qt
cGF0aC1hc2NpaS1kZWNvZGluZy5odG1sLgorCisgICAgICAgICogcGxhdGZvcm0vdGV4dC9UZXh0
Q29kZWNMYXRpbjEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGV4dENvZGVjTGF0aW4xOjpkZWNv
ZGUpOgorICAgICAgICBUaGlzIGZ1bmN0aW9uIGhhcyBhIGJ1ZyB3aGVuIGl0IGdvZXMgdGhyb3Vn
aCB0aGUgZmFzdCBkZWNvZGluZyBjb2RlIHBhdGguIEFmdGVyIGNvcHlpbmcKKyAgICAgICAgb25l
IG9yIG1vcmUgYWxsIEFTQ0lJIE1hY2hpbmVXb3JkcyBmcm9tIHNvdXJjZSB0byB0aGUgZGVzdGlu
YXRpb24sIHRoZSBmb2xsb3dpbmcgYnl0ZQorICAgICAgICBpcyBjb3BpZWQgYXMgaXMgZnJvbSB0
aGUgc291cmNlIHRvIHRoZSBkZXN0aW5hdGlvbiBldmVuIGlmIGl0IGlzIG5vbiBBU0NJSSBieXRl
LiBUaGlzCisgICAgICAgIGNhdXNlcyB0aGUgZGVjb2RlZCBieXRlcyB0byBiZSBpbmNvcnJlY3Qu
IFRoZSBmaXggaXMgdG8gZW5zdXJlIHRoYXQgdGhlIGN1cnJlbnQgYnl0ZQorICAgICAgICBpcyBz
dGlsbCBBU0NJSSBhZnRlciBleGl0aW5nIHRoZSBmYXN0IGRlY29kaW5nIGNvZGUgcGF0aC4KKyAK
IDIwMTUtMDEtMDYgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBE
cm9wIFJlc291cmNlUmVzcG9uc2VCYXNlOjpjb25uZWN0aW9uSUQgYW5kIGNvbm5lY3Rpb25SZXVz
ZWQgbWVtYmVycwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9UZXh0Q29kZWNM
YXRpbjEuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvVGV4
dENvZGVjTGF0aW4xLmNwcAkocmV2aXNpb24gMTc3OTgzKQorKysgU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vdGV4dC9UZXh0Q29kZWNMYXRpbjEuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDYsNiAr
MTQ2LDEwIEBAIFN0cmluZyBUZXh0Q29kZWNMYXRpbjE6OmRlY29kZShjb25zdCBjaGEKIAogICAg
ICAgICAgICAgICAgIGlmIChzb3VyY2UgPT0gZW5kKQogICAgICAgICAgICAgICAgICAgICBicmVh
azsKKworICAgICAgICAgICAgICAgIC8vICpzb3VyY2UgbWF5IG5vdCBiZSBBU0NJSSBhbnltb3Jl
IGlmIHNvdXJjZSBtb3ZlcyBpbnNpZGUgdGhlIGxvb3Agb2YgdGhlIGZhc3QgY29kZSBwYXRoCisg
ICAgICAgICAgICAgICAgaWYgKCFpc0FTQ0lJKCpzb3VyY2UpKQorICAgICAgICAgICAgICAgICAg
ICBnb3RvIHVzZUxvb2t1cFRhYmxlOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgKmRlc3Rp
bmF0aW9uID0gKnNvdXJjZTsKICAgICAgICAgfSBlbHNlIHsKQEAgLTE5Nyw2ICsyMDEsMTAgQEAg
dXBDb252ZXJ0VG8xNkJpdDoKICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICBpZiAo
c291cmNlID09IGVuZCkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgICAg
ICAgICAvLyAqc291cmNlIG1heSBub3QgYmUgQVNDSUkgYW55bW9yZSBpZiBzb3VyY2UgbW92ZXMg
aW5zaWRlIHRoZSBsb29wIG9mIHRoZSBmYXN0IGNvZGUgcGF0aAorICAgICAgICAgICAgICAgIGlm
ICghaXNBU0NJSSgqc291cmNlKSkKKyAgICAgICAgICAgICAgICAgICAgZ290byB1c2VMb29rdXBU
YWJsZTE2OwogICAgICAgICAgICAgfQogICAgICAgICAgICAgKmRlc3RpbmF0aW9uMTYgPSAqc291
cmNlOwogICAgICAgICB9IGVsc2UgewpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMTc4MDE5KQorKysgTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTUt
MDEtMDYgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KKworICAg
ICAgICBUaGUgQVNDSUkgZGVjb2RpbmcgZm9yIG5vbiBBU0NJSSBjaGFyYWN0ZXIgaXMgaW5jb3Jy
ZWN0IGlmIHRoaXMgY2hhcmFjdGVyIGNvbWVzIGFmdGVyIGdvaW5nIHRocm91Z2ggdGhlIGZhc3Qg
ZGVjb2RpbmcgY29kZSBwYXRoIGFuZCBiZWZvcmUgdGhlIGVuZCBvZiB0aGUgdGV4dCBieSBsZXNz
IHRoYW4gYSBtYWNoaW5lIHdvcmQgc2l6ZSBvZiBjaGFyYWN0ZXJzLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQwMTczLgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9lbmNvZGluZy9jaGFyLWFm
dGVyLWZhc3QtcGF0aC1hc2NpaS1kZWNvZGluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZW5jb2RpbmcvY2hhci1hZnRlci1mYXN0LXBhdGgtYXNjaWktZGVjb2RpbmcuaHRt
bDogQWRkZWQuCisgICAgICAgIEVuc3VyZXMgd2hlbiBhbiBub24gQVNDSUkgY2hhcmFjdGVyIGNv
bWVzIGFmdGVyIGEgbWFjaGluZSB3b3JkLCB3aG9zZSBieXRlcyBhcmUgYWxsCisgICAgICAgIEFT
Q0lJIGNoYXJhY3RlcnMsIGlzIGRlY29kZWQgY29ycmVjdGx5LgorCiAyMDE1LTAxLTA2ICBCZW0g
Sm9uZXMtQmV5ICA8YmpvbmVzYmVAYWRvYmUuY29tPgogCiAgICAgICAgIFtDU1MgTWFza2luZ11b
Q1NTIFNoYXBlc10gTGFyZ2UgY29ybmVyIHJhZGlpIHVzZSB3aXRoIGluc2V0KCkgY2xpcC1wYXRo
IGFyZSBub3QgcHJvcGVybHkgY29uc3RyYWluZWQKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZW5j
b2RpbmcvY2hhci1hZnRlci1mYXN0LXBhdGgtYXNjaWktZGVjb2RpbmctZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvY2hhci1hZnRlci1mYXN0LXBh
dGgtYXNjaWktZGVjb2RpbmctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvZmFzdC9lbmNvZGluZy9jaGFyLWFmdGVyLWZhc3QtcGF0aC1hc2NpaS1kZWNvZGluZy1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyIEBACisKK0FCQ0RFRkdI4oCa4oCa
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2VuY29kaW5nL2NoYXItYWZ0ZXItZmFzdC1wYXRoLWFz
Y2lpLWRlY29kaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGlu
Zy9jaGFyLWFmdGVyLWZhc3QtcGF0aC1hc2NpaS1kZWNvZGluZy5odG1sCShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9jaGFyLWFmdGVyLWZhc3QtcGF0aC1hc2NpaS1k
ZWNvZGluZy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjMgQEAKKzxodG1sPgorPGJv
ZHk+CisgIDxpZnJhbWUgaWQ9ImlmcmFtZSIgc3JjPSJkYXRhOiwlNDElNDIlNDMlNDQlNDUlNDYl
NDclNDglODIlODIiPjwvaWZyYW1lPgorICA8cCBpZD0icmVzdWx0Ij48L3A+CisgIDxzY3JpcHQ+
CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICB0ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoZmFsc2UpOworICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgfQorCisg
ICAgc2V0VGltZW91dChjb3B5SWZyYW1lVGV4dCwgNTAwKTsKKyAgICAKKyAgICBmdW5jdGlvbiBj
b3B5SWZyYW1lVGV4dCgpCisgICAgeyAgCisgICAgICB2YXIgaWZyYW1lID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImlmcmFtZSIpOworICAgICAgdmFyIHJlc3VsdCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZXN1bHQiKTsKKyAgICAgIHJlc3VsdC5pbm5lckhUTUwgPSBpZnJhbWUuY29u
dGVudERvY3VtZW50LmJvZHkuaW5uZXJIVE1MOworICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9CisgIDwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
      

    </bug>

</bugzilla>