<?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>109216</bug_id>
          
          <creation_ts>2013-02-07 12:11:52 -0800</creation_ts>
          <short_desc>[Qt][WK2] Crash on window resize if WebProcess is closed/crashed</short_desc>
          <delta_ts>2013-02-15 17:43:58 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</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>P1</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>109842</dependson>
    
    <dependson>109843</dependson>
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Adenilson Cavalcanti Silva">savagobr</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abecsi</cc>
    
    <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>hausmann</cc>
    
    <cc>menard</cc>
    
    <cc>rafael.lobo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>827781</commentid>
    <comment_count>0</comment_count>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2013-02-07 12:11:52 -0800</bug_when>
    <thetext>Steps to reproduce:
a) Start snowshoe
b) Kill QtWebProcess
c) Window resize

Cause of crash: calls to WebKit::DrawingAreaProxy without testing for pointer validity.

When the WebProcess was closed (or crashed), WebKit::WebPageProxy will set its DrawingAreaProxy data member pointer to null. At a resize event, QQuickWebView will simply call into its pimple updateViewportSize() which access the pointer to the WebPageProxy that is now set to null.

Some ports (e.g. EFL), will load an error page at WebProcess crash with the side effect forcing its re-spawn, which is not the case of Qt. Makes me wonder if we should have similar behavior?

This patch adds a test for the validity of WebPageProxy pointer which fixes the crash.

I considered the idea of creating a test for it, but it would either result in:
a) Having a test using a native API (e.g. POSIX) to inspect for QtWebProcess (i.e. inspecting /proc in linux) and kill it, followed by resizing a QQuickWebView client (QML WebView). This is not ideal since it would result in a test that only runs in a specific environment while Qt runs everywhere(Tm)!

b) Force QQuickWebView (or friends) to somehow export the process ID of QtWebProcess. Honestly, creating a YAPA (Yet Another Public API) just for a test&apos;s sake sounded like overkill.

Finally, it is a good idea to test for pointer state (if it can be null) before calling into it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827789</commentid>
    <comment_count>1</comment_count>
      <attachid>187146</attachid>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2013-02-07 12:22:37 -0800</bug_when>
    <thetext>Created attachment 187146
The fix (a 2 liner)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827994</commentid>
    <comment_count>2</comment_count>
      <attachid>187146</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-02-07 16:29:11 -0800</bug_when>
    <thetext>Comment on attachment 187146
The fix (a 2 liner)

You are gonna need a better excuse to avoid writing a test :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>828056</commentid>
    <comment_count>3</comment_count>
    <who name="Rafael Brandao">rafael.lobo</who>
    <bug_when>2013-02-07 17:42:03 -0800</bug_when>
    <thetext>Also I think this is not enough to solve the whole issue. Look at WebPageProxy::processDidCrash, page proxy is already invalidated. Why would you try to access m_drawingArea from it if you know it&apos;s invalid? This crash would also happen if you try to access something from m_mainFrame, so fixing this null check here would probably not be enough.

What you could use: m_pageClient-&gt;processDidCrash() (already called from there).
So your page client know when this happened, and maybe you could show a error page with a kitten image? Or just try to reload the last url? Or maybe export this behavior as API for the Qt&apos;s WebView user decide what to do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>828078</commentid>
    <comment_count>4</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-02-07 18:19:49 -0800</bug_when>
    <thetext>I vote for the kitten!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831901</commentid>
    <comment_count>5</comment_count>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2013-02-13 07:35:08 -0800</bug_when>
    <thetext>Everybody loves kittens!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>831917</commentid>
    <comment_count>6</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2013-02-13 08:14:39 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 187146 [details])
&gt; You are gonna need a better excuse to avoid writing a test :)

From looking at mac/WKView.mm it appears that the common pattern is this:

if (DrawingAreaProxy* drawingArea = webPageProxy-&gt;drawingArea()) {
    drawingArea-&gt;foo();
    drawingArea-&gt;bar();
}

Code in qquickwebview.cpp should probably be changed to follow this pattern.

However having a unit test that calls every possible method in QQuickWebView after crashing the process manually seems overkill to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832240</commentid>
    <comment_count>7</comment_count>
      <attachid>188159</attachid>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2013-02-13 13:08:22 -0800</bug_when>
    <thetext>Created attachment 188159
Following reviewer&apos;s suggestion to test the pointed object</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832257</commentid>
    <comment_count>8</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2013-02-13 13:22:32 -0800</bug_when>
    <thetext>Note how the example declares a variable in the if to avoid repeated calls to webPageProxy-&gt;drawingArea()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832289</commentid>
    <comment_count>9</comment_count>
      <attachid>188170</attachid>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2013-02-13 13:37:12 -0800</bug_when>
    <thetext>Created attachment 188170
Using a local pointer variable to save function calls.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832792</commentid>
    <comment_count>10</comment_count>
      <attachid>188170</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2013-02-14 00:36:16 -0800</bug_when>
    <thetext>Comment on attachment 188170
Using a local pointer variable to save function calls.

Looks good to me. Benjamin, do you sign off on this? :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832794</commentid>
    <comment_count>11</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-02-14 00:40:51 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 188170 [details])
&gt; Looks good to me. Benjamin, do you sign off on this? :)

Yep, this looks like a good idea. I sign off the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832796</commentid>
    <comment_count>12</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-02-14 00:42:45 -0800</bug_when>
    <thetext>&gt; Yep, this looks like a good idea. I sign off the patch.

Hum, &quot;I sign off on the patch&quot; is probably more grammatically correct. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832802</commentid>
    <comment_count>13</comment_count>
      <attachid>188170</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-02-14 00:55:48 -0800</bug_when>
    <thetext>Comment on attachment 188170
Using a local pointer variable to save function calls.

Actually, no.

PlatformWebView has a method to resize: PlatformWebView::resizeTo().
It should be completely trivial to make an API tests (take  MouseMoveAfterCrash as an example). Why not add the test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832942</commentid>
    <comment_count>14</comment_count>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2013-02-14 04:23:18 -0800</bug_when>
    <thetext>Benjamin

Answering the question: why not add a test? If I understood correctly, QtWebKit doesn&apos;t support WebKit2 API tests, we would need to provide a PlatformWebView implementation.

I can write a test just fine, fixing that other crash in WK2 (issue #109305) helped to understand better how tests are written. Plus, it would help to test this scenario (crash followed by window resize) in other ports.

Only issue in this test is that it wouldn&apos;t prove the case of this bug fix for Qt. I see the whole picture really as 3 different tasks:
a) Fix this Qt bug
b) Write a WK2 API test to simulate the crash scenario
c) Implement a PlatformWebView and change Qt buildsystem to support running WK2 API tests.

What you think about this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833733</commentid>
    <comment_count>15</comment_count>
      <attachid>188170</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-02-14 23:24:33 -0800</bug_when>
    <thetext>Comment on attachment 188170
Using a local pointer variable to save function calls.

Good to go, given https://bugs.webkit.org/show_bug.cgi?id=109842.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834458</commentid>
    <comment_count>16</comment_count>
      <attachid>188170</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-15 16:16:14 -0800</bug_when>
    <thetext>Comment on attachment 188170
Using a local pointer variable to save function calls.

Rejecting attachment 188170 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=gce-cq-03&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 188170, &apos;--port=chromium-xvfb&apos;]&quot; exit_code: 2 cwd: /mnt/git/webkit-commit-queue

Last 500 characters of output:
fs from patch file(s).
patching file Source/WebKit2/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp
Hunk #1 FAILED at 585.
Hunk #2 succeeded at 938 (offset 12 lines).
1 out of 2 hunks FAILED -- saving rejects to file Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp.rej

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;, &apos;--reviewer&apos;, &apos;Benjamin Poulain&apos;]&quot; exit_code: 1 cwd: /mnt/git/webkit-commit-queue

Full output: http://queues.webkit.org/results/16589351</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834509</commentid>
    <comment_count>17</comment_count>
      <attachid>188668</attachid>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2013-02-15 16:56:28 -0800</bug_when>
    <thetext>Created attachment 188668
Rebased patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834551</commentid>
    <comment_count>18</comment_count>
      <attachid>188668</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-15 17:43:53 -0800</bug_when>
    <thetext>Comment on attachment 188668
Rebased patch

Clearing flags on attachment: 188668

Committed r143077: &lt;http://trac.webkit.org/changeset/143077&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834552</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-15 17:43:58 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>187146</attachid>
            <date>2013-02-07 12:22:37 -0800</date>
            <delta_ts>2013-02-13 13:08:22 -0800</delta_ts>
            <desc>The fix (a 2 liner)</desc>
            <filename>0001-Fix-the-crash.patch</filename>
            <type>text/plain</type>
            <size>2082</size>
            <attacher name="Adenilson Cavalcanti Silva">savagobr</attacher>
            
              <data encoding="base64">RnJvbSA4MjEyMjExOTNmNGIzN2RhMjM5Y2I0N2EzMTQzNTQ4MjAxZWFkOWQ3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgpEYXRlOiBUaHUsIDcgRmViIDIwMTMgMTY6MTg6MTkgLTA0MDAKU3ViamVjdDogW1BB
VENIXSBGaXggdGhlIGNyYXNoLgoKU2lnbmVkLW9mZi1ieTogQWRlbmlsc29uIENhdmFsY2FudGkg
PGNhdmFsY2FudGlpQGdtYWlsLmNvbT4KLS0tCiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgICAg
ICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysrKysrKysrKysrKwogU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcCB8ICAgIDMgKysrCiAyIGZpbGVz
IGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZWVlYTUxMi4uOTJmZmI0
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEzLTAyLTA3ICBBZGVuaWxzb24gQ2F2
YWxjYW50aSAgPGNhdmFsY2FudGlpQGdtYWlsLmNvbT4KKworICAgICAgICBbUXRdW1dLMl0gQ3Jh
c2ggb24gd2luZG93IHJlc2l6ZSBpZiBXZWJQcm9jZXNzIGlzIGNsb3NlZC9jcmFzaGVkCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDkyMTYKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBRUXVpY2tXZWJWaWV3
IGlzIGFjY2Vzc2luZyBhIFdlYlBhZ2VQcm94eSBkYXRhIG1lbWJlciAoRHJhd2luZ0FyZWFQcm94
eSkgd2l0aG91dCB0ZXN0aW5nIGZvcgorICAgICAgICBpdCdzIHZhbGlkaXR5LiBUaGlzIG1lbWJl
ciBjYW4gYmUgc2V0IHRvIG51bGwgaWYvd2hlbiBXZWJQcm9jZXNzIGhhcyBjbG9zZWQgKG9yIGNy
YXNoZWQpLAorICAgICAgICB0aHVzIGlzIGEgZ29vZCBpZGVhIHRvIHRlc3QgdGhlIHBvaW50ZXIg
YmVmb3JlIHVzaW5nIGl0LgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2
aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdMZWdhY3lQcml2YXRlOjp1cGRhdGVWaWV3
cG9ydFNpemUpOgorCiAyMDEzLTAyLTA3ICBDYWlvIE1hcmNlbG8gZGUgT2xpdmVpcmEgRmlsaG8g
IDxjYWlvLm9saXZlaXJhQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgW0Nvb3JkaW5hdGVkR3Jh
cGhpY3NdIFVzZSBTY3JvbGxpbmdDb29yZGluYXRvciB0byB0cmFjayBmaXhlZCBsYXllcnMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5j
cHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCmlu
ZGV4IDNhODAxMGEuLmI0ZTVkZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcApAQCAtOTI2LDYgKzkyNiw5IEBAIHZvaWQgUVF1aWNr
V2ViVmlld0xlZ2FjeVByaXZhdGU6OnVwZGF0ZVZpZXdwb3J0U2l6ZSgpCiAKICAgICBwYWdlVmll
dy0+c2V0Q29udGVudHNTaXplKHZpZXdwb3J0U2l6ZSk7CiAKKyAgICBpZiAoIXdlYlBhZ2VQcm94
eS0+ZHJhd2luZ0FyZWEoKSkKKyAgICAgICAgcmV0dXJuOworCiAgICAgLy8gVGhlIGZpeGVkIGxh
eW91dCBpcyBoYW5kbGVkIGJ5IHRoZSBGcmFtZVZpZXcgYW5kIHRoZSBkcmF3aW5nIGFyZWEgZG9l
c24ndCBiZWhhdmUgZGlmZmVyZW50bHkKICAgICAvLyB3aGV0aGVyIGl0cyBmaXhlZCBvciBub3Qu
IFdlIHN0aWxsIG5lZWQgdG8gdGVsbCB0aGUgZHJhd2luZyBhcmVhIHdoaWNoIHBhcnQgb2YgaXQK
ICAgICAvLyBoYXMgdG8gYmUgcmVuZGVyZWQgb24gdGlsZXMsIGFuZCBpbiBkZXNrdG9wIG1vZGUg
aXQncyBhbGwgb2YgaXQuCi0tIAoxLjcuMTAuNAoK
</data>
<flag name="review"
          id="206857"
          type_id="1"
          status="-"
          setter="benjamin"
    />
    <flag name="commit-queue"
          id="206858"
          type_id="3"
          status="-"
          setter="benjamin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188159</attachid>
            <date>2013-02-13 13:08:22 -0800</date>
            <delta_ts>2013-02-13 13:37:12 -0800</delta_ts>
            <desc>Following reviewer&apos;s suggestion to test the pointed object</desc>
            <filename>0002-crash-fix.patch</filename>
            <type>text/plain</type>
            <size>3950</size>
            <attacher name="Adenilson Cavalcanti Silva">savagobr</attacher>
            
              <data encoding="base64">RnJvbSAwZTJlYjJlZTQ1Y2YwYzgxMDk2MDFlZTgyYmI1Y2Y0OWRhNjNmNjdmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgpEYXRlOiBXZWQsIDEzIEZlYiAyMDEzIDE3OjAxOjI5IC0wNDAwClN1YmplY3Q6IFtQ
QVRDSF0gRm9sbG93aW5nIHJldmlld2VyJ3Mgc3VnZ2VzdGlvbiB0byBzaGllbGQgYWxsIGNhbGxz
IGludG8gdGhlCiBkcmF3aW5nQXJlYSBwb2ludGVyLgoKU2lnbmVkLW9mZi1ieTogQWRlbmlsc29u
IENhdmFsY2FudGkgPGNhdmFsY2FudGlpQGdtYWlsLmNvbT4KLS0tCiBTb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxOCArKysrKysrKysrKysrKysr
CiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIHwgICAy
NCArKysrKysrKysrKystLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygr
KSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDkwM2IwZTQuLjA4NGE1NTggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAxMy0wMi0xMyAgQWRlbmlsc29uIENhdmFsY2FudGkg
IDxjYXZhbGNhbnRpaUBnbWFpbC5jb20+CisKKyAgICAgICAgW1F0XVtXSzJdIENyYXNoIG9uIHdp
bmRvdyByZXNpemUgaWYgV2ViUHJvY2VzcyBpcyBjbG9zZWQvY3Jhc2hlZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5MjE2CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgT25seSBtYWtlIGNhbGxzIGludG8g
RHJhd2luZ0FyZWFQcm94eSBwb2ludGVyIGFmdGVyIGNoZWNraW5nIGl0cyBzdGF0ZS4KKworICAg
ICAgICBXaGVuIHRoZSBXZWJQcm9jZXNzIHdhcyBjbG9zZWQgb3IgY3Jhc2hlZCwgV2ViS2l0OjpX
ZWJQYWdlUHJveHkgd2lsbCBzZXQgaXRzIERyYXdpbmdBcmVhUHJveHkKKyAgICAgICAgcG9pbnRl
ciB0byBudWxsLiBSZXNpemUgZXZlbnRzIG9uIFVJUHJvY2Vzcy9jbGllbnQgd2lsbCB0cnkgdG8g
YWNjZXNzIHRoZSBvYmplY3QgdG8gdXBkYXRlCisgICAgICAgIHRoZSBnZW9tZXRyeSBhbmQgZm9y
d2FyZCB0aGlzIGluZm9ybWF0aW9uIGludG8gdGhlIFdlYlByb2Nlc3MuIFRoYXQgd291bGQgY3Jl
YXRlIGEgY3Jhc2gKKyAgICAgICAgc2NlbmFyaW8gdGhhdCBpcyBmaXhlZCBieSB0aGlzIHBhdGNo
LgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAg
ICAgKFFRdWlja1dlYlZpZXdQcml2YXRlOjpkaWRSZWxhdW5jaFByb2Nlc3MpOgorICAgICAgICAo
UVF1aWNrV2ViVmlld0xlZ2FjeVByaXZhdGU6OnVwZGF0ZVZpZXdwb3J0U2l6ZSk6CisKIDIwMTMt
MDItMTMgIEd5dXlvdW5nIEtpbSAgPGd5dXlvdW5nLmtpbUBzYW1zdW5nLmNvbT4KIAogICAgICAg
ICBbV0syXSBSZW1vdmUgd2ViIGludGVudHMgY2FsbGJhY2tzCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCAzYTgwMTBhLi45MzFh
OTVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dl
YnZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vi
dmlldy5jcHAKQEAgLTU4NSwxMCArNTg1LDEyIEBAIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6
OmRpZFJlbGF1bmNoUHJvY2VzcygpCiB7CiAgICAgcVdhcm5pbmcoIldBUk5JTkc6IFRoZSB3ZWIg
cHJvY2VzcyBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgcmVzdGFydGVkLiIpOwogCi0gICAgd2ViUGFn
ZVByb3h5LT5kcmF3aW5nQXJlYSgpLT5zZXRTaXplKHZpZXdTaXplKCksIEludFNpemUoKSk7Cisg
ICAgaWYgKHdlYlBhZ2VQcm94eS0+ZHJhd2luZ0FyZWEoKSkgeworICAgICAgICB3ZWJQYWdlUHJv
eHktPmRyYXdpbmdBcmVhKCktPnNldFNpemUodmlld1NpemUoKSwgSW50U2l6ZSgpKTsKIAotICAg
IHVwZGF0ZVZpZXdwb3J0U2l6ZSgpOwotICAgIHVwZGF0ZVVzZXJTY3JpcHRzKCk7CisgICAgICAg
IHVwZGF0ZVZpZXdwb3J0U2l6ZSgpOworICAgICAgICB1cGRhdGVVc2VyU2NyaXB0cygpOworICAg
IH0KIH0KIAogUGFzc093blB0cjxEcmF3aW5nQXJlYVByb3h5PiBRUXVpY2tXZWJWaWV3UHJpdmF0
ZTo6Y3JlYXRlRHJhd2luZ0FyZWFQcm94eSgpCkBAIC05MjYsMTMgKzkyOCwxNSBAQCB2b2lkIFFR
dWlja1dlYlZpZXdMZWdhY3lQcml2YXRlOjp1cGRhdGVWaWV3cG9ydFNpemUoKQogCiAgICAgcGFn
ZVZpZXctPnNldENvbnRlbnRzU2l6ZSh2aWV3cG9ydFNpemUpOwogCi0gICAgLy8gVGhlIGZpeGVk
IGxheW91dCBpcyBoYW5kbGVkIGJ5IHRoZSBGcmFtZVZpZXcgYW5kIHRoZSBkcmF3aW5nIGFyZWEg
ZG9lc24ndCBiZWhhdmUgZGlmZmVyZW50bHkKLSAgICAvLyB3aGV0aGVyIGl0cyBmaXhlZCBvciBu
b3QuIFdlIHN0aWxsIG5lZWQgdG8gdGVsbCB0aGUgZHJhd2luZyBhcmVhIHdoaWNoIHBhcnQgb2Yg
aXQKLSAgICAvLyBoYXMgdG8gYmUgcmVuZGVyZWQgb24gdGlsZXMsIGFuZCBpbiBkZXNrdG9wIG1v
ZGUgaXQncyBhbGwgb2YgaXQuCi0gICAgd2ViUGFnZVByb3h5LT5kcmF3aW5nQXJlYSgpLT5zZXRT
aXplKHZpZXdwb3J0U2l6ZS50b1NpemUoKSwgSW50U2l6ZSgpKTsKLSAgICAvLyBUaGUgYmFja2lu
ZyBzdG9yZSBzY2FsZSBmYWN0b3Igc2hvdWxkIGFscmVhZHkgYmUgc2V0IHRvIHRoZSBkZXZpY2Ug
cGl4ZWwgcmF0aW8KLSAgICAvLyBvZiB0aGUgdW5kZXJseWluZyB3aW5kb3csIHRodXMgd2Ugc2V0
IHRoZSBlZmZlY3RpdmUgc2NhbGUgdG8gMSBoZXJlLgotICAgIHdlYlBhZ2VQcm94eS0+ZHJhd2lu
Z0FyZWEoKS0+c2V0VmlzaWJsZUNvbnRlbnRzUmVjdChGbG9hdFJlY3QoRmxvYXRQb2ludCgpLCBG
bG9hdFNpemUodmlld3BvcnRTaXplKSksIEZsb2F0UG9pbnQoKSk7CisgICAgaWYgKHdlYlBhZ2VQ
cm94eS0+ZHJhd2luZ0FyZWEoKSkgeworICAgICAgICAvLyBUaGUgZml4ZWQgbGF5b3V0IGlzIGhh
bmRsZWQgYnkgdGhlIEZyYW1lVmlldyBhbmQgdGhlIGRyYXdpbmcgYXJlYSBkb2Vzbid0IGJlaGF2
ZSBkaWZmZXJlbnRseQorICAgICAgICAvLyB3aGV0aGVyIGl0cyBmaXhlZCBvciBub3QuIFdlIHN0
aWxsIG5lZWQgdG8gdGVsbCB0aGUgZHJhd2luZyBhcmVhIHdoaWNoIHBhcnQgb2YgaXQKKyAgICAg
ICAgLy8gaGFzIHRvIGJlIHJlbmRlcmVkIG9uIHRpbGVzLCBhbmQgaW4gZGVza3RvcCBtb2RlIGl0
J3MgYWxsIG9mIGl0LgorICAgICAgICB3ZWJQYWdlUHJveHktPmRyYXdpbmdBcmVhKCktPnNldFNp
emUodmlld3BvcnRTaXplLnRvU2l6ZSgpLCBJbnRTaXplKCkpOworICAgICAgICAvLyBUaGUgYmFj
a2luZyBzdG9yZSBzY2FsZSBmYWN0b3Igc2hvdWxkIGFscmVhZHkgYmUgc2V0IHRvIHRoZSBkZXZp
Y2UgcGl4ZWwgcmF0aW8KKyAgICAgICAgLy8gb2YgdGhlIHVuZGVybHlpbmcgd2luZG93LCB0aHVz
IHdlIHNldCB0aGUgZWZmZWN0aXZlIHNjYWxlIHRvIDEgaGVyZS4KKyAgICAgICAgd2ViUGFnZVBy
b3h5LT5kcmF3aW5nQXJlYSgpLT5zZXRWaXNpYmxlQ29udGVudHNSZWN0KEZsb2F0UmVjdChGbG9h
dFBvaW50KCksIEZsb2F0U2l6ZSh2aWV3cG9ydFNpemUpKSwgRmxvYXRQb2ludCgpKTsKKyAgICB9
CiB9CiAKIHFyZWFsIFFRdWlja1dlYlZpZXdMZWdhY3lQcml2YXRlOjp6b29tRmFjdG9yKCkgY29u
c3QKLS0gCjEuNy4xMC40Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188170</attachid>
            <date>2013-02-13 13:37:12 -0800</date>
            <delta_ts>2013-02-15 16:56:28 -0800</delta_ts>
            <desc>Using a local pointer variable to save function calls.</desc>
            <filename>0003-crash-fix.patch</filename>
            <type>text/plain</type>
            <size>4014</size>
            <attacher name="Adenilson Cavalcanti Silva">savagobr</attacher>
            
              <data encoding="base64">RnJvbSAxZjRhM2NlY2QyNTNiZjZjZjliN2MxNWY5M2QyYmUwZTZlNmYxZmQ2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgpEYXRlOiBXZWQsIDEzIEZlYiAyMDEzIDE3OjAxOjI5IC0wNDAwClN1YmplY3Q6IFtQ
QVRDSF0gRm9sbG93aW5nIHJldmlld2VyJ3Mgc3VnZ2VzdGlvbiB0byBzaGllbGQgYWxsIGNhbGxz
IGludG8gdGhlCiBkcmF3aW5nQXJlYSBwb2ludGVyLCBjcmVhdGUgYSBsb2NhbCBwb2ludGVyIHRv
IHNhdmUKIGZ1bmN0aW9uIGNhbGxzLgoKU2lnbmVkLW9mZi1ieTogQWRlbmlsc29uIENhdmFsY2Fu
dGkgPGNhdmFsY2FudGlpQGdtYWlsLmNvbT4KLS0tCiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxOCArKysrKysrKysrKysrKysrCiBTb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIHwgICAyNCArKysrKysr
KysrKystLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgMTAgZGVs
ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDkwM2IwZTQuLjA4NGE1NTggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyMSBAQAorMjAxMy0wMi0xMyAgQWRlbmlsc29uIENhdmFsY2FudGkgIDxjYXZhbGNh
bnRpaUBnbWFpbC5jb20+CisKKyAgICAgICAgW1F0XVtXSzJdIENyYXNoIG9uIHdpbmRvdyByZXNp
emUgaWYgV2ViUHJvY2VzcyBpcyBjbG9zZWQvY3Jhc2hlZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5MjE2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgT25seSBtYWtlIGNhbGxzIGludG8gRHJhd2luZ0Fy
ZWFQcm94eSBwb2ludGVyIGFmdGVyIGNoZWNraW5nIGl0cyBzdGF0ZS4KKworICAgICAgICBXaGVu
IHRoZSBXZWJQcm9jZXNzIHdhcyBjbG9zZWQgb3IgY3Jhc2hlZCwgV2ViS2l0OjpXZWJQYWdlUHJv
eHkgd2lsbCBzZXQgaXRzIERyYXdpbmdBcmVhUHJveHkKKyAgICAgICAgcG9pbnRlciB0byBudWxs
LiBSZXNpemUgZXZlbnRzIG9uIFVJUHJvY2Vzcy9jbGllbnQgd2lsbCB0cnkgdG8gYWNjZXNzIHRo
ZSBvYmplY3QgdG8gdXBkYXRlCisgICAgICAgIHRoZSBnZW9tZXRyeSBhbmQgZm9yd2FyZCB0aGlz
IGluZm9ybWF0aW9uIGludG8gdGhlIFdlYlByb2Nlc3MuIFRoYXQgd291bGQgY3JlYXRlIGEgY3Jh
c2gKKyAgICAgICAgc2NlbmFyaW8gdGhhdCBpcyBmaXhlZCBieSB0aGlzIHBhdGNoLgorCisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlj
a1dlYlZpZXdQcml2YXRlOjpkaWRSZWxhdW5jaFByb2Nlc3MpOgorICAgICAgICAoUVF1aWNrV2Vi
Vmlld0xlZ2FjeVByaXZhdGU6OnVwZGF0ZVZpZXdwb3J0U2l6ZSk6CisKIDIwMTMtMDItMTMgIEd5
dXlvdW5nIEtpbSAgPGd5dXlvdW5nLmtpbUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbV0syXSBS
ZW1vdmUgd2ViIGludGVudHMgY2FsbGJhY2tzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAppbmRleCAzYTgwMTBhLi5hMzBiNWZhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAK
QEAgLTU4NSwxMCArNTg1LDEyIEBAIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OmRpZFJlbGF1
bmNoUHJvY2VzcygpCiB7CiAgICAgcVdhcm5pbmcoIldBUk5JTkc6IFRoZSB3ZWIgcHJvY2VzcyBo
YXMgYmVlbiBzdWNjZXNzZnVsbHkgcmVzdGFydGVkLiIpOwogCi0gICAgd2ViUGFnZVByb3h5LT5k
cmF3aW5nQXJlYSgpLT5zZXRTaXplKHZpZXdTaXplKCksIEludFNpemUoKSk7CisgICAgaWYgKERy
YXdpbmdBcmVhUHJveHkgKmRyYXdpbmdBcmVhID0gd2ViUGFnZVByb3h5LT5kcmF3aW5nQXJlYSgp
KSB7CisgICAgICAgIGRyYXdpbmdBcmVhLT5zZXRTaXplKHZpZXdTaXplKCksIEludFNpemUoKSk7
CiAKLSAgICB1cGRhdGVWaWV3cG9ydFNpemUoKTsKLSAgICB1cGRhdGVVc2VyU2NyaXB0cygpOwor
ICAgICAgICB1cGRhdGVWaWV3cG9ydFNpemUoKTsKKyAgICAgICAgdXBkYXRlVXNlclNjcmlwdHMo
KTsKKyAgICB9CiB9CiAKIFBhc3NPd25QdHI8RHJhd2luZ0FyZWFQcm94eT4gUVF1aWNrV2ViVmll
d1ByaXZhdGU6OmNyZWF0ZURyYXdpbmdBcmVhUHJveHkoKQpAQCAtOTI2LDEzICs5MjgsMTUgQEAg
dm9pZCBRUXVpY2tXZWJWaWV3TGVnYWN5UHJpdmF0ZTo6dXBkYXRlVmlld3BvcnRTaXplKCkKIAog
ICAgIHBhZ2VWaWV3LT5zZXRDb250ZW50c1NpemUodmlld3BvcnRTaXplKTsKIAotICAgIC8vIFRo
ZSBmaXhlZCBsYXlvdXQgaXMgaGFuZGxlZCBieSB0aGUgRnJhbWVWaWV3IGFuZCB0aGUgZHJhd2lu
ZyBhcmVhIGRvZXNuJ3QgYmVoYXZlIGRpZmZlcmVudGx5Ci0gICAgLy8gd2hldGhlciBpdHMgZml4
ZWQgb3Igbm90LiBXZSBzdGlsbCBuZWVkIHRvIHRlbGwgdGhlIGRyYXdpbmcgYXJlYSB3aGljaCBw
YXJ0IG9mIGl0Ci0gICAgLy8gaGFzIHRvIGJlIHJlbmRlcmVkIG9uIHRpbGVzLCBhbmQgaW4gZGVz
a3RvcCBtb2RlIGl0J3MgYWxsIG9mIGl0LgotICAgIHdlYlBhZ2VQcm94eS0+ZHJhd2luZ0FyZWEo
KS0+c2V0U2l6ZSh2aWV3cG9ydFNpemUudG9TaXplKCksIEludFNpemUoKSk7Ci0gICAgLy8gVGhl
IGJhY2tpbmcgc3RvcmUgc2NhbGUgZmFjdG9yIHNob3VsZCBhbHJlYWR5IGJlIHNldCB0byB0aGUg
ZGV2aWNlIHBpeGVsIHJhdGlvCi0gICAgLy8gb2YgdGhlIHVuZGVybHlpbmcgd2luZG93LCB0aHVz
IHdlIHNldCB0aGUgZWZmZWN0aXZlIHNjYWxlIHRvIDEgaGVyZS4KLSAgICB3ZWJQYWdlUHJveHkt
PmRyYXdpbmdBcmVhKCktPnNldFZpc2libGVDb250ZW50c1JlY3QoRmxvYXRSZWN0KEZsb2F0UG9p
bnQoKSwgRmxvYXRTaXplKHZpZXdwb3J0U2l6ZSkpLCBGbG9hdFBvaW50KCkpOworICAgIGlmIChE
cmF3aW5nQXJlYVByb3h5ICpkcmF3aW5nQXJlYSA9IHdlYlBhZ2VQcm94eS0+ZHJhd2luZ0FyZWEo
KSkgeworICAgICAgICAvLyBUaGUgZml4ZWQgbGF5b3V0IGlzIGhhbmRsZWQgYnkgdGhlIEZyYW1l
VmlldyBhbmQgdGhlIGRyYXdpbmcgYXJlYSBkb2Vzbid0IGJlaGF2ZSBkaWZmZXJlbnRseQorICAg
ICAgICAvLyB3aGV0aGVyIGl0cyBmaXhlZCBvciBub3QuIFdlIHN0aWxsIG5lZWQgdG8gdGVsbCB0
aGUgZHJhd2luZyBhcmVhIHdoaWNoIHBhcnQgb2YgaXQKKyAgICAgICAgLy8gaGFzIHRvIGJlIHJl
bmRlcmVkIG9uIHRpbGVzLCBhbmQgaW4gZGVza3RvcCBtb2RlIGl0J3MgYWxsIG9mIGl0LgorICAg
ICAgICBkcmF3aW5nQXJlYS0+c2V0U2l6ZSh2aWV3cG9ydFNpemUudG9TaXplKCksIEludFNpemUo
KSk7CisgICAgICAgIC8vIFRoZSBiYWNraW5nIHN0b3JlIHNjYWxlIGZhY3RvciBzaG91bGQgYWxy
ZWFkeSBiZSBzZXQgdG8gdGhlIGRldmljZSBwaXhlbCByYXRpbworICAgICAgICAvLyBvZiB0aGUg
dW5kZXJseWluZyB3aW5kb3csIHRodXMgd2Ugc2V0IHRoZSBlZmZlY3RpdmUgc2NhbGUgdG8gMSBo
ZXJlLgorICAgICAgICBkcmF3aW5nQXJlYS0+c2V0VmlzaWJsZUNvbnRlbnRzUmVjdChGbG9hdFJl
Y3QoRmxvYXRQb2ludCgpLCBGbG9hdFNpemUodmlld3BvcnRTaXplKSksIEZsb2F0UG9pbnQoKSk7
CisgICAgfQogfQogCiBxcmVhbCBRUXVpY2tXZWJWaWV3TGVnYWN5UHJpdmF0ZTo6em9vbUZhY3Rv
cigpIGNvbnN0Ci0tIAoxLjcuMTAuNAoK
</data>
<flag name="review"
          id="208208"
          type_id="1"
          status="+"
          setter="benjamin"
    />
    <flag name="commit-queue"
          id="208209"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188668</attachid>
            <date>2013-02-15 16:56:28 -0800</date>
            <delta_ts>2013-02-15 17:43:53 -0800</delta_ts>
            <desc>Rebased patch</desc>
            <filename>snowshoe_fix01.patch</filename>
            <type>text/plain</type>
            <size>3946</size>
            <attacher name="Adenilson Cavalcanti Silva">savagobr</attacher>
            
              <data encoding="base64">RnJvbSBmMmYxMjNkZGFmYTEyNjI0NDlkZmMyM2ZjNjU2NTllMjM1NGViYjUwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgpEYXRlOiBGcmksIDE1IEZlYiAyMDEzIDIwOjQzOjQ4IC0wNDAwClN1YmplY3Q6IFtQ
QVRDSF0gUmViYXNlZCBwYXRjaC4KClNpZ25lZC1vZmYtYnk6IEFkZW5pbHNvbiBDYXZhbGNhbnRp
IDxjYXZhbGNhbnRpaUBnbWFpbC5jb20+Ci0tLQogU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTggKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgfCAgIDI2ICsrKysrKysrKysr
Ky0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlv
bnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cKaW5kZXggZjJkYWMxMy4uNTdiYWUwNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDIxIEBACisyMDEzLTAyLTE1ICBBZGVuaWxzb24gQ2F2YWxjYW50aSAgPGNhdmFsY2FudGlp
QGdtYWlsLmNvbT4KKworICAgICAgICBbUXRdW1dLMl0gQ3Jhc2ggb24gd2luZG93IHJlc2l6ZSBp
ZiBXZWJQcm9jZXNzIGlzIGNsb3NlZC9jcmFzaGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDkyMTYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBPbmx5IG1ha2UgY2FsbHMgaW50byBEcmF3aW5nQXJlYVBy
b3h5IHBvaW50ZXIgYWZ0ZXIgY2hlY2tpbmcgaXRzIHN0YXRlLgorCisgICAgICAgIFdoZW4gdGhl
IFdlYlByb2Nlc3Mgd2FzIGNsb3NlZCBvciBjcmFzaGVkLCBXZWJLaXQ6OldlYlBhZ2VQcm94eSB3
aWxsIHNldAorICAgICAgICBpdHMgRHJhd2luZ0FyZWFQcm94eSBwb2ludGVyIHRvIG51bGwuIFJl
c2l6ZSBldmVudHMgb24gVUlQcm9jZXNzL2NsaWVudCB3aWxsCisgICAgICAgIHRyeSB0byBhY2Nl
c3MgdGhlIG9iamVjdCB0byB1cGRhdGUgdGhlIGdlb21ldHJ5IGFuZCBmb3J3YXJkIHRoaXMgaW5m
b3JtYXRpb24KKyAgICAgICAgaW50byB0aGUgV2ViUHJvY2Vzcy4gVGhpcyB3b3VsZCBjcmVhdGUg
YSBjcmFzaCBzY2VuYXJpbyB0aGF0IGlzIGZpeGVkIGJ5IHRoaXMgcGF0Y2guCisKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwOgorICAgICAgICAoUVF1aWNrV2Vi
Vmlld1ByaXZhdGU6OmRpZFJlbGF1bmNoUHJvY2Vzcyk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3
TGVnYWN5UHJpdmF0ZTo6dXBkYXRlVmlld3BvcnRTaXplKToKKwogMjAxMy0wMi0xNSAgQ3NhYmEg
T3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQub3JnPgogCiAgICAgICAgIFR5cG8gZml4IGFmdGVy
IHIxNDMwNjQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Fx
dWlja3dlYnZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3
ZWJ2aWV3LmNwcAppbmRleCAxYTdkYTQzLi43OTczZjk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKQEAgLTU4NSwxMSArNTg1LDEz
IEBAIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OmRpZFJlbGF1bmNoUHJvY2VzcygpCiB7CiAg
ICAgcVdhcm5pbmcoIldBUk5JTkc6IFRoZSB3ZWIgcHJvY2VzcyBoYXMgYmVlbiBzdWNjZXNzZnVs
bHkgcmVzdGFydGVkLiIpOwogCi0gICAgd2ViUGFnZVByb3h5LT5kcmF3aW5nQXJlYSgpLT5zZXRT
aXplKHZpZXdTaXplKCksIEludFNpemUoKSk7CisgICAgaWYgKERyYXdpbmdBcmVhUHJveHkgKmRy
YXdpbmdBcmVhID0gd2ViUGFnZVByb3h5LT5kcmF3aW5nQXJlYSgpKSB7CisgICAgICAgIGRyYXdp
bmdBcmVhLT5zZXRTaXplKHZpZXdTaXplKCksIEludFNpemUoKSk7CiAKLSAgICB1cGRhdGVWaWV3
cG9ydFNpemUoKTsKLSAgICB1cGRhdGVVc2VyU2NyaXB0cygpOwotICAgIHVwZGF0ZVNjaGVtZURl
bGVnYXRlcygpOworICAgICAgICB1cGRhdGVWaWV3cG9ydFNpemUoKTsKKyAgICAgICAgdXBkYXRl
VXNlclNjcmlwdHMoKTsKKyAgICAgICAgdXBkYXRlU2NoZW1lRGVsZWdhdGVzKCk7CisgICAgfQog
fQogCiBQYXNzT3duUHRyPERyYXdpbmdBcmVhUHJveHk+IFFRdWlja1dlYlZpZXdQcml2YXRlOjpj
cmVhdGVEcmF3aW5nQXJlYVByb3h5KCkKQEAgLTkzOCwxMyArOTQwLDE1IEBAIHZvaWQgUVF1aWNr
V2ViVmlld0xlZ2FjeVByaXZhdGU6OnVwZGF0ZVZpZXdwb3J0U2l6ZSgpCiAKICAgICBwYWdlVmll
dy0+c2V0Q29udGVudHNTaXplKHZpZXdwb3J0U2l6ZSk7CiAKLSAgICAvLyBUaGUgZml4ZWQgbGF5
b3V0IGlzIGhhbmRsZWQgYnkgdGhlIEZyYW1lVmlldyBhbmQgdGhlIGRyYXdpbmcgYXJlYSBkb2Vz
bid0IGJlaGF2ZSBkaWZmZXJlbnRseQotICAgIC8vIHdoZXRoZXIgaXRzIGZpeGVkIG9yIG5vdC4g
V2Ugc3RpbGwgbmVlZCB0byB0ZWxsIHRoZSBkcmF3aW5nIGFyZWEgd2hpY2ggcGFydCBvZiBpdAot
ICAgIC8vIGhhcyB0byBiZSByZW5kZXJlZCBvbiB0aWxlcywgYW5kIGluIGRlc2t0b3AgbW9kZSBp
dCdzIGFsbCBvZiBpdC4KLSAgICB3ZWJQYWdlUHJveHktPmRyYXdpbmdBcmVhKCktPnNldFNpemUo
dmlld3BvcnRTaXplLnRvU2l6ZSgpLCBJbnRTaXplKCkpOwotICAgIC8vIFRoZSBiYWNraW5nIHN0
b3JlIHNjYWxlIGZhY3RvciBzaG91bGQgYWxyZWFkeSBiZSBzZXQgdG8gdGhlIGRldmljZSBwaXhl
bCByYXRpbwotICAgIC8vIG9mIHRoZSB1bmRlcmx5aW5nIHdpbmRvdywgdGh1cyB3ZSBzZXQgdGhl
IGVmZmVjdGl2ZSBzY2FsZSB0byAxIGhlcmUuCi0gICAgd2ViUGFnZVByb3h5LT5kcmF3aW5nQXJl
YSgpLT5zZXRWaXNpYmxlQ29udGVudHNSZWN0KEZsb2F0UmVjdChGbG9hdFBvaW50KCksIEZsb2F0
U2l6ZSh2aWV3cG9ydFNpemUpKSwgRmxvYXRQb2ludCgpKTsKKyAgICBpZiAoRHJhd2luZ0FyZWFQ
cm94eSAqZHJhd2luZ0FyZWEgPSB3ZWJQYWdlUHJveHktPmRyYXdpbmdBcmVhKCkpIHsKKyAgICAg
ICAgLy8gVGhlIGZpeGVkIGxheW91dCBpcyBoYW5kbGVkIGJ5IHRoZSBGcmFtZVZpZXcgYW5kIHRo
ZSBkcmF3aW5nIGFyZWEgZG9lc24ndCBiZWhhdmUgZGlmZmVyZW50bHkKKyAgICAgICAgLy8gd2hl
dGhlciBpdHMgZml4ZWQgb3Igbm90LiBXZSBzdGlsbCBuZWVkIHRvIHRlbGwgdGhlIGRyYXdpbmcg
YXJlYSB3aGljaCBwYXJ0IG9mIGl0CisgICAgICAgIC8vIGhhcyB0byBiZSByZW5kZXJlZCBvbiB0
aWxlcywgYW5kIGluIGRlc2t0b3AgbW9kZSBpdCdzIGFsbCBvZiBpdC4KKyAgICAgICAgZHJhd2lu
Z0FyZWEtPnNldFNpemUodmlld3BvcnRTaXplLnRvU2l6ZSgpLCBJbnRTaXplKCkpOworICAgICAg
ICAvLyBUaGUgYmFja2luZyBzdG9yZSBzY2FsZSBmYWN0b3Igc2hvdWxkIGFscmVhZHkgYmUgc2V0
IHRvIHRoZSBkZXZpY2UgcGl4ZWwgcmF0aW8KKyAgICAgICAgLy8gb2YgdGhlIHVuZGVybHlpbmcg
d2luZG93LCB0aHVzIHdlIHNldCB0aGUgZWZmZWN0aXZlIHNjYWxlIHRvIDEgaGVyZS4KKyAgICAg
ICAgZHJhd2luZ0FyZWEtPnNldFZpc2libGVDb250ZW50c1JlY3QoRmxvYXRSZWN0KEZsb2F0UG9p
bnQoKSwgRmxvYXRTaXplKHZpZXdwb3J0U2l6ZSkpLCBGbG9hdFBvaW50KCkpOworICAgIH0KIH0K
IAogcXJlYWwgUVF1aWNrV2ViVmlld0xlZ2FjeVByaXZhdGU6Onpvb21GYWN0b3IoKSBjb25zdAot
LSAKMS43LjEwLjQKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>