<?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>108498</bug_id>
          
          <creation_ts>2013-01-31 10:33:09 -0800</creation_ts>
          <short_desc>[Chromium] Add two-word misspelling to mock spellchecker</short_desc>
          <delta_ts>2013-01-31 14:22:39 -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>HTML Editing</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>
          
          <blocked>106815</blocked>
    
    <blocked>108525</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Rouslan Solomakhin">rouslan+webkit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>groby</cc>
    
    <cc>jochen</cc>
    
    <cc>rniwa</cc>
    
    <cc>rouslan+webkit</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>821634</commentid>
    <comment_count>0</comment_count>
    <who name="Rouslan Solomakhin">rouslan+webkit</who>
    <bug_when>2013-01-31 10:33:09 -0800</bug_when>
    <thetext>[Chromium] Add two-word misspelling to mock spellchecker</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821644</commentid>
    <comment_count>1</comment_count>
      <attachid>185809</attachid>
    <who name="Rouslan Solomakhin">rouslan+webkit</who>
    <bug_when>2013-01-31 10:38:09 -0800</bug_when>
    <thetext>Created attachment 185809
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821647</commentid>
    <comment_count>2</comment_count>
      <attachid>185809</attachid>
    <who name="Rouslan Solomakhin">rouslan+webkit</who>
    <bug_when>2013-01-31 10:39:55 -0800</bug_when>
    <thetext>Comment on attachment 185809
Patch

This is the part of https://webkit.org/b/106815 that makesediting/spelling/spelling-exactly-selected-multiple-words pass in Chromium.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821744</commentid>
    <comment_count>3</comment_count>
      <attachid>185809</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2013-01-31 11:23:55 -0800</bug_when>
    <thetext>Comment on attachment 185809
Patch

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

You can use &quot;webkit-patch land-safely&quot; to reupload the patch and forward on the r+.

&gt; Tools/DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.cpp:76
&gt; +        int maxWordLength = static_cast&lt;int&gt;(stringText.length()) - wordOffset;
&gt; +        int wordLength;

I think you would have fewer casts if you made all the length types unsigned.  Conceptually, a negative length doesn&apos;t make sense.

&gt; Tools/DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.cpp:167
&gt; +        m_misspelledWords.append(WTF::String::fromUTF8(misspelledWords[i]));

Nit: remove WTF::

&gt; Tools/DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.h:73
&gt; +    Vector&lt;WTF::String&gt; m_misspelledWords;

Nit: remove WTF::</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821783</commentid>
    <comment_count>4</comment_count>
      <attachid>185831</attachid>
    <who name="Rouslan Solomakhin">rouslan+webkit</who>
    <bug_when>2013-01-31 11:51:47 -0800</bug_when>
    <thetext>Created attachment 185831
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821789</commentid>
    <comment_count>5</comment_count>
    <who name="Rouslan Solomakhin">rouslan+webkit</who>
    <bug_when>2013-01-31 11:54:24 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; You can use &quot;webkit-patch land-safely&quot; to reupload the patch and forward on the r+.

I ran &quot;webkit-patch land-safely&quot;, but I think it did not produce the desired effect. It said that do not have EditBugs permission and my login is not listed in committers.py.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821793</commentid>
    <comment_count>6</comment_count>
    <who name="Rouslan Solomakhin">rouslan+webkit</who>
    <bug_when>2013-01-31 12:02:05 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; &gt; Tools/DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.cpp:76
&gt; &gt; +        int maxWordLength = static_cast&lt;int&gt;(stringText.length()) - wordOffset;
&gt; &gt; +        int wordLength;
&gt; 
&gt; I think you would have fewer casts if you made all the length types unsigned.  Conceptually, a negative length doesn&apos;t make sense.

As we discussed offline, keeping int types because WTF::String::find() returns int types that can be negative.

&gt; &gt; Tools/DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.cpp:167
&gt; &gt; +        m_misspelledWords.append(WTF::String::fromUTF8(misspelledWords[i]));
&gt; 
&gt; Nit: remove WTF::

Done.

&gt; &gt; Tools/DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.h:73
&gt; &gt; +    Vector&lt;WTF::String&gt; m_misspelledWords;
&gt; 
&gt; Nit: remove WTF::

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821797</commentid>
    <comment_count>7</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-01-31 12:03:18 -0800</bug_when>
    <thetext>This patch modifies the actual code, not just the mock code, doesn&apos;t it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821799</commentid>
    <comment_count>8</comment_count>
      <attachid>185831</attachid>
    <who name="Rouslan Solomakhin">rouslan+webkit</who>
    <bug_when>2013-01-31 12:03:34 -0800</bug_when>
    <thetext>Comment on attachment 185831
Patch for landing

Wrong patch, sorry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821803</commentid>
    <comment_count>9</comment_count>
      <attachid>185832</attachid>
    <who name="Rouslan Solomakhin">rouslan+webkit</who>
    <bug_when>2013-01-31 12:04:53 -0800</bug_when>
    <thetext>Created attachment 185832
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821826</commentid>
    <comment_count>10</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2013-01-31 12:25:44 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #3)
&gt; &gt; You can use &quot;webkit-patch land-safely&quot; to reupload the patch and forward on the r+.
&gt; 
&gt; I ran &quot;webkit-patch land-safely&quot;, but I think it did not produce the desired effect. It said that do not have EditBugs permission and my login is not listed in committers.py.

It worked.  It added &quot;Reviewed by Tony Chang&quot; and it set cq?.  My guess is the editbugs permission was because it tried to assign the bug to you.  The committers.py was probably a warning.  If you pasted the full error message, that would be helpful to diagnose.

It sets cq? because you&apos;re not a committer yet.  Once you get commit, it will set cq+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821838</commentid>
    <comment_count>11</comment_count>
    <who name="Rouslan Solomakhin">rouslan+webkit</who>
    <bug_when>2013-01-31 12:31:57 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (In reply to comment #5)
&gt; &gt; (In reply to comment #3)
&gt; &gt; &gt; You can use &quot;webkit-patch land-safely&quot; to reupload the patch and forward on the r+.
&gt; &gt; 
&gt; &gt; I ran &quot;webkit-patch land-safely&quot;, but I think it did not produce the desired effect. It said that do not have EditBugs permission and my login is not listed in committers.py.
&gt; 
&gt; It worked.  It added &quot;Reviewed by Tony Chang&quot; and it set cq?.  My guess is the editbugs permission was because it tried to assign the bug to you.  The committers.py was probably a warning.  If you pasted the full error message, that would be helpful to diagnose.
&gt; 
&gt; It sets cq? because you&apos;re not a committer yet.  Once you get commit, it will set cq+.

Reading your explanation makes me think that the behavior was correct. Here is the command output, just to make sure:

$ ./Tools/Scripts/webkit-patch land-safely
Fetching: https://bugs.webkit.org/show_bug.cgi?id=108498&amp;ctype=xml&amp;excludefield=attachmentdata
No reviewed patches on bug 108498, cannot infer reviewer.
Failed to guess reviewer from bug 108498 and --reviewer= not provided.  Not updating ChangeLogs with reviewer.
Fetching: https://bugs.webkit.org/show_bug.cgi?id=108498&amp;ctype=xml&amp;excludefield=attachmentdata
Fetching: https://bugs.webkit.org/show_bug.cgi?id=108498&amp;ctype=xml&amp;excludefield=attachmentdata
Logging in as rouslan+webkit@chromium.org...
Assigning bug 108498 to rouslan+webkit@chromium.org
Failed to assign bug to you (can&apos;t find assigned_to) control.
Do you have EditBugs privileges at bugs.webkit.org?
https://bugs.webkit.org/userprefs.cgi?tab=permissions

If not, you should email webkit-committers@lists.webkit.org or ask in #webkit
for someone to add EditBugs to your bugs.webkit.org account.
Adding patch &quot;Patch for landing&quot; to https://bugs.webkit.org/show_bug.cgi?id=108498
Your Bugzilla login is not listed in committers.py. Uploading with cq? instead of cq+</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821871</commentid>
    <comment_count>12</comment_count>
      <attachid>185832</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-31 13:00:25 -0800</bug_when>
    <thetext>Comment on attachment 185832
Patch for landing

Clearing flags on attachment: 185832

Committed r141471: &lt;http://trac.webkit.org/changeset/141471&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>821872</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-31 13:00:30 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185809</attachid>
            <date>2013-01-31 10:38:09 -0800</date>
            <delta_ts>2013-01-31 11:51:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108498-20130131103452.patch</filename>
            <type>text/plain</type>
            <size>9006</size>
            <attacher name="Rouslan Solomakhin">rouslan+webkit</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNDMwCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNWJkZmNmZDQ2MmUyNGMwZGY1NDNiZDk1NTQ0YTlkZTIx
ZTk1MTBlMC4uODZkYWM1Mzg0MjYzZDcwMGZjYzYyZmQyMTRkYjFmOTVlZmE0N2U2NSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIw
IEBACisyMDEzLTAxLTMxICBSb3VzbGFuIFNvbG9tYWtoaW4gIDxyb3VzbGFuQGNocm9taXVtLm9y
Zz4KKworICAgICAgICBbQ2hyb21pdW1dIEFkZCB0d28td29yZCBtaXNzcGVsbGluZyB0byBtb2Nr
IHNwZWxsY2hlY2tlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA4NDk4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgU29tZSBsYXlvdXQgdGVzdHMgdmVyaWZ5IHNwZWxsY2hlY2sgYmVoYXZpb3Igd2hlbiBt
dWx0aXBsZSB3b3JkcyBhcmUKKyAgICAgICAgbWFya2VkIGFzIGEgc2luZ2xlIG1pc3NwZWxsaW5n
LiBUaGlzIGNoYW5nZSBhZGRzIGEgdHdvLXdvcmQgbWlzc3BlbGxpbmcKKyAgICAgICAgJ3VwcGVy
IGNhc2UnIHRvIHRoZSBtb2NrIHNwZWxsY2hlY2tlciB1c2VkIGJ5IGxheW91dCB0ZXN0cy4KKwor
ICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL01vY2tTcGVs
bENoZWNrLmNwcDoKKyAgICAgICAgKE1vY2tTcGVsbENoZWNrOjpzcGVsbENoZWNrV29yZCk6IE1v
ZGlmaWVkIHRvIGhhbmRsZSBzcGFjZXMgaW4gbWlzc3BlbGxpbmdzLgorICAgICAgICAoTW9ja1Nw
ZWxsQ2hlY2s6OmluaXRpYWxpemVJZk5lZWRlZCk6ICBNb2RpZmllZCB0byB1c2UgYSB2ZWN0b3Ig
aW5zdGVhZCBvZiBhIGhhc2ggdGFibGUuCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vVGVzdFJ1bm5lci9zcmMvTW9ja1NwZWxsQ2hlY2suaDoKKyAgICAgICAgKE1vY2tTcGVsbENo
ZWNrKTogQ2hhbmdlZCBtaXNzcGVsbGluZ3MgY29udGFpbmVyIGZyb20gaGFzaCB0YWJsZSB0byB2
ZWN0b3IuCisKIDIwMTMtMDEtMzEgIFNpbW9uIEhhdXNtYW5uICA8c2ltb24uaGF1c21hbm5AZGln
aWEuY29tPgogCiAgICAgICAgIFtRdF0gTWFrZSBpdCBwb3NzaWJsZSB0byBjb21waWxlIFdlYktp
dDIgUXQgcmVsYXRlZCBmaWxlcyB3aXRob3V0IGFjY2VzcyB0byBpbnRlcm5hbCBXSzIgQysrIEFQ
SQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9z
cmMvTW9ja1NwZWxsQ2hlY2suY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVz
dFJ1bm5lci9zcmMvTW9ja1NwZWxsQ2hlY2suY3BwCmluZGV4IDc1OTNjNzE5MDQyMzUwZDJjMjFl
YWExOWRhYjlmNWE5OTk5MGE4ODEuLjg3MGQ0ZGMzMWFmODRjMmU1MWU4M2E0ZGY5Y2NiNDY5OWUx
ZGM4OGUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5u
ZXIvc3JjL01vY2tTcGVsbENoZWNrLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJv
bWl1bS9UZXN0UnVubmVyL3NyYy9Nb2NrU3BlbGxDaGVjay5jcHAKQEAgLTU4LDcgKzU4LDcgQEAg
Ym9vbCBNb2NrU3BlbGxDaGVjazo6c3BlbGxDaGVja1dvcmQoY29uc3QgV2ViU3RyaW5nJiB0ZXh0
LCBpbnQqIG1pc3NwZWxsZWRPZmZzZXQKIAogICAgIC8vIENvbnZlcnQgdG8gYSBTdHJpbmcgYmVj
YXVzZSB3ZSBzdG9yZSBTdHJpbmcgaW5zdGFuY2VzIGluCiAgICAgLy8gbV9taXNzcGVsbGVkV29y
ZHMgYW5kIFdlYlN0cmluZyBoYXMgbm8gZmluZCgpLgotICAgIFdURjo6U3RyaW5nIHN0cmluZ1Rl
eHQodGV4dC5kYXRhKCksIHRleHQubGVuZ3RoKCkpOworICAgIFN0cmluZyBzdHJpbmdUZXh0KHRl
eHQuZGF0YSgpLCB0ZXh0Lmxlbmd0aCgpKTsKICAgICBpbnQgc2tpcHBlZExlbmd0aCA9IDA7CiAK
ICAgICB3aGlsZSAoIXN0cmluZ1RleHQuaXNFbXB0eSgpKSB7CkBAIC02OSwyNyArNjksMzQgQEAg
Ym9vbCBNb2NrU3BlbGxDaGVjazo6c3BlbGxDaGVja1dvcmQoY29uc3QgV2ViU3RyaW5nJiB0ZXh0
LCBpbnQqIG1pc3NwZWxsZWRPZmZzZXQKICAgICAgICAgLy8gKFRoaXMgaXMgYSBzaW1wbGUgdmVy
c2lvbiBvZiBvdXIgU3BlbGxDaGVja1dvcmRJdGVyYXRvciBjbGFzcy4pCiAgICAgICAgIC8vIElm
IHRoZSBnaXZlbiBzdHJpbmcgZG9lc24ndCBpbmNsdWRlIGFueSBBU0NJSSBjaGFyYWN0ZXJzLCB3
ZSBjYW4gdHJlYXQgdGhlCiAgICAgICAgIC8vIHN0cmluZyBhcyB2YWxpZCBvbmUuCi0gICAgICAg
IC8vIFVuZm9ydHVuYXRlbHksIFRoaXMgaW1wbGVtZW50YXRpb24gc3BsaXRzIGEgY29udHJhY3Rp
b24sIGkuZS4gImlzbid0IiBpcwotICAgICAgICAvLyBzcGxpdCBpbnRvIHR3byBwaWVjZXMgImlz
biIgYW5kICJ0Ii4gVGhpcyBpcyBPSyBiZWNhdXNlIHdlYmtpdCB0ZXN0cwotICAgICAgICAvLyBk
b24ndCBoYXZlIG1pc3NwZWxsZWQgY29udHJhY3Rpb25zLgogICAgICAgICBpbnQgd29yZE9mZnNl
dCA9IHN0cmluZ1RleHQuZmluZChpc0FTQ0lJQWxwaGEpOwogICAgICAgICBpZiAod29yZE9mZnNl
dCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpbnQgd29yZEVuZCA9
IHN0cmluZ1RleHQuZmluZChpc05vdEFTQ0lJQWxwaGEsIHdvcmRPZmZzZXQpOwotICAgICAgICBp
bnQgd29yZExlbmd0aCA9IHdvcmRFbmQgPT0gLTEgPyBzdGF0aWNfY2FzdDxpbnQ+KHN0cmluZ1Rl
eHQubGVuZ3RoKCkpIC0gd29yZE9mZnNldCA6IHdvcmRFbmQgLSB3b3JkT2Zmc2V0OworICAgICAg
ICBpbnQgbWF4V29yZExlbmd0aCA9IHN0YXRpY19jYXN0PGludD4oc3RyaW5nVGV4dC5sZW5ndGgo
KSkgLSB3b3JkT2Zmc2V0OworICAgICAgICBpbnQgd29yZExlbmd0aDsKKyAgICAgICAgU3RyaW5n
IHdvcmQ7CiAKICAgICAgICAgLy8gTG9vayB1cCBvdXIgbWlzc3BlbGxlZC13b3JkIHRhYmxlIHRv
IGNoZWNrIGlmIHRoZSBleHRyYWN0ZWQgd29yZCBpcyBhCiAgICAgICAgIC8vIGtub3duIG1pc3Nw
ZWxsZWQgd29yZCwgYW5kIHJldHVybiB0aGUgb2Zmc2V0IGFuZCB0aGUgbGVuZ3RoIG9mIHRoZQog
ICAgICAgICAvLyBleHRyYWN0ZWQgd29yZCBpZiB0aGlzIHdvcmQgaXMgYSBrbm93biBtaXNzcGVs
bGVkIHdvcmQuCiAgICAgICAgIC8vIChTZWUgdGhlIGNvbW1lbnQgaW4gTW9ja1NwZWxsQ2hlY2s6
OmluaXRpYWxpemVJZk5lZWRlZCgpIHdoeSB3ZSB1c2UgYQogICAgICAgICAvLyBtaXNzcGVsbGVk
LXdvcmQgdGFibGUuKQotICAgICAgICBXVEY6OlN0cmluZyB3b3JkID0gc3RyaW5nVGV4dC5zdWJz
dHJpbmcod29yZE9mZnNldCwgd29yZExlbmd0aCk7Ci0gICAgICAgIGlmIChtX21pc3NwZWxsZWRX
b3Jkcy5jb250YWlucyh3b3JkKSkgewotICAgICAgICAgICAgKm1pc3NwZWxsZWRPZmZzZXQgPSB3
b3JkT2Zmc2V0ICsgc2tpcHBlZExlbmd0aDsKLSAgICAgICAgICAgICptaXNzcGVsbGVkTGVuZ3Ro
ID0gd29yZExlbmd0aDsKLSAgICAgICAgICAgIGJyZWFrOworICAgICAgICBmb3IgKGludCBpID0g
MDsgaSA8IG1fbWlzc3BlbGxlZFdvcmRzLnNpemUoKTsgKytpKSB7CisgICAgICAgICAgICB3b3Jk
TGVuZ3RoID0gc3RhdGljX2Nhc3Q8aW50PihtX21pc3NwZWxsZWRXb3Jkcy5hdChpKS5sZW5ndGgo
KSkgPiBtYXhXb3JkTGVuZ3RoID8gbWF4V29yZExlbmd0aCA6IHN0YXRpY19jYXN0PGludD4obV9t
aXNzcGVsbGVkV29yZHMuYXQoaSkubGVuZ3RoKCkpOworICAgICAgICAgICAgd29yZCA9IHN0cmlu
Z1RleHQuc3Vic3RyaW5nKHdvcmRPZmZzZXQsIHdvcmRMZW5ndGgpOworICAgICAgICAgICAgaWYg
KHdvcmQgPT0gbV9taXNzcGVsbGVkV29yZHMuYXQoaSkgJiYgKHN0YXRpY19jYXN0PGludD4oc3Ry
aW5nVGV4dC5sZW5ndGgoKSkgPT0gd29yZE9mZnNldCArIHdvcmRMZW5ndGggfHwgaXNOb3RBU0NJ
SUFscGhhKHN0cmluZ1RleHRbd29yZE9mZnNldCArIHdvcmRMZW5ndGhdKSkpIHsKKyAgICAgICAg
ICAgICAgICAqbWlzc3BlbGxlZE9mZnNldCA9IHdvcmRPZmZzZXQgKyBza2lwcGVkTGVuZ3RoOwor
ICAgICAgICAgICAgICAgICptaXNzcGVsbGVkTGVuZ3RoID0gd29yZExlbmd0aDsKKyAgICAgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogCisgICAgICAgIGlmICgq
bWlzc3BlbGxlZExlbmd0aCA+IDApCisgICAgICAgICAgICBicmVhazsKKworICAgICAgICBpbnQg
d29yZEVuZCA9IHN0cmluZ1RleHQuZmluZChpc05vdEFTQ0lJQWxwaGEsIHdvcmRPZmZzZXQpOwor
ICAgICAgICB3b3JkTGVuZ3RoID0gd29yZEVuZCA9PSAtMSA/IHN0YXRpY19jYXN0PGludD4oc3Ry
aW5nVGV4dC5sZW5ndGgoKSkgLSB3b3JkT2Zmc2V0IDogd29yZEVuZCAtIHdvcmRPZmZzZXQ7CisK
ICAgICAgICAgQVNTRVJUKDAgPCB3b3JkT2Zmc2V0ICsgd29yZExlbmd0aCk7CiAgICAgICAgIHN0
cmluZ1RleHQgPSBzdHJpbmdUZXh0LnN1YnN0cmluZyh3b3JkT2Zmc2V0ICsgd29yZExlbmd0aCk7
CiAgICAgICAgIHNraXBwZWRMZW5ndGggKz0gd29yZE9mZnNldCArIHdvcmRMZW5ndGg7CkBAIC0x
NTEsMTIgKzE1OCwxMyBAQCBib29sIE1vY2tTcGVsbENoZWNrOjppbml0aWFsaXplSWZOZWVkZWQo
KQogICAgICAgICAiaWZtbXAiLAogICAgICAgICAicXdlcnR5dWlvcGFzZCIsCiAgICAgICAgICJx
d2VydHl1aW9wYXNkZiIsCisgICAgICAgICJ1cHBlciBjYXNlIiwKICAgICAgICAgIndlbGxjb21l
IgogICAgIH07CiAKICAgICBtX21pc3NwZWxsZWRXb3Jkcy5jbGVhcigpOwogICAgIGZvciAoc2l6
ZV90IGkgPSAwOyBpIDwgYXJyYXlzaXplKG1pc3NwZWxsZWRXb3Jkcyk7ICsraSkKLSAgICAgICAg
bV9taXNzcGVsbGVkV29yZHMuYWRkKFdURjo6U3RyaW5nOjpmcm9tVVRGOChtaXNzcGVsbGVkV29y
ZHNbaV0pLCBmYWxzZSk7CisgICAgICAgIG1fbWlzc3BlbGxlZFdvcmRzLmFwcGVuZChXVEY6OlN0
cmluZzo6ZnJvbVVURjgobWlzc3BlbGxlZFdvcmRzW2ldKSk7CiAKICAgICAvLyBNYXJrIGFzIGlu
aXRpYWxpemVkIHRvIHByZXZlbnQgdGhpcyBvYmplY3QgZnJvbSBiZWluZyBpbml0aWFsaXplZCB0
d2ljZQogICAgIC8vIG9yIG1vcmUuCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9j
aHJvbWl1bS9UZXN0UnVubmVyL3NyYy9Nb2NrU3BlbGxDaGVjay5oIGIvVG9vbHMvRHVtcFJlbmRl
clRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMvTW9ja1NwZWxsQ2hlY2suaAppbmRleCA4YTk4
ZDcwN2MwNGIxYmM4NWUyOGY1NzEwNGRiYzAzMTY0MTQ2YjVkLi5iZmExODhiMjcwNWUyZWY4ZWFi
N2E2MDI4NDRmNjMzNmEyODQ4OTRjIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9j
aHJvbWl1bS9UZXN0UnVubmVyL3NyYy9Nb2NrU3BlbGxDaGVjay5oCisrKyBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL01vY2tTcGVsbENoZWNrLmgKQEAgLTMz
LDggKzMzLDcgQEAKIAogI2luY2x1ZGUgIlBsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJTdHJp
bmcuaCIKICNpbmNsdWRlICJQbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViVmVjdG9yLmgiCi0j
aW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+
CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5o
PgogCiAvLyBBIG1vY2sgaW1wbGVtZW50YXRpb24gb2YgYSBzcGVsbC1jaGVja2VyIHVzZWQgZm9y
IFdlYktpdCB0ZXN0cy4KQEAgLTcxLDcgKzcwLDcgQEAgcHJpdmF0ZToKICAgICBib29sIGluaXRp
YWxpemVJZk5lZWRlZCgpOwogCiAgICAgLy8gQSB0YWJsZSB0aGF0IGNvbnNpc3RzIG9mIG1pc3Nw
ZWxsZWQgd29yZHMuCi0gICAgSGFzaE1hcDxXVEY6OlN0cmluZywgYm9vbD4gbV9taXNzcGVsbGVk
V29yZHM7CisgICAgVmVjdG9yPFdURjo6U3RyaW5nPiBtX21pc3NwZWxsZWRXb3JkczsKIAogICAg
IC8vIEEgZmxhZyByZXByZXNlbnRpbmcgd2hldGhlciBvciBub3QgdGhpcyBvYmplY3QgaXMgaW5p
dGlhbGl6ZWQuCiAgICAgYm9vbCBtX2luaXRpYWxpemVkOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU0YmYwMWNhODExZjcw
M2MyNWJiOGI0OTkyNzkxZDMwNGY4ODY3ZTQuLjI0Y2FiNjQzNTk0ODA3YWQzYTA4MzMwMWRiOGU5
Y2M2OWViZTA4MmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxMy0wMS0zMSAgUm91c2xhbiBT
b2xvbWFraGluICA8cm91c2xhbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Nocm9taXVtXSBF
eHBlY3Qgc3BlbGxjaGVjayB0byB3b3JrIGZvciBleGFjdGx5LXNlbGVjdGVkIG11bHRpLXdvcmQg
bWlzc3BlbGxpbmdzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMDg0OTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBlY3RhdGlvbnM6IFVwZGF0ZSBzcGVsbGNo
ZWNrIHRlc3RzIGV4cGVjdGF0aW9ucy4KKwogMjAxMy0wMS0zMSAgSmVzc2llIEJlcmxpbiAgPGpi
ZXJsaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgYW4gaW1w
bGVtZW50YXRpb24gb2YgZXZlbnRTZW5kZXIuYmVnaW5EcmFnV2l0aEZpbGVzCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0aW9ucwppbmRleCBlOTZmY2U1NmI1
YTU1MmFlNmFkNjBiYWIyNGYyZmVmN2YyMjgxODAwLi5lYjE5ZjE2ZjY5ZjM4ODQ2OGI0N2VlNTEx
NWMzNGUwYmFkZmY1NjNhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1
bS9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rl
c3RFeHBlY3RhdGlvbnMKQEAgLTQzODgsMTYgKzQzODgsMTEgQEAgd2Via2l0Lm9yZy9iLzEwODI4
NiBwbGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL3NvZnR3YXJlY29tcG9zaXRpbmcvZ2VvbWV0cnkv
Zml4ZWQKIHdlYmtpdC5vcmcvYi8xMDgyODYgcGxhdGZvcm0vY2hyb21pdW0vdmlydHVhbC9zb2Z0
d2FyZWNvbXBvc2l0aW5nL2dlb21ldHJ5L2ZpeGVkLXBvc2l0aW9uLWlmcmFtZS1jb21wb3NpdGVk
LXBhZ2Utc2NhbGUtZG93bi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKICMgU3BlbGxjaGVj
a2VyIGJlaGF2aW9yIHRlc3RzLgotd2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5n
L3NwZWxsaW5nLWRvdWJsZS1jbGlja2VkLXdvcmQuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9i
LzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWRvdWJsZS1jbGlja2VkLXdvcmQtd2l0
aC11bmRlcnNjb3Jlcy5odG1sIFsgU2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcv
c3BlbGxpbmcvc3BlbGxpbmctZXhhY3RseS1zZWxlY3RlZC1tdWx0aXBsZS13b3Jkcy5odG1sIFsg
U2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctZXhh
Y3RseS1zZWxlY3RlZC13b3JkLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgzNzAgZWRp
dGluZy9zcGVsbGluZy9zcGVsbGluZy1tdWx0aXdvcmQtc2VsZWN0aW9uLmh0bWwgWyBTa2lwIF0K
LXdlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1zaG91bGQtc2Vs
ZWN0LW11bHRpcGxlLXdvcmRzLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgzNzAgZWRp
dGluZy9zcGVsbGluZy9zcGVsbGluZy1zaG91bGQtc2VsZWN0LXNpbmdsZS13b3JkLmh0bWwgWyBT
a2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1zdWJ3
b3JkLXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcv
c3BlbGxpbmcvc3BlbGxpbmctd2l0aC1wdW5jdHVhdGlvbi1zZWxlY3Rpb24uaHRtbCBbIFNraXAg
XQotd2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXdpdGgtdW5k
ZXJzY29yZS1zZWxlY3Rpb24uaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0
aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXdpdGgtd2hpdGVzcGFjZS1zZWxlY3Rpb24uaHRtbCBbIFNr
aXAgXQord2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWRvdWJs
ZS1jbGlja2VkLXdvcmQuaHRtbCBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0
aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWRvdWJsZS1jbGlja2VkLXdvcmQtd2l0aC11bmRlcnNjb3Jl
cy5odG1sIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcv
c3BlbGxpbmctc2hvdWxkLXNlbGVjdC1tdWx0aXBsZS13b3Jkcy5odG1sIFsgRmFpbHVyZSBdCit3
ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctd2l0aC1wdW5jdHVh
dGlvbi1zZWxlY3Rpb24uaHRtbCBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0
aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXdpdGgtdW5kZXJzY29yZS1zZWxlY3Rpb24uaHRtbCBbIEZh
aWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXdp
dGgtd2hpdGVzcGFjZS1zZWxlY3Rpb24uaHRtbCBbIEZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2Iv
MTA4NDI0IG1lZGlhL3ZpZGVvLWVycm9yLWRvZXMtbm90LWV4aXN0Lmh0bWwgWyBGYWlsdXJlIF0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185831</attachid>
            <date>2013-01-31 11:51:47 -0800</date>
            <delta_ts>2013-01-31 12:03:33 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-108498-20130131114831.patch</filename>
            <type>text/plain</type>
            <size>14553</size>
            <attacher name="Rouslan Solomakhin">rouslan+webkit</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNDMwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9Db250ZXh0TWVudUNsaWVudEltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvQ29udGV4dE1lbnVDbGllbnRJbXBsLmNwcAppbmRleCAzMzk1NmJjYTc4NGUwMTk0
NTliMmY5M2Q0YjQ2MDFjNTZlZjUwMzI3Li42MDA2NDg1NmMxODNlMTc3MTM0Y2M4OWZkNjVmNmU4
ZWNiNTQyMzU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Db250ZXh0
TWVudUNsaWVudEltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0NvbnRl
eHRNZW51Q2xpZW50SW1wbC5jcHAKQEAgLTQwLDYgKzQwLDcgQEAKICNpbmNsdWRlICJEb2N1bWVu
dE1hcmtlckNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJFZGl0b3IuaCIKICNpbmNsdWRlICJFdmVu
dEhhbmRsZXIuaCIKKyNpbmNsdWRlICJFeGNlcHRpb25Db2RlUGxhY2Vob2xkZXIuaCIKICNpbmNs
dWRlICJGcmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lVmlldy5oIgogI2luY2x1ZGUgIkhU
TUxGb3JtRWxlbWVudC5oIgpAQCAtMTAyLDggKzEwMyw4IEBAIHN0YXRpYyBib29sIGlzQVNpbmds
ZVdvcmQoY29uc3QgU3RyaW5nJiB0ZXh0KQogfQogCiAvLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0
IG1pc3NwZWxsZWQgd29yZCBvbiB3aGljaCBjb250ZXh0IG1lbnUKLS8vIGlzIHRvIGJlIGV2b2xr
ZWQuIFRoaXMgZnVuY3Rpb24gYWxzbyBzZXRzIHRoZSB3b3JkIG9uIHdoaWNoIGNvbnRleHQgbWVu
dQotLy8gaGFzIGJlZW4gZXZva2VkIHRvIGJlIHRoZSBzZWxlY3RlZCB3b3JkLCBhcyByZXF1aXJl
ZC4gVGhpcyBmdW5jdGlvbiBjaGFuZ2VzCisvLyBpcyB0byBiZSBpbnZva2VkLiBUaGlzIGZ1bmN0
aW9uIGFsc28gc2V0cyB0aGUgd29yZCBvbiB3aGljaCBjb250ZXh0IG1lbnUKKy8vIGhhcyBiZWVu
IGludm9rZWQgdG8gYmUgdGhlIHNlbGVjdGVkIHdvcmQsIGFzIHJlcXVpcmVkLiBUaGlzIGZ1bmN0
aW9uIGNoYW5nZXMKIC8vIHRoZSBzZWxlY3Rpb24gb25seSB3aGVuIHRoZXJlIHdlcmUgbm8gc2Vs
ZWN0ZWQgY2hhcmFjdGVycyBvbiBPUyBYLgogc3RhdGljIFN0cmluZyBzZWxlY3RNaXNzcGVsbGVk
V29yZChjb25zdCBDb250ZXh0TWVudSogZGVmYXVsdE1lbnUsIEZyYW1lKiBzZWxlY3RlZEZyYW1l
KQogewpAQCAtMjc0LDM2ICsyNzUsMzQgQEAgUGxhdGZvcm1NZW51RGVzY3JpcHRpb24gQ29udGV4
dE1lbnVDbGllbnRJbXBsOjpnZXRDdXN0b21NZW51RnJvbURlZmF1bHRJdGVtcygKICNlbmRpZgog
ICAgICAgICAvLyBXaGVuIENocm9tZSBlbmFibGVzIGFzeW5jaHJvbm91cyBzcGVsbGNoZWNraW5n
LCBpdHMgc3BlbGxjaGVja2VyIGFkZHMgc3BlbGxpbmcgbWFya2VycyB0byBtaXNzcGVsbGVkCiAg
ICAgICAgIC8vIHdvcmRzIGFuZCBhdHRhY2hlcyBzdWdnZXN0aW9ucyB0byB0aGVzZSBtYXJrZXJz
IGluIHRoZSBiYWNrZ3JvdW5kLiBUaGVyZWZvcmUsIHdoZW4gYSB1c2VyIHJpZ2h0LWNsaWNrcwot
ICAgICAgICAvLyBhIG1vdXNlIG9uIGEgd29yZCwgQ2hyb21lIGp1c3QgbmVlZHMgdG8gZmluZCBh
IHNwZWxsaW5nIG1hcmtlciBvbiB0aGUgd29yZCBpbnN0cmVhZCBvZiBzcGVsbGNoZWNraW5nIGl0
LgorICAgICAgICAvLyBhIG1vdXNlIG9uIGEgd29yZCwgQ2hyb21lIGp1c3QgbmVlZHMgdG8gZmlu
ZCBhIHNwZWxsaW5nIG1hcmtlciBvbiB0aGUgd29yZCBpbnN0ZWFkIG9mIHNwZWxsY2hlY2tpbmcg
aXQuCiAgICAgICAgIGlmIChzZWxlY3RlZEZyYW1lLT5zZXR0aW5ncygpICYmIHNlbGVjdGVkRnJh
bWUtPnNldHRpbmdzKCktPmFzeW5jaHJvbm91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKCkpIHsKICAg
ICAgICAgICAgIFZpc2libGVTZWxlY3Rpb24gc2VsZWN0aW9uID0gc2VsZWN0ZWRGcmFtZS0+c2Vs
ZWN0aW9uKCktPnNlbGVjdGlvbigpOwotICAgICAgICAgICAgYm9vbCBzaG91bGRVcGRhdGVTZWxl
Y3Rpb24gPSBmYWxzZTsKICAgICAgICAgICAgIGlmIChzZWxlY3Rpb24uaXNDYXJldE9yUmFuZ2Uo
KSkgewotICAgICAgICAgICAgICAgIGlmIChzZWxlY3Rpb24uaXNDYXJldCgpKSB7Ci0gICAgICAg
ICAgICAgICAgICAgIHNlbGVjdGlvbi5leHBhbmRVc2luZ0dyYW51bGFyaXR5KFdvcmRHcmFudWxh
cml0eSk7Ci0gICAgICAgICAgICAgICAgICAgIHNob3VsZFVwZGF0ZVNlbGVjdGlvbiA9IHRydWU7
Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2Ug
PSBzZWxlY3Rpb24udG9Ob3JtYWxpemVkUmFuZ2UoKTsKLSAgICAgICAgICAgICAgICBWZWN0b3I8
RG9jdW1lbnRNYXJrZXIqPiBtYXJrZXJzID0gc2VsZWN0ZWRGcmFtZS0+ZG9jdW1lbnQoKS0+bWFy
a2VycygpLT5tYXJrZXJzSW5SYW5nZShyYW5nZS5nZXQoKSwgRG9jdW1lbnRNYXJrZXI6OlNwZWxs
aW5nIHwgRG9jdW1lbnRNYXJrZXI6OkdyYW1tYXIpOwotICAgICAgICAgICAgICAgIGlmIChtYXJr
ZXJzLnNpemUoKSA9PSAxKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChtYXJrZXJzWzBdLT5z
dGFydE9mZnNldCgpICE9IHN0YXRpY19jYXN0PHVuc2lnbmVkPihyYW5nZS0+c3RhcnRPZmZzZXQo
KSkgfHwgbWFya2Vyc1swXS0+ZW5kT2Zmc2V0KCkgIT0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHJh
bmdlLT5lbmRPZmZzZXQoKSkpCi0gICAgICAgICAgICAgICAgICAgICAgICBtYXJrZXJzLmNsZWFy
KCk7Ci0gICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIC8vIENhcmV0IGFuZCByYW5n
ZSBzZWxlY3Rpb25zIGFsd2F5cyByZXR1cm4gdmFsaWQgbm9ybWFsaXplZCByYW5nZXMuCisgICAg
ICAgICAgICAgICAgUmVmUHRyPFJhbmdlPiBzZWxlY3Rpb25SYW5nZSA9IHNlbGVjdGlvbi50b05v
cm1hbGl6ZWRSYW5nZSgpOworICAgICAgICAgICAgICAgIC8vIENsb25pbmcgYSByYW5nZSBmYWls
cyBvbmx5IGZvciBpbnZhbGlkIHJhbmdlcy4KKyAgICAgICAgICAgICAgICBSZWZQdHI8UmFuZ2U+
IG1hcmtlclJhbmdlID0gc2VsZWN0aW9uUmFuZ2UtPmNsb25lUmFuZ2UoQVNTRVJUX05PX0VYQ0VQ
VElPTik7CisgICAgICAgICAgICAgICAgVmVjdG9yPERvY3VtZW50TWFya2VyKj4gbWFya2VycyA9
IHNlbGVjdGVkRnJhbWUtPmRvY3VtZW50KCktPm1hcmtlcnMoKS0+bWFya2Vyc0luUmFuZ2Uoc2Vs
ZWN0aW9uUmFuZ2UuZ2V0KCksIERvY3VtZW50TWFya2VyOjpTcGVsbGluZyB8IERvY3VtZW50TWFy
a2VyOjpHcmFtbWFyKTsKICAgICAgICAgICAgICAgICBpZiAobWFya2Vycy5zaXplKCkgPT0gMSkg
ewotICAgICAgICAgICAgICAgICAgICByYW5nZS0+c2V0U3RhcnQocmFuZ2UtPnN0YXJ0Q29udGFp
bmVyKCksIG1hcmtlcnNbMF0tPnN0YXJ0T2Zmc2V0KCkpOwotICAgICAgICAgICAgICAgICAgICBy
YW5nZS0+c2V0RW5kKHJhbmdlLT5lbmRDb250YWluZXIoKSwgbWFya2Vyc1swXS0+ZW5kT2Zmc2V0
KCkpOwotICAgICAgICAgICAgICAgICAgICBkYXRhLm1pc3NwZWxsZWRXb3JkID0gcmFuZ2UtPnRl
eHQoKTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKG1hcmtlcnNbMF0tPmRlc2NyaXB0aW9uKCku
bGVuZ3RoKCkpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIFZlY3RvcjxTdHJpbmc+IHN1Z2dl
c3Rpb25zOwotICAgICAgICAgICAgICAgICAgICAgICAgbWFya2Vyc1swXS0+ZGVzY3JpcHRpb24o
KS5zcGxpdCgnXG4nLCBzdWdnZXN0aW9ucyk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBkYXRh
LmRpY3Rpb25hcnlTdWdnZXN0aW9ucyA9IHN1Z2dlc3Rpb25zOwotICAgICAgICAgICAgICAgICAg
ICB9IGVsc2UgaWYgKG1fd2ViVmlldy0+c3BlbGxDaGVja0NsaWVudCgpKSB7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICBpbnQgbWlzc3BlbGxlZE9mZnNldCwgbWlzc3BlbGxlZExlbmd0aDsKLSAg
ICAgICAgICAgICAgICAgICAgICAgIG1fd2ViVmlldy0+c3BlbGxDaGVja0NsaWVudCgpLT5zcGVs
bENoZWNrKGRhdGEubWlzc3BlbGxlZFdvcmQsIG1pc3NwZWxsZWRPZmZzZXQsIG1pc3NwZWxsZWRM
ZW5ndGgsICZkYXRhLmRpY3Rpb25hcnlTdWdnZXN0aW9ucyk7Ci0gICAgICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uID0gVmlzaWJsZVNlbGVjdGlvbihyYW5n
ZS5nZXQoKSk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChzaG91bGRVcGRhdGVTZWxlY3Rpb24g
JiYgc2VsZWN0ZWRGcmFtZS0+c2VsZWN0aW9uKCktPnNob3VsZENoYW5nZVNlbGVjdGlvbihzZWxl
Y3Rpb24pKQorICAgICAgICAgICAgICAgICAgICBtYXJrZXJSYW5nZS0+c2V0U3RhcnQobWFya2Vy
UmFuZ2UtPnN0YXJ0Q29udGFpbmVyKCksIG1hcmtlcnNbMF0tPnN0YXJ0T2Zmc2V0KCkpOworICAg
ICAgICAgICAgICAgICAgICBtYXJrZXJSYW5nZS0+c2V0RW5kKG1hcmtlclJhbmdlLT5lbmRDb250
YWluZXIoKSwgbWFya2Vyc1swXS0+ZW5kT2Zmc2V0KCkpOworICAgICAgICAgICAgICAgICAgICBp
ZiAoc2VsZWN0aW9uLmlzQ2FyZXQoKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0
aW9uID0gVmlzaWJsZVNlbGVjdGlvbihtYXJrZXJSYW5nZS5nZXQoKSk7CiAgICAgICAgICAgICAg
ICAgICAgICAgICBzZWxlY3RlZEZyYW1lLT5zZWxlY3Rpb24oKS0+c2V0U2VsZWN0aW9uKHNlbGVj
dGlvbiwgV29yZEdyYW51bGFyaXR5KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGlv
blJhbmdlID0gc2VsZWN0aW9uLnRvTm9ybWFsaXplZFJhbmdlKCk7CisgICAgICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICAgICAgICAgaWYgKG1hcmtlclJhbmdlLT5zdGFydE9mZnNldCgp
ID09IHNlbGVjdGlvblJhbmdlLT5zdGFydE9mZnNldCgpICYmIG1hcmtlclJhbmdlLT5lbmRPZmZz
ZXQoKSA9PSBzZWxlY3Rpb25SYW5nZS0+ZW5kT2Zmc2V0KCkpIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGRhdGEubWlzc3BlbGxlZFdvcmQgPSBzZWxlY3Rpb25SYW5nZS0+dGV4dCgpOworICAg
ICAgICAgICAgICAgICAgICAgICAgaWYgKG1hcmtlcnNbMF0tPmRlc2NyaXB0aW9uKCkubGVuZ3Ro
KCkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBWZWN0b3I8U3RyaW5nPiBzdWdnZXN0
aW9uczsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJrZXJzWzBdLT5kZXNjcmlwdGlv
bigpLnNwbGl0KCdcbicsIHN1Z2dlc3Rpb25zKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBkYXRhLmRpY3Rpb25hcnlTdWdnZXN0aW9ucyA9IHN1Z2dlc3Rpb25zOworICAgICAgICAgICAg
ICAgICAgICAgICAgfSBlbHNlIGlmIChtX3dlYlZpZXctPnNwZWxsQ2hlY2tDbGllbnQoKSkgewor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBtaXNzcGVsbGVkT2Zmc2V0LCBtaXNzcGVs
bGVkTGVuZ3RoOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1fd2ViVmlldy0+c3BlbGxD
aGVja0NsaWVudCgpLT5zcGVsbENoZWNrKGRhdGEubWlzc3BlbGxlZFdvcmQsIG1pc3NwZWxsZWRP
ZmZzZXQsIG1pc3NwZWxsZWRMZW5ndGgsICZkYXRhLmRpY3Rpb25hcnlTdWdnZXN0aW9ucyk7Cisg
ICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CmRpZmYgLS1naXQgYS9U
b29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNWJkZmNmZDQ2MmUyNGMwZGY1
NDNiZDk1NTQ0YTlkZTIxZTk1MTBlMC4uMzUwZGJiZWMxOWM1NWFlMTVlMDliNDg3MTkzZDNjNTU3
ZWNhYjNkZiAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDIwIEBACisyMDEzLTAxLTMxICBSb3VzbGFuIFNvbG9tYWtoaW4gIDxyb3Vz
bGFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dIEFkZCB0d28td29yZCBtaXNz
cGVsbGluZyB0byBtb2NrIHNwZWxsY2hlY2tlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA4NDk4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgVG9ueSBD
aGFuZy4KKworICAgICAgICBTb21lIGxheW91dCB0ZXN0cyB2ZXJpZnkgc3BlbGxjaGVjayBiZWhh
dmlvciB3aGVuIG11bHRpcGxlIHdvcmRzIGFyZQorICAgICAgICBtYXJrZWQgYXMgYSBzaW5nbGUg
bWlzc3BlbGxpbmcuIFRoaXMgY2hhbmdlIGFkZHMgYSB0d28td29yZCBtaXNzcGVsbGluZworICAg
ICAgICAndXBwZXIgY2FzZScgdG8gdGhlIG1vY2sgc3BlbGxjaGVja2VyIHVzZWQgYnkgbGF5b3V0
IHRlc3RzLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9z
cmMvTW9ja1NwZWxsQ2hlY2suY3BwOgorICAgICAgICAoTW9ja1NwZWxsQ2hlY2s6OnNwZWxsQ2hl
Y2tXb3JkKTogTW9kaWZpZWQgdG8gaGFuZGxlIHNwYWNlcyBpbiBtaXNzcGVsbGluZ3MuCisgICAg
ICAgIChNb2NrU3BlbGxDaGVjazo6aW5pdGlhbGl6ZUlmTmVlZGVkKTogIE1vZGlmaWVkIHRvIHVz
ZSBhIHZlY3RvciBpbnN0ZWFkIG9mIGEgaGFzaCB0YWJsZS4KKyAgICAgICAgKiBEdW1wUmVuZGVy
VHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9Nb2NrU3BlbGxDaGVjay5oOgorICAgICAgICAo
TW9ja1NwZWxsQ2hlY2spOiBDaGFuZ2VkIG1pc3NwZWxsaW5ncyBjb250YWluZXIgZnJvbSBoYXNo
IHRhYmxlIHRvIHZlY3Rvci4KKwogMjAxMy0wMS0zMSAgU2ltb24gSGF1c21hbm4gIDxzaW1vbi5o
YXVzbWFubkBkaWdpYS5jb20+CiAKICAgICAgICAgW1F0XSBNYWtlIGl0IHBvc3NpYmxlIHRvIGNv
bXBpbGUgV2ViS2l0MiBRdCByZWxhdGVkIGZpbGVzIHdpdGhvdXQgYWNjZXNzIHRvIGludGVybmFs
IFdLMiBDKysgQVBJCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9U
ZXN0UnVubmVyL3NyYy9Nb2NrU3BlbGxDaGVjay5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9j
aHJvbWl1bS9UZXN0UnVubmVyL3NyYy9Nb2NrU3BlbGxDaGVjay5jcHAKaW5kZXggNzU5M2M3MTkw
NDIzNTBkMmMyMWVhYTE5ZGFiOWY1YTk5OTkwYTg4MS4uOGFmZTE2YTQ1MzJjMzNkNjI5YmFmNWFj
MzIyMzYwNTcyZTljNzBiNyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vVGVzdFJ1bm5lci9zcmMvTW9ja1NwZWxsQ2hlY2suY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL01vY2tTcGVsbENoZWNrLmNwcApAQCAtNTgs
NyArNTgsNyBAQCBib29sIE1vY2tTcGVsbENoZWNrOjpzcGVsbENoZWNrV29yZChjb25zdCBXZWJT
dHJpbmcmIHRleHQsIGludCogbWlzc3BlbGxlZE9mZnNldAogCiAgICAgLy8gQ29udmVydCB0byBh
IFN0cmluZyBiZWNhdXNlIHdlIHN0b3JlIFN0cmluZyBpbnN0YW5jZXMgaW4KICAgICAvLyBtX21p
c3NwZWxsZWRXb3JkcyBhbmQgV2ViU3RyaW5nIGhhcyBubyBmaW5kKCkuCi0gICAgV1RGOjpTdHJp
bmcgc3RyaW5nVGV4dCh0ZXh0LmRhdGEoKSwgdGV4dC5sZW5ndGgoKSk7CisgICAgU3RyaW5nIHN0
cmluZ1RleHQodGV4dC5kYXRhKCksIHRleHQubGVuZ3RoKCkpOwogICAgIGludCBza2lwcGVkTGVu
Z3RoID0gMDsKIAogICAgIHdoaWxlICghc3RyaW5nVGV4dC5pc0VtcHR5KCkpIHsKQEAgLTY5LDI3
ICs2OSwzNCBAQCBib29sIE1vY2tTcGVsbENoZWNrOjpzcGVsbENoZWNrV29yZChjb25zdCBXZWJT
dHJpbmcmIHRleHQsIGludCogbWlzc3BlbGxlZE9mZnNldAogICAgICAgICAvLyAoVGhpcyBpcyBh
IHNpbXBsZSB2ZXJzaW9uIG9mIG91ciBTcGVsbENoZWNrV29yZEl0ZXJhdG9yIGNsYXNzLikKICAg
ICAgICAgLy8gSWYgdGhlIGdpdmVuIHN0cmluZyBkb2Vzbid0IGluY2x1ZGUgYW55IEFTQ0lJIGNo
YXJhY3RlcnMsIHdlIGNhbiB0cmVhdCB0aGUKICAgICAgICAgLy8gc3RyaW5nIGFzIHZhbGlkIG9u
ZS4KLSAgICAgICAgLy8gVW5mb3J0dW5hdGVseSwgVGhpcyBpbXBsZW1lbnRhdGlvbiBzcGxpdHMg
YSBjb250cmFjdGlvbiwgaS5lLiAiaXNuJ3QiIGlzCi0gICAgICAgIC8vIHNwbGl0IGludG8gdHdv
IHBpZWNlcyAiaXNuIiBhbmQgInQiLiBUaGlzIGlzIE9LIGJlY2F1c2Ugd2Via2l0IHRlc3RzCi0g
ICAgICAgIC8vIGRvbid0IGhhdmUgbWlzc3BlbGxlZCBjb250cmFjdGlvbnMuCiAgICAgICAgIGlu
dCB3b3JkT2Zmc2V0ID0gc3RyaW5nVGV4dC5maW5kKGlzQVNDSUlBbHBoYSk7CiAgICAgICAgIGlm
ICh3b3JkT2Zmc2V0ID09IC0xKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGlu
dCB3b3JkRW5kID0gc3RyaW5nVGV4dC5maW5kKGlzTm90QVNDSUlBbHBoYSwgd29yZE9mZnNldCk7
Ci0gICAgICAgIGludCB3b3JkTGVuZ3RoID0gd29yZEVuZCA9PSAtMSA/IHN0YXRpY19jYXN0PGlu
dD4oc3RyaW5nVGV4dC5sZW5ndGgoKSkgLSB3b3JkT2Zmc2V0IDogd29yZEVuZCAtIHdvcmRPZmZz
ZXQ7CisgICAgICAgIGludCBtYXhXb3JkTGVuZ3RoID0gc3RhdGljX2Nhc3Q8aW50PihzdHJpbmdU
ZXh0Lmxlbmd0aCgpKSAtIHdvcmRPZmZzZXQ7CisgICAgICAgIGludCB3b3JkTGVuZ3RoOworICAg
ICAgICBTdHJpbmcgd29yZDsKIAogICAgICAgICAvLyBMb29rIHVwIG91ciBtaXNzcGVsbGVkLXdv
cmQgdGFibGUgdG8gY2hlY2sgaWYgdGhlIGV4dHJhY3RlZCB3b3JkIGlzIGEKICAgICAgICAgLy8g
a25vd24gbWlzc3BlbGxlZCB3b3JkLCBhbmQgcmV0dXJuIHRoZSBvZmZzZXQgYW5kIHRoZSBsZW5n
dGggb2YgdGhlCiAgICAgICAgIC8vIGV4dHJhY3RlZCB3b3JkIGlmIHRoaXMgd29yZCBpcyBhIGtu
b3duIG1pc3NwZWxsZWQgd29yZC4KICAgICAgICAgLy8gKFNlZSB0aGUgY29tbWVudCBpbiBNb2Nr
U3BlbGxDaGVjazo6aW5pdGlhbGl6ZUlmTmVlZGVkKCkgd2h5IHdlIHVzZSBhCiAgICAgICAgIC8v
IG1pc3NwZWxsZWQtd29yZCB0YWJsZS4pCi0gICAgICAgIFdURjo6U3RyaW5nIHdvcmQgPSBzdHJp
bmdUZXh0LnN1YnN0cmluZyh3b3JkT2Zmc2V0LCB3b3JkTGVuZ3RoKTsKLSAgICAgICAgaWYgKG1f
bWlzc3BlbGxlZFdvcmRzLmNvbnRhaW5zKHdvcmQpKSB7Ci0gICAgICAgICAgICAqbWlzc3BlbGxl
ZE9mZnNldCA9IHdvcmRPZmZzZXQgKyBza2lwcGVkTGVuZ3RoOwotICAgICAgICAgICAgKm1pc3Nw
ZWxsZWRMZW5ndGggPSB3b3JkTGVuZ3RoOwotICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGZv
ciAoaW50IGkgPSAwOyBpIDwgbV9taXNzcGVsbGVkV29yZHMuc2l6ZSgpOyArK2kpIHsKKyAgICAg
ICAgICAgIHdvcmRMZW5ndGggPSBzdGF0aWNfY2FzdDxpbnQ+KG1fbWlzc3BlbGxlZFdvcmRzLmF0
KGkpLmxlbmd0aCgpKSA+IG1heFdvcmRMZW5ndGggPyBtYXhXb3JkTGVuZ3RoIDogc3RhdGljX2Nh
c3Q8aW50PihtX21pc3NwZWxsZWRXb3Jkcy5hdChpKS5sZW5ndGgoKSk7CisgICAgICAgICAgICB3
b3JkID0gc3RyaW5nVGV4dC5zdWJzdHJpbmcod29yZE9mZnNldCwgd29yZExlbmd0aCk7CisgICAg
ICAgICAgICBpZiAod29yZCA9PSBtX21pc3NwZWxsZWRXb3Jkcy5hdChpKSAmJiAoc3RhdGljX2Nh
c3Q8aW50PihzdHJpbmdUZXh0Lmxlbmd0aCgpKSA9PSB3b3JkT2Zmc2V0ICsgd29yZExlbmd0aCB8
fCBpc05vdEFTQ0lJQWxwaGEoc3RyaW5nVGV4dFt3b3JkT2Zmc2V0ICsgd29yZExlbmd0aF0pKSkg
eworICAgICAgICAgICAgICAgICptaXNzcGVsbGVkT2Zmc2V0ID0gd29yZE9mZnNldCArIHNraXBw
ZWRMZW5ndGg7CisgICAgICAgICAgICAgICAgKm1pc3NwZWxsZWRMZW5ndGggPSB3b3JkTGVuZ3Ro
OworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQogICAgICAgICB9CiAKKyAg
ICAgICAgaWYgKCptaXNzcGVsbGVkTGVuZ3RoID4gMCkKKyAgICAgICAgICAgIGJyZWFrOworCisg
ICAgICAgIGludCB3b3JkRW5kID0gc3RyaW5nVGV4dC5maW5kKGlzTm90QVNDSUlBbHBoYSwgd29y
ZE9mZnNldCk7CisgICAgICAgIHdvcmRMZW5ndGggPSB3b3JkRW5kID09IC0xID8gc3RhdGljX2Nh
c3Q8aW50PihzdHJpbmdUZXh0Lmxlbmd0aCgpKSAtIHdvcmRPZmZzZXQgOiB3b3JkRW5kIC0gd29y
ZE9mZnNldDsKKwogICAgICAgICBBU1NFUlQoMCA8IHdvcmRPZmZzZXQgKyB3b3JkTGVuZ3RoKTsK
ICAgICAgICAgc3RyaW5nVGV4dCA9IHN0cmluZ1RleHQuc3Vic3RyaW5nKHdvcmRPZmZzZXQgKyB3
b3JkTGVuZ3RoKTsKICAgICAgICAgc2tpcHBlZExlbmd0aCArPSB3b3JkT2Zmc2V0ICsgd29yZExl
bmd0aDsKQEAgLTE1MSwxMiArMTU4LDEzIEBAIGJvb2wgTW9ja1NwZWxsQ2hlY2s6OmluaXRpYWxp
emVJZk5lZWRlZCgpCiAgICAgICAgICJpZm1tcCIsCiAgICAgICAgICJxd2VydHl1aW9wYXNkIiwK
ICAgICAgICAgInF3ZXJ0eXVpb3Bhc2RmIiwKKyAgICAgICAgInVwcGVyIGNhc2UiLAogICAgICAg
ICAid2VsbGNvbWUiCiAgICAgfTsKIAogICAgIG1fbWlzc3BlbGxlZFdvcmRzLmNsZWFyKCk7CiAg
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBhcnJheXNpemUobWlzc3BlbGxlZFdvcmRzKTsgKytp
KQotICAgICAgICBtX21pc3NwZWxsZWRXb3Jkcy5hZGQoV1RGOjpTdHJpbmc6OmZyb21VVEY4KG1p
c3NwZWxsZWRXb3Jkc1tpXSksIGZhbHNlKTsKKyAgICAgICAgbV9taXNzcGVsbGVkV29yZHMuYXBw
ZW5kKFN0cmluZzo6ZnJvbVVURjgobWlzc3BlbGxlZFdvcmRzW2ldKSk7CiAKICAgICAvLyBNYXJr
IGFzIGluaXRpYWxpemVkIHRvIHByZXZlbnQgdGhpcyBvYmplY3QgZnJvbSBiZWluZyBpbml0aWFs
aXplZCB0d2ljZQogICAgIC8vIG9yIG1vcmUuCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVy
VHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9Nb2NrU3BlbGxDaGVjay5oIGIvVG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9zcmMvTW9ja1NwZWxsQ2hlY2suaAppbmRl
eCA4YTk4ZDcwN2MwNGIxYmM4NWUyOGY1NzEwNGRiYzAzMTY0MTQ2YjVkLi5lZTM4ZjIyOTIyMjYz
ZTdmMzE2ODM4Y2RmODQzNjVlNDMwYTVmMWE2IDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVy
VHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9Nb2NrU3BlbGxDaGVjay5oCisrKyBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL01vY2tTcGVsbENoZWNrLmgK
QEAgLTMzLDggKzMzLDcgQEAKIAogI2luY2x1ZGUgIlBsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9X
ZWJTdHJpbmcuaCIKICNpbmNsdWRlICJQbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViVmVjdG9y
LmgiCi0jaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdI
YXNoLmg+CisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0
cmluZy5oPgogCiAvLyBBIG1vY2sgaW1wbGVtZW50YXRpb24gb2YgYSBzcGVsbC1jaGVja2VyIHVz
ZWQgZm9yIFdlYktpdCB0ZXN0cy4KQEAgLTcxLDcgKzcwLDcgQEAgcHJpdmF0ZToKICAgICBib29s
IGluaXRpYWxpemVJZk5lZWRlZCgpOwogCiAgICAgLy8gQSB0YWJsZSB0aGF0IGNvbnNpc3RzIG9m
IG1pc3NwZWxsZWQgd29yZHMuCi0gICAgSGFzaE1hcDxXVEY6OlN0cmluZywgYm9vbD4gbV9taXNz
cGVsbGVkV29yZHM7CisgICAgVmVjdG9yPFN0cmluZz4gbV9taXNzcGVsbGVkV29yZHM7CiAKICAg
ICAvLyBBIGZsYWcgcmVwcmVzZW50aW5nIHdoZXRoZXIgb3Igbm90IHRoaXMgb2JqZWN0IGlzIGlu
aXRpYWxpemVkLgogICAgIGJvb2wgbV9pbml0aWFsaXplZDsKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1NGJmMDFjYTgxMWY3
MDNjMjViYjhiNDk5Mjc5MWQzMDRmODg2N2U0Li5jYmRlZmUzMjM4NmJiODhlOTlmZTgzZjViMTRl
MTY2YmIzZDExNmM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTMtMDEtMzEgIFJvdXNsYW4g
U29sb21ha2hpbiAgPHJvdXNsYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtDaHJvbWl1bV0g
RXhwZWN0IHNwZWxsY2hlY2sgdG8gd29yayBmb3IgZXhhY3RseS1zZWxlY3RlZCBtdWx0aS13b3Jk
IG1pc3NwZWxsaW5ncworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA4NDk4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgVG9ueSBDaGFuZy4KKworICAgICAg
ICAqIHBsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBlY3RhdGlvbnM6IFVwZGF0ZSBzcGVsbGNoZWNr
IHRlc3RzIGV4cGVjdGF0aW9ucy4KKwogMjAxMy0wMS0zMSAgSmVzc2llIEJlcmxpbiAgPGpiZXJs
aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYktpdFRlc3RSdW5uZXIgbmVlZHMgYW4gaW1wbGVt
ZW50YXRpb24gb2YgZXZlbnRTZW5kZXIuYmVnaW5EcmFnV2l0aEZpbGVzCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0aW9ucwppbmRleCBlOTZmY2U1NmI1YTU1
MmFlNmFkNjBiYWIyNGYyZmVmN2YyMjgxODAwLi4wNmEwYzdkMjlkNjVjZjAwOWM3Yzg0ZDE5OWI3
YjJiZGZiYjU5NTAwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9U
ZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RF
eHBlY3RhdGlvbnMKQEAgLTQzODgsMTYgKzQzODgsMTAgQEAgd2Via2l0Lm9yZy9iLzEwODI4NiBw
bGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL3NvZnR3YXJlY29tcG9zaXRpbmcvZ2VvbWV0cnkvZml4
ZWQKIHdlYmtpdC5vcmcvYi8xMDgyODYgcGxhdGZvcm0vY2hyb21pdW0vdmlydHVhbC9zb2Z0d2Fy
ZWNvbXBvc2l0aW5nL2dlb21ldHJ5L2ZpeGVkLXBvc2l0aW9uLWlmcmFtZS1jb21wb3NpdGVkLXBh
Z2Utc2NhbGUtZG93bi5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKICMgU3BlbGxjaGVja2Vy
IGJlaGF2aW9yIHRlc3RzLgotd2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3Nw
ZWxsaW5nLWRvdWJsZS1jbGlja2VkLXdvcmQuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEw
ODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWRvdWJsZS1jbGlja2VkLXdvcmQtd2l0aC11
bmRlcnNjb3Jlcy5odG1sIFsgU2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3Bl
bGxpbmcvc3BlbGxpbmctZXhhY3RseS1zZWxlY3RlZC1tdWx0aXBsZS13b3Jkcy5odG1sIFsgU2tp
cCBdCi13ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctZXhhY3Rs
eS1zZWxlY3RlZC13b3JkLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGlu
Zy9zcGVsbGluZy9zcGVsbGluZy1tdWx0aXdvcmQtc2VsZWN0aW9uLmh0bWwgWyBTa2lwIF0KLXdl
YmtpdC5vcmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1zaG91bGQtc2VsZWN0
LW11bHRpcGxlLXdvcmRzLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGlu
Zy9zcGVsbGluZy9zcGVsbGluZy1zaG91bGQtc2VsZWN0LXNpbmdsZS13b3JkLmh0bWwgWyBTa2lw
IF0KLXdlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1zdWJ3b3Jk
LXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3Bl
bGxpbmcvc3BlbGxpbmctd2l0aC1wdW5jdHVhdGlvbi1zZWxlY3Rpb24uaHRtbCBbIFNraXAgXQot
d2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXdpdGgtdW5kZXJz
Y29yZS1zZWxlY3Rpb24uaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5n
L3NwZWxsaW5nL3NwZWxsaW5nLXdpdGgtd2hpdGVzcGFjZS1zZWxlY3Rpb24uaHRtbCBbIFNraXAg
XQord2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLWRvdWJsZS1j
bGlja2VkLXdvcmQuaHRtbCBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5n
L3NwZWxsaW5nL3NwZWxsaW5nLWRvdWJsZS1jbGlja2VkLXdvcmQtd2l0aC11bmRlcnNjb3Jlcy5o
dG1sIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3Bl
bGxpbmctd2l0aC1wdW5jdHVhdGlvbi1zZWxlY3Rpb24uaHRtbCBbIEZhaWx1cmUgXQord2Via2l0
Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXdpdGgtdW5kZXJzY29yZS1z
ZWxlY3Rpb24uaHRtbCBbIEZhaWx1cmUgXQord2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3Nw
ZWxsaW5nL3NwZWxsaW5nLXdpdGgtd2hpdGVzcGFjZS1zZWxlY3Rpb24uaHRtbCBbIEZhaWx1cmUg
XQogCiB3ZWJraXQub3JnL2IvMTA4NDI0IG1lZGlhL3ZpZGVvLWVycm9yLWRvZXMtbm90LWV4aXN0
Lmh0bWwgWyBGYWlsdXJlIF0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185832</attachid>
            <date>2013-01-31 12:04:53 -0800</date>
            <delta_ts>2013-01-31 13:00:25 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-108498-20130131120136.patch</filename>
            <type>text/plain</type>
            <size>8996</size>
            <attacher name="Rouslan Solomakhin">rouslan+webkit</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNDMwCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNWJkZmNmZDQ2MmUyNGMwZGY1NDNiZDk1NTQ0YTlkZTIx
ZTk1MTBlMC4uODZkYWM1Mzg0MjYzZDcwMGZjYzYyZmQyMTRkYjFmOTVlZmE0N2U2NSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIw
IEBACisyMDEzLTAxLTMxICBSb3VzbGFuIFNvbG9tYWtoaW4gIDxyb3VzbGFuQGNocm9taXVtLm9y
Zz4KKworICAgICAgICBbQ2hyb21pdW1dIEFkZCB0d28td29yZCBtaXNzcGVsbGluZyB0byBtb2Nr
IHNwZWxsY2hlY2tlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA4NDk4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgU29tZSBsYXlvdXQgdGVzdHMgdmVyaWZ5IHNwZWxsY2hlY2sgYmVoYXZpb3Igd2hlbiBt
dWx0aXBsZSB3b3JkcyBhcmUKKyAgICAgICAgbWFya2VkIGFzIGEgc2luZ2xlIG1pc3NwZWxsaW5n
LiBUaGlzIGNoYW5nZSBhZGRzIGEgdHdvLXdvcmQgbWlzc3BlbGxpbmcKKyAgICAgICAgJ3VwcGVy
IGNhc2UnIHRvIHRoZSBtb2NrIHNwZWxsY2hlY2tlciB1c2VkIGJ5IGxheW91dCB0ZXN0cy4KKwor
ICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL01vY2tTcGVs
bENoZWNrLmNwcDoKKyAgICAgICAgKE1vY2tTcGVsbENoZWNrOjpzcGVsbENoZWNrV29yZCk6IE1v
ZGlmaWVkIHRvIGhhbmRsZSBzcGFjZXMgaW4gbWlzc3BlbGxpbmdzLgorICAgICAgICAoTW9ja1Nw
ZWxsQ2hlY2s6OmluaXRpYWxpemVJZk5lZWRlZCk6ICBNb2RpZmllZCB0byB1c2UgYSB2ZWN0b3Ig
aW5zdGVhZCBvZiBhIGhhc2ggdGFibGUuCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vVGVzdFJ1bm5lci9zcmMvTW9ja1NwZWxsQ2hlY2suaDoKKyAgICAgICAgKE1vY2tTcGVsbENo
ZWNrKTogQ2hhbmdlZCBtaXNzcGVsbGluZ3MgY29udGFpbmVyIGZyb20gaGFzaCB0YWJsZSB0byB2
ZWN0b3IuCisKIDIwMTMtMDEtMzEgIFNpbW9uIEhhdXNtYW5uICA8c2ltb24uaGF1c21hbm5AZGln
aWEuY29tPgogCiAgICAgICAgIFtRdF0gTWFrZSBpdCBwb3NzaWJsZSB0byBjb21waWxlIFdlYktp
dDIgUXQgcmVsYXRlZCBmaWxlcyB3aXRob3V0IGFjY2VzcyB0byBpbnRlcm5hbCBXSzIgQysrIEFQ
SQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFJ1bm5lci9z
cmMvTW9ja1NwZWxsQ2hlY2suY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVz
dFJ1bm5lci9zcmMvTW9ja1NwZWxsQ2hlY2suY3BwCmluZGV4IDc1OTNjNzE5MDQyMzUwZDJjMjFl
YWExOWRhYjlmNWE5OTk5MGE4ODEuLjhhZmUxNmE0NTMyYzMzZDYyOWJhZjVhYzMyMjM2MDU3MmU5
YzcwYjcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RSdW5u
ZXIvc3JjL01vY2tTcGVsbENoZWNrLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9jaHJv
bWl1bS9UZXN0UnVubmVyL3NyYy9Nb2NrU3BlbGxDaGVjay5jcHAKQEAgLTU4LDcgKzU4LDcgQEAg
Ym9vbCBNb2NrU3BlbGxDaGVjazo6c3BlbGxDaGVja1dvcmQoY29uc3QgV2ViU3RyaW5nJiB0ZXh0
LCBpbnQqIG1pc3NwZWxsZWRPZmZzZXQKIAogICAgIC8vIENvbnZlcnQgdG8gYSBTdHJpbmcgYmVj
YXVzZSB3ZSBzdG9yZSBTdHJpbmcgaW5zdGFuY2VzIGluCiAgICAgLy8gbV9taXNzcGVsbGVkV29y
ZHMgYW5kIFdlYlN0cmluZyBoYXMgbm8gZmluZCgpLgotICAgIFdURjo6U3RyaW5nIHN0cmluZ1Rl
eHQodGV4dC5kYXRhKCksIHRleHQubGVuZ3RoKCkpOworICAgIFN0cmluZyBzdHJpbmdUZXh0KHRl
eHQuZGF0YSgpLCB0ZXh0Lmxlbmd0aCgpKTsKICAgICBpbnQgc2tpcHBlZExlbmd0aCA9IDA7CiAK
ICAgICB3aGlsZSAoIXN0cmluZ1RleHQuaXNFbXB0eSgpKSB7CkBAIC02OSwyNyArNjksMzQgQEAg
Ym9vbCBNb2NrU3BlbGxDaGVjazo6c3BlbGxDaGVja1dvcmQoY29uc3QgV2ViU3RyaW5nJiB0ZXh0
LCBpbnQqIG1pc3NwZWxsZWRPZmZzZXQKICAgICAgICAgLy8gKFRoaXMgaXMgYSBzaW1wbGUgdmVy
c2lvbiBvZiBvdXIgU3BlbGxDaGVja1dvcmRJdGVyYXRvciBjbGFzcy4pCiAgICAgICAgIC8vIElm
IHRoZSBnaXZlbiBzdHJpbmcgZG9lc24ndCBpbmNsdWRlIGFueSBBU0NJSSBjaGFyYWN0ZXJzLCB3
ZSBjYW4gdHJlYXQgdGhlCiAgICAgICAgIC8vIHN0cmluZyBhcyB2YWxpZCBvbmUuCi0gICAgICAg
IC8vIFVuZm9ydHVuYXRlbHksIFRoaXMgaW1wbGVtZW50YXRpb24gc3BsaXRzIGEgY29udHJhY3Rp
b24sIGkuZS4gImlzbid0IiBpcwotICAgICAgICAvLyBzcGxpdCBpbnRvIHR3byBwaWVjZXMgImlz
biIgYW5kICJ0Ii4gVGhpcyBpcyBPSyBiZWNhdXNlIHdlYmtpdCB0ZXN0cwotICAgICAgICAvLyBk
b24ndCBoYXZlIG1pc3NwZWxsZWQgY29udHJhY3Rpb25zLgogICAgICAgICBpbnQgd29yZE9mZnNl
dCA9IHN0cmluZ1RleHQuZmluZChpc0FTQ0lJQWxwaGEpOwogICAgICAgICBpZiAod29yZE9mZnNl
dCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICBpbnQgd29yZEVuZCA9
IHN0cmluZ1RleHQuZmluZChpc05vdEFTQ0lJQWxwaGEsIHdvcmRPZmZzZXQpOwotICAgICAgICBp
bnQgd29yZExlbmd0aCA9IHdvcmRFbmQgPT0gLTEgPyBzdGF0aWNfY2FzdDxpbnQ+KHN0cmluZ1Rl
eHQubGVuZ3RoKCkpIC0gd29yZE9mZnNldCA6IHdvcmRFbmQgLSB3b3JkT2Zmc2V0OworICAgICAg
ICBpbnQgbWF4V29yZExlbmd0aCA9IHN0YXRpY19jYXN0PGludD4oc3RyaW5nVGV4dC5sZW5ndGgo
KSkgLSB3b3JkT2Zmc2V0OworICAgICAgICBpbnQgd29yZExlbmd0aDsKKyAgICAgICAgU3RyaW5n
IHdvcmQ7CiAKICAgICAgICAgLy8gTG9vayB1cCBvdXIgbWlzc3BlbGxlZC13b3JkIHRhYmxlIHRv
IGNoZWNrIGlmIHRoZSBleHRyYWN0ZWQgd29yZCBpcyBhCiAgICAgICAgIC8vIGtub3duIG1pc3Nw
ZWxsZWQgd29yZCwgYW5kIHJldHVybiB0aGUgb2Zmc2V0IGFuZCB0aGUgbGVuZ3RoIG9mIHRoZQog
ICAgICAgICAvLyBleHRyYWN0ZWQgd29yZCBpZiB0aGlzIHdvcmQgaXMgYSBrbm93biBtaXNzcGVs
bGVkIHdvcmQuCiAgICAgICAgIC8vIChTZWUgdGhlIGNvbW1lbnQgaW4gTW9ja1NwZWxsQ2hlY2s6
OmluaXRpYWxpemVJZk5lZWRlZCgpIHdoeSB3ZSB1c2UgYQogICAgICAgICAvLyBtaXNzcGVsbGVk
LXdvcmQgdGFibGUuKQotICAgICAgICBXVEY6OlN0cmluZyB3b3JkID0gc3RyaW5nVGV4dC5zdWJz
dHJpbmcod29yZE9mZnNldCwgd29yZExlbmd0aCk7Ci0gICAgICAgIGlmIChtX21pc3NwZWxsZWRX
b3Jkcy5jb250YWlucyh3b3JkKSkgewotICAgICAgICAgICAgKm1pc3NwZWxsZWRPZmZzZXQgPSB3
b3JkT2Zmc2V0ICsgc2tpcHBlZExlbmd0aDsKLSAgICAgICAgICAgICptaXNzcGVsbGVkTGVuZ3Ro
ID0gd29yZExlbmd0aDsKLSAgICAgICAgICAgIGJyZWFrOworICAgICAgICBmb3IgKGludCBpID0g
MDsgaSA8IG1fbWlzc3BlbGxlZFdvcmRzLnNpemUoKTsgKytpKSB7CisgICAgICAgICAgICB3b3Jk
TGVuZ3RoID0gc3RhdGljX2Nhc3Q8aW50PihtX21pc3NwZWxsZWRXb3Jkcy5hdChpKS5sZW5ndGgo
KSkgPiBtYXhXb3JkTGVuZ3RoID8gbWF4V29yZExlbmd0aCA6IHN0YXRpY19jYXN0PGludD4obV9t
aXNzcGVsbGVkV29yZHMuYXQoaSkubGVuZ3RoKCkpOworICAgICAgICAgICAgd29yZCA9IHN0cmlu
Z1RleHQuc3Vic3RyaW5nKHdvcmRPZmZzZXQsIHdvcmRMZW5ndGgpOworICAgICAgICAgICAgaWYg
KHdvcmQgPT0gbV9taXNzcGVsbGVkV29yZHMuYXQoaSkgJiYgKHN0YXRpY19jYXN0PGludD4oc3Ry
aW5nVGV4dC5sZW5ndGgoKSkgPT0gd29yZE9mZnNldCArIHdvcmRMZW5ndGggfHwgaXNOb3RBU0NJ
SUFscGhhKHN0cmluZ1RleHRbd29yZE9mZnNldCArIHdvcmRMZW5ndGhdKSkpIHsKKyAgICAgICAg
ICAgICAgICAqbWlzc3BlbGxlZE9mZnNldCA9IHdvcmRPZmZzZXQgKyBza2lwcGVkTGVuZ3RoOwor
ICAgICAgICAgICAgICAgICptaXNzcGVsbGVkTGVuZ3RoID0gd29yZExlbmd0aDsKKyAgICAgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogCisgICAgICAgIGlmICgq
bWlzc3BlbGxlZExlbmd0aCA+IDApCisgICAgICAgICAgICBicmVhazsKKworICAgICAgICBpbnQg
d29yZEVuZCA9IHN0cmluZ1RleHQuZmluZChpc05vdEFTQ0lJQWxwaGEsIHdvcmRPZmZzZXQpOwor
ICAgICAgICB3b3JkTGVuZ3RoID0gd29yZEVuZCA9PSAtMSA/IHN0YXRpY19jYXN0PGludD4oc3Ry
aW5nVGV4dC5sZW5ndGgoKSkgLSB3b3JkT2Zmc2V0IDogd29yZEVuZCAtIHdvcmRPZmZzZXQ7CisK
ICAgICAgICAgQVNTRVJUKDAgPCB3b3JkT2Zmc2V0ICsgd29yZExlbmd0aCk7CiAgICAgICAgIHN0
cmluZ1RleHQgPSBzdHJpbmdUZXh0LnN1YnN0cmluZyh3b3JkT2Zmc2V0ICsgd29yZExlbmd0aCk7
CiAgICAgICAgIHNraXBwZWRMZW5ndGggKz0gd29yZE9mZnNldCArIHdvcmRMZW5ndGg7CkBAIC0x
NTEsMTIgKzE1OCwxMyBAQCBib29sIE1vY2tTcGVsbENoZWNrOjppbml0aWFsaXplSWZOZWVkZWQo
KQogICAgICAgICAiaWZtbXAiLAogICAgICAgICAicXdlcnR5dWlvcGFzZCIsCiAgICAgICAgICJx
d2VydHl1aW9wYXNkZiIsCisgICAgICAgICJ1cHBlciBjYXNlIiwKICAgICAgICAgIndlbGxjb21l
IgogICAgIH07CiAKICAgICBtX21pc3NwZWxsZWRXb3Jkcy5jbGVhcigpOwogICAgIGZvciAoc2l6
ZV90IGkgPSAwOyBpIDwgYXJyYXlzaXplKG1pc3NwZWxsZWRXb3Jkcyk7ICsraSkKLSAgICAgICAg
bV9taXNzcGVsbGVkV29yZHMuYWRkKFdURjo6U3RyaW5nOjpmcm9tVVRGOChtaXNzcGVsbGVkV29y
ZHNbaV0pLCBmYWxzZSk7CisgICAgICAgIG1fbWlzc3BlbGxlZFdvcmRzLmFwcGVuZChTdHJpbmc6
OmZyb21VVEY4KG1pc3NwZWxsZWRXb3Jkc1tpXSkpOwogCiAgICAgLy8gTWFyayBhcyBpbml0aWFs
aXplZCB0byBwcmV2ZW50IHRoaXMgb2JqZWN0IGZyb20gYmVpbmcgaW5pdGlhbGl6ZWQgdHdpY2UK
ICAgICAvLyBvciBtb3JlLgpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vVGVzdFJ1bm5lci9zcmMvTW9ja1NwZWxsQ2hlY2suaCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L2Nocm9taXVtL1Rlc3RSdW5uZXIvc3JjL01vY2tTcGVsbENoZWNrLmgKaW5kZXggOGE5OGQ3MDdj
MDRiMWJjODVlMjhmNTcxMDRkYmMwMzE2NDE0NmI1ZC4uZWUzOGYyMjkyMjI2M2U3ZjMxNjgzOGNk
Zjg0MzY1ZTQzMGE1ZjFhNiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vVGVzdFJ1bm5lci9zcmMvTW9ja1NwZWxsQ2hlY2suaAorKysgYi9Ub29scy9EdW1wUmVuZGVy
VHJlZS9jaHJvbWl1bS9UZXN0UnVubmVyL3NyYy9Nb2NrU3BlbGxDaGVjay5oCkBAIC0zMyw4ICsz
Myw3IEBACiAKICNpbmNsdWRlICJQbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViU3RyaW5nLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm0vY2hyb21pdW0vcHVibGljL1dlYlZlY3Rvci5oIgotI2luY2x1
ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nSGFzaC5oPgorI2lu
Y2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAog
Ly8gQSBtb2NrIGltcGxlbWVudGF0aW9uIG9mIGEgc3BlbGwtY2hlY2tlciB1c2VkIGZvciBXZWJL
aXQgdGVzdHMuCkBAIC03MSw3ICs3MCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBpbml0aWFsaXpl
SWZOZWVkZWQoKTsKIAogICAgIC8vIEEgdGFibGUgdGhhdCBjb25zaXN0cyBvZiBtaXNzcGVsbGVk
IHdvcmRzLgotICAgIEhhc2hNYXA8V1RGOjpTdHJpbmcsIGJvb2w+IG1fbWlzc3BlbGxlZFdvcmRz
OworICAgIFZlY3RvcjxTdHJpbmc+IG1fbWlzc3BlbGxlZFdvcmRzOwogCiAgICAgLy8gQSBmbGFn
IHJlcHJlc2VudGluZyB3aGV0aGVyIG9yIG5vdCB0aGlzIG9iamVjdCBpcyBpbml0aWFsaXplZC4K
ICAgICBib29sIG1faW5pdGlhbGl6ZWQ7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNTRiZjAxY2E4MTFmNzAzYzI1YmI4YjQ5
OTI3OTFkMzA0Zjg4NjdlNC4uMjRjYWI2NDM1OTQ4MDdhZDNhMDgzMzAxZGI4ZTljYzY5ZWJlMDgy
YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDEzLTAxLTMxICBSb3VzbGFuIFNvbG9tYWtoaW4g
IDxyb3VzbGFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dIEV4cGVjdCBzcGVs
bGNoZWNrIHRvIHdvcmsgZm9yIGV4YWN0bHktc2VsZWN0ZWQgbXVsdGktd29yZCBtaXNzcGVsbGlu
Z3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwODQ5
OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxh
dGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0aW9uczogVXBkYXRlIHNwZWxsY2hlY2sgdGVzdHMg
ZXhwZWN0YXRpb25zLgorCiAyMDEzLTAxLTMxICBKZXNzaWUgQmVybGluICA8amJlcmxpbkBhcHBs
ZS5jb20+CiAKICAgICAgICAgV2ViS2l0VGVzdFJ1bm5lciBuZWVkcyBhbiBpbXBsZW1lbnRhdGlv
biBvZiBldmVudFNlbmRlci5iZWdpbkRyYWdXaXRoRmlsZXMKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGU5NmZjZTU2YjVhNTUyYWU2YWQ2
MGJhYjI0ZjJmZWY3ZjIyODE4MDAuLmViMTlmMTZmNjlmMzg4NDY4YjQ3ZWU1MTE1YzM0ZTBiYWRm
ZjU2M2EgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL1Rlc3RFeHBl
Y3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vVGVzdEV4cGVjdGF0
aW9ucwpAQCAtNDM4OCwxNiArNDM4OCwxMSBAQCB3ZWJraXQub3JnL2IvMTA4Mjg2IHBsYXRmb3Jt
L2Nocm9taXVtL3ZpcnR1YWwvc29mdHdhcmVjb21wb3NpdGluZy9nZW9tZXRyeS9maXhlZAogd2Vi
a2l0Lm9yZy9iLzEwODI4NiBwbGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL3NvZnR3YXJlY29tcG9z
aXRpbmcvZ2VvbWV0cnkvZml4ZWQtcG9zaXRpb24taWZyYW1lLWNvbXBvc2l0ZWQtcGFnZS1zY2Fs
ZS1kb3duLmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIAogIyBTcGVsbGNoZWNrZXIgYmVoYXZp
b3IgdGVzdHMuCi13ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmct
ZG91YmxlLWNsaWNrZWQtd29yZC5odG1sIFsgU2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MzcwIGVk
aXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctZG91YmxlLWNsaWNrZWQtd29yZC13aXRoLXVuZGVyc2Nv
cmVzLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9z
cGVsbGluZy1leGFjdGx5LXNlbGVjdGVkLW11bHRpcGxlLXdvcmRzLmh0bWwgWyBTa2lwIF0KLXdl
YmtpdC5vcmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1leGFjdGx5LXNlbGVj
dGVkLXdvcmQuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxs
aW5nL3NwZWxsaW5nLW11bHRpd29yZC1zZWxlY3Rpb24uaHRtbCBbIFNraXAgXQotd2Via2l0Lm9y
Zy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXNob3VsZC1zZWxlY3QtbXVsdGlw
bGUtd29yZHMuaHRtbCBbIFNraXAgXQotd2Via2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxs
aW5nL3NwZWxsaW5nLXNob3VsZC1zZWxlY3Qtc2luZ2xlLXdvcmQuaHRtbCBbIFNraXAgXQotd2Vi
a2l0Lm9yZy9iLzEwODM3MCBlZGl0aW5nL3NwZWxsaW5nL3NwZWxsaW5nLXN1YndvcmQtc2VsZWN0
aW9uLmh0bWwgWyBTa2lwIF0KLXdlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9z
cGVsbGluZy13aXRoLXB1bmN0dWF0aW9uLXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCi13ZWJraXQu
b3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctd2l0aC11bmRlcnNjb3JlLXNl
bGVjdGlvbi5odG1sIFsgU2tpcCBdCi13ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxp
bmcvc3BlbGxpbmctd2l0aC13aGl0ZXNwYWNlLXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCit3ZWJr
aXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctZG91YmxlLWNsaWNrZWQt
d29yZC5odG1sIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxp
bmcvc3BlbGxpbmctZG91YmxlLWNsaWNrZWQtd29yZC13aXRoLXVuZGVyc2NvcmVzLmh0bWwgWyBG
YWlsdXJlIF0KK3dlYmtpdC5vcmcvYi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy1z
aG91bGQtc2VsZWN0LW11bHRpcGxlLXdvcmRzLmh0bWwgWyBGYWlsdXJlIF0KK3dlYmtpdC5vcmcv
Yi8xMDgzNzAgZWRpdGluZy9zcGVsbGluZy9zcGVsbGluZy13aXRoLXB1bmN0dWF0aW9uLXNlbGVj
dGlvbi5odG1sIFsgRmFpbHVyZSBdCit3ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxp
bmcvc3BlbGxpbmctd2l0aC11bmRlcnNjb3JlLXNlbGVjdGlvbi5odG1sIFsgRmFpbHVyZSBdCit3
ZWJraXQub3JnL2IvMTA4MzcwIGVkaXRpbmcvc3BlbGxpbmcvc3BlbGxpbmctd2l0aC13aGl0ZXNw
YWNlLXNlbGVjdGlvbi5odG1sIFsgRmFpbHVyZSBdCiAKIHdlYmtpdC5vcmcvYi8xMDg0MjQgbWVk
aWEvdmlkZW8tZXJyb3ItZG9lcy1ub3QtZXhpc3QuaHRtbCBbIEZhaWx1cmUgXQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>