<?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>39295</bug_id>
          
          <creation_ts>2010-05-18 09:01:37 -0700</creation_ts>
          <short_desc>Crash (preceded by assertion) in WKCACFLayerRenderer::setNeedsDisplay when computer wakes from sleep on particular page</short_desc>
          <delta_ts>2010-05-18 12:36:15 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, PlatformOnly</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>39297</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Roben (:aroben)">aroben</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cmarrin</cc>
    
    <cc>enrica</cc>
    
    <cc>sfalken</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>sullivan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>227327</commentid>
    <comment_count>0</comment_count>
      <attachid>56382</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-05-18 09:01:37 -0700</bug_when>
    <thetext>Created attachment 56382
testcase (just an auto-reloading version of poster-circle.html)

To reproduce:

1. Load the attached testcase
2. Put your computer to sleep
3. Wake your computer up

You&apos;ll crash inside WKCACFLayerRenderer::setNeedsDisplay due to m_rootLayer being null. Here&apos;s a partial backtrace:

WKCACFLayerRenderer::setNeedsDisplay(void)+0xf
WebView::repaint(class WebCore::IntRect * windowRect = 0x7fb4ad20, bool contentChanged = true, bool immediate = false, bool repaintContentOnly = false)+0x29
WebChromeClient::invalidateContentsAndWindow(class WebCore::IntRect * windowRect = 0x68407b51, bool immediate = false)+0x16
WebCore::ScrollView::repaintContentRectangle(class WebCore::IntRect * rect = 0x7c2ff300, bool now = false)+0x9b
WebCore::FrameView::doDeferredRepaints(void)+0x81
WebCore::FrameView::endDeferredRepaints(void)+0x78
WebCore::FrameView::layout(bool allowSubtree = true)+0x5a2
WebCore::Timer&lt;WebCore::MediaPlayerPrivate&gt;::fired(void)+0xe
WebCore::ThreadTimers::sharedTimerFiredInternal(void)+0xef
WebCore::ThreadTimers::sharedTimerFired(void)+0xe</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227328</commentid>
    <comment_count>1</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-05-18 09:01:58 -0700</bug_when>
    <thetext>&lt;rdar://problem/7971319&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227353</commentid>
    <comment_count>2</comment_count>
      <attachid>56384</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-05-18 09:50:53 -0700</bug_when>
    <thetext>Created attachment 56384
Fix a crash when a page that uses accelerated compositing loads soon after the computer wakes from sleep</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227433</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-05-18 12:36:15 -0700</bug_when>
    <thetext>Committed r59682: &lt;http://trac.webkit.org/changeset/59682&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>56382</attachid>
            <date>2010-05-18 09:01:37 -0700</date>
            <delta_ts>2010-05-18 09:01:37 -0700</delta_ts>
            <desc>testcase (just an auto-reloading version of poster-circle.html)</desc>
            <filename>Poster Circle.html</filename>
            <type>text/html</type>
            <size>5639</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgU3RyaWN0Ly9FTiIK
ICAiaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvc3RyaWN0LmR0ZCI+CjxodG1sPgogIDxoZWFk
PgogICAgPG1ldGEgaHR0cC1lcXVpdj0icmVmcmVzaCIgY29udGVudD0iNSI+CiAgICA8dGl0bGU+
UG9zdGVyIENpcmNsZTwvdGl0bGU+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUi
IGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+CiAgICA8bWV0YSBuYW1lPSJ2aWV3
cG9ydCIgY29udGVudD0iaW5pdGlhbC1zY2FsZT0wLjYwLCBtaW5pbXVtLXNjYWxlPTAuNjAsIG1h
eGltdW0tc2NhbGU9MC42MCI+CiAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoKICAgICAgYm9k
eSB7CiAgICAgICAgZm9udC1mYW1pbHk6ICdMdWNpZGEgR3JhbmRlJywgVmVyZGFuYSwgQXJpYWw7
CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICB9CgogICAgICAjc3RhZ2UgewogICAgICAg
IG1hcmdpbjogMTUwcHggYXV0bzsKICAgICAgICB3aWR0aDogNjAwcHg7CiAgICAgICAgaGVpZ2h0
OiA0MDBweDsKICAgICAgICAvKgogICAgICAgIAogICAgICAgIFNldHRpbmcgdGhlIHBlcnNwZWN0
aXZlIG9mIHRoZSBjb250ZW50cyBvZiB0aGUgc3RhZ2UKICAgICAgICBidXQgbm90IHRoZSBzdGFn
ZSBpdHNlbGYKICAgICAgICAKICAgICAgICAqLwogICAgICAgIC13ZWJraXQtcGVyc3BlY3RpdmU6
IDgwMDsKICAgICAgfQoKICAgICAgI3JvdGF0ZSB7CiAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAg
ICAgICAgd2lkdGg6IDYwMHB4OwogICAgICAgIGhlaWdodDogNDAwcHg7CiAgICAgICAgLyogRW5z
dXJlIHRoYXQgd2UncmUgaW4gM0Qgc3BhY2UgKi8KICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1z
dHlsZTogcHJlc2VydmUtM2Q7CiAgICAgICAgLyoKICAgICAgICBNYWtlIHRoZSB3aG9sZSBzZXQg
b2Ygcm93cyB1c2UgdGhlIHgtYXhpcyBzcGluIGFuaW1hdGlvbgogICAgICAgIGZvciBhIGR1cmF0
aW9uIG9mIDcgc2Vjb25kcywgcnVubmluZyBpbmZpbml0ZWx5IGFuZCBsaW5lYXJseQogICAgICAg
ICovCiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogeC1zcGluOwogICAgICAgIC13ZWJr
aXQtYW5pbWF0aW9uLWR1cmF0aW9uOiA3czsKICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVy
YXRpb24tY291bnQ6IGluZmluaXRlOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1m
dW5jdGlvbjogbGluZWFyOwogICAgICB9CgogICAgICAucmluZyB7CiAgICAgICAgbWFyZ2luOiAw
IGF1dG87CiAgICAgICAgaGVpZ2h0OiAxMTBweDsKICAgICAgICB3aWR0aDogNjAwcHg7CiAgICAg
ICAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOwogICAgICAgIC13ZWJraXQt
YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CiAgICAgICAgLXdlYmtpdC1hbmlt
YXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7CiAgICAgIH0KICAgICAgCiAgICAgIC5yaW5n
ID4gOm50aC1jaGlsZChvZGQpIHsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk1QzdGOwog
ICAgICB9CgogICAgICAucmluZyA+IDpudGgtY2hpbGQoZXZlbikgewogICAgICAgIGJhY2tncm91
bmQtY29sb3I6ICM4MzVBOTk7CiAgICAgIH0KCiAgICAgIC5wb3N0ZXIgewogICAgICAgIHBvc2l0
aW9uOiBhYnNvbHV0ZTsKICAgICAgICBsZWZ0OiAyNTBweDsKICAgICAgICB3aWR0aDogMTAwcHg7
CiAgICAgICAgaGVpZ2h0OiAxMDBweDsKICAgICAgICBvcGFjaXR5OiAwLjc7CiAgICAgICAgY29s
b3I6IHJnYmEoMCwwLDAsMC45KTsKICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7
CiAgICAgIH0KICAgICAgCiAgICAgIC5wb3N0ZXIgPiBwIHsKICAgICAgICBmb250LWZhbWlseTog
J0dlb3JnaWEnLCBzZXJpZjsKICAgICAgICBmb250LXNpemU6IDM2cHg7CiAgICAgICAgZm9udC13
ZWlnaHQ6IGJvbGQ7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIG1hcmdpbi10
b3A6IDI4cHg7CiAgICAgIH0KCiAgICAgIC8qCiAgICAgIFNldCB1cCBlYWNoIHJvdyB0byBoYXZl
IGEgZGlmZmVyZW50IGFuaW1hdGlvbiBkdXJhdGlvbgogICAgICBhbmQgYWx0ZXJuYXRpbmcgeS1h
eGlzIHJvdGF0aW9uIGRpcmVjdGlvbnMuCiAgICAgICovCiAgICAgICNyaW5nLTEgewogICAgICAg
IC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHktc3BpbjsKICAgICAgICAtd2Via2l0LWFuaW1hdGlv
bi1kdXJhdGlvbjogNXM7CiAgICAgIH0KCiAgICAgICNyaW5nLTIgewogICAgICAgIC13ZWJraXQt
YW5pbWF0aW9uLW5hbWU6IGJhY2steS1zcGluOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1
cmF0aW9uOiA0czsKICAgICAgfQoKICAgICAgI3JpbmctMyB7CiAgICAgICAgLXdlYmtpdC1hbmlt
YXRpb24tbmFtZTogeS1zcGluOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAz
czsKICAgICAgfQoKICAgICAgLyoKCiAgICAgIEhlcmUgd2UgZGVmaW5lIGVhY2ggb2YgdGhlIHRo
cmVlIGluZGl2aWR1YWwgYW5pbWF0aW9ucyB0aGF0CiAgICAgIHdlIHdpbGwgYmUgdXNpbmcgdG8g
aGF2ZSBvdXIgM0Qgcm90YXRpb24gZWZmZWN0LiBUaGUgZmlyc3QKICAgICAgYW5pbWF0aW9uIHdp
bGwgcGVyZm9ybSBhIGZ1bGwgcm90YXRpb24gb24gdGhlIHgtYXhpcywgd2UnbGwKICAgICAgdXNl
IHRoYXQgb24gdGhlIHdob2xlIHNldCBvZiBvYmplY3RzLiBUaGUgc2Vjb25kIGFuZCB0aGlyZAog
ICAgICBhbmltYXRpb25zIHdpbGwgcGVyZm9ybSBhIGZ1bGwgcm90YXRpb24gb24gdGhlIHktYXhp
cyBpbgogICAgICBvcHBvc2l0ZSBkaXJlY3Rpb25zLCBhbHRlcm5hdGluZyBkaXJlY3Rpb25zIGJl
dHdlZW4gcm93cy4KICAgIAogICAgICBOb3RlIHRoYXQgeW91IGN1cnJlbnRseSBoYXZlIHRvIHNw
ZWNpZnkgYW4gaW50ZXJtZWRpYXRlIHN0ZXAKICAgICAgZm9yIHJvdGF0aW9ucyBldmVuIHdoZW4g
eW91IGFyZSB1c2luZyBpbmRpdmlkdWFsIHRyYW5zZm9ybWF0aW9uCiAgICAgIGNvbnN0cnVjdHMu
CgogICAgICAqLwogICAgICBALXdlYmtpdC1rZXlmcmFtZXMgeC1zcGluIHsKICAgICAgICAwJSAg
ICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKDBkZWcpOyB9CiAgICAgICAgNTAlICAgeyAt
d2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpOyB9CiAgICAgICAgMTAwJSAgeyAtd2Vi
a2l0LXRyYW5zZm9ybTogcm90YXRlWCgzNjBkZWcpOyB9CiAgICAgIH0KCiAgICAgIEAtd2Via2l0
LWtleWZyYW1lcyB5LXNwaW4gewogICAgICAgIDAlICAgIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJv
dGF0ZVkoMGRlZyk7IH0KICAgICAgICA1MCUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZ
KDE4MGRlZyk7IH0KICAgICAgICAxMDAlICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKDM2
MGRlZyk7IH0KICAgICAgfQoKICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGJhY2steS1zcGluIHsK
ICAgICAgICAwJSAgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKDM2MGRlZyk7IH0KICAg
ICAgICA1MCUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7IH0KICAgICAg
ICAxMDAlICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKDBkZWcpOyB9CiAgICAgIH0KICAg
IDwvc3R5bGU+CgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgoKICAgICAgY29u
c3QgUE9TVEVSU19QRVJfUk9XID0gMTI7CiAgICAgIGNvbnN0IFJJTkdfUkFESVVTID0gMjAwOwoK
ICAgICAgZnVuY3Rpb24gc2V0dXBfcG9zdGVycyAocm93KQogICAgICB7CiAgICAgICAgdmFyIHBv
c3RlckFuZ2xlID0gMzYwIC8gUE9TVEVSU19QRVJfUk9XOwogICAgICAgIGZvciAodmFyIGkgPSAw
OyBpIDwgUE9TVEVSU19QRVJfUk9XOyBpICsrKSB7CiAgICAgICAgICB2YXIgcG9zdGVyID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgICBwb3N0ZXIuY2xhc3NOYW1lID0g
J3Bvc3Rlcic7CiAgICAgICAgICAvLyBjb21wdXRlIGFuZCBhc3NpZ24gdGhlIHRyYW5zZm9ybSBm
b3IgdGhpcyBwb3N0ZXIKICAgICAgICAgIHZhciB0cmFuc2Zvcm0gPSAncm90YXRlWSgnICsgKHBv
c3RlckFuZ2xlICogaSkgKyAnZGVnKSB0cmFuc2xhdGVaKCcgKyBSSU5HX1JBRElVUyArICdweCkn
OwogICAgICAgICAgcG9zdGVyLnN0eWxlLndlYmtpdFRyYW5zZm9ybSA9IHRyYW5zZm9ybTsKICAg
ICAgICAgIC8vIHNldHVwIHRoZSBudW1iZXIgdG8gc2hvdyBpbnNpZGUgdGhlIHBvc3RlcgogICAg
ICAgICAgdmFyIGNvbnRlbnQgPSBwb3N0ZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgncCcpKTsKICAgICAgICAgIGNvbnRlbnQudGV4dENvbnRlbnQgPSBpOwogICAgICAgICAg
Ly8gYWRkIHRoZSBwb3N0ZXIgdG8gdGhlIHJvdwogICAgICAgICAgcm93LmFwcGVuZENoaWxkKHBv
c3Rlcik7CiAgICAgICAgfQoKICAgICAgfQoKICAgICAgZnVuY3Rpb24gaW5pdCAoKQogICAgICB7
CiAgICAgICAgc2V0dXBfcG9zdGVycyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmluZy0xJykp
OwogICAgICAgIHNldHVwX3Bvc3RlcnMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JpbmctMicp
KTsKICAgICAgICBzZXR1cF9wb3N0ZXJzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyaW5nLTMn
KSk7CiAgICAgIH0KCiAgICAgIC8vIGNhbGwgaW5pdCBvbmNlIHRoZSBkb2N1bWVudCBpcyBmdWxs
eSBsb2FkZWQKICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBpbml0LCBmYWxz
ZSk7CgogICAgPC9zY3JpcHQ+CiAgPC9oZWFkPgogIAogIDxib2R5PgoKICAgIDxoMT5Qb3N0ZXIg
Q2lyY2xlPC9oMT4KICAgIDxwPlRoaXMgaXMgYSBzaW1wbGUgZXhhbXBsZSBvZiBob3cgdG8gdXNl
IENTUyB0cmFuc2Zvcm1hdGlvbiBhbmQgYW5pbWF0aW9ucyB0byBnZXQgaW50ZXJlc3RpbmctbG9v
a2luZyBiZWhhdmlvci48L3A+CiAgICA8cD5UaGUgdGhyZWUgcmluZ3MgYXJlIGNvbnN0cnVjdGVk
IHVzaW5nIGEgc2ltcGxlIEphdmFTY3JpcHQgZnVuY3Rpb24gdGhhdCBjcmVhdGVzIGVsZW1lbnRz
IGFuZCBhc3NpZ25zIHRoZW0gYSB0cmFuc2Zvcm0KICAgICAgdGhhdCBkZXNjcmliZXMgdGhlaXIg
cG9zaXRpb24gaW4gdGhlIHJpbmcuIENTUyBhbmltYXRpb25zIGFyZSB0aGVuIHVzZWQgdG8gcm90
YXRlIGVhY2ggcmluZywgYW5kIHRvIHNwaW4gdGhlIGNvbnRhaW5pbmcKICAgICAgZWxlbWVudCBh
cm91bmQgdG9vLjwvcD4KICAgIDxwPk5vdGUgdGhhdCB5b3UgY2FuIHN0aWxsIHNlbGVjdCB0aGUg
bnVtYmVycyBvbiB0aGUgcmluZzsgZXZlcnl0aGluZyByZW1haW5zIGNsaWNrYWJsZS48L3A+CiAg
ICA8ZGl2IGlkPSJzdGFnZSI+CiAgICAgIDxkaXYgaWQ9InJvdGF0ZSI+CiAgICAgICAgPGRpdiBp
ZD0icmluZy0xIiBjbGFzcz0icmluZyI+PC9kaXY+CiAgICAgICAgPGRpdiBpZD0icmluZy0yIiBj
bGFzcz0icmluZyI+PC9kaXY+CiAgICAgICAgPGRpdiBpZD0icmluZy0zIiBjbGFzcz0icmluZyI+
PC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogIDwvYm9keT4KICAKPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56384</attachid>
            <date>2010-05-18 09:50:53 -0700</date>
            <delta_ts>2010-05-18 11:16:25 -0700</delta_ts>
            <desc>Fix a crash when a page that uses accelerated compositing loads soon after the computer wakes from sleep</desc>
            <filename>bug-39295-20100518125052.patch</filename>
            <type>text/plain</type>
            <size>13377</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
OGUzZjg3ZTIxMzM0N2E2OTU1MTg3ZjdkNzRjNDY5ODBjZTQxOTc1Zi4uNzNlNjI2NTJlY2Y3MGUx
ODBkOTU3MWYyNDUyY2I0YzgzNWNiZWUxOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsNSArMSw1NSBAQAogMjAxMC0wNS0xOCAgQWRh
bSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CiAKKyAgICAgICAgRml4IGEgY3Jhc2ggd2hlbiBh
IHBhZ2UgdGhhdCB1c2VzIGFjY2VsZXJhdGVkIGNvbXBvc2l0aW5nIGxvYWRzIHNvb24KKyAgICAg
ICAgYWZ0ZXIgdGhlIGNvbXB1dGVyIHdha2VzIGZyb20gc2xlZXAKKworICAgICAgICBUaGUgc2V0
LXVwOgorCisgICAgICAgIEZvciBhIHNob3J0IHRpbWUgYWZ0ZXIgd2FraW5nIGZyb20gc2xlZXAs
IElEaXJlY3QzRDk6OkNyZWF0ZURldmljZQorICAgICAgICB3aWxsIGZhaWwuIFRoaXMgY2F1c2Vk
IFdLQ0FDRkxheWVyUmVuZGVyZXI6OmNyZWF0ZVJlbmRlcmVyIHRvIGZhaWwsCisgICAgICAgIGFu
ZCBtZWFudCB0aGF0IFdLQ0FDRkxheWVyUmVuZGVyZXIgbmV2ZXIgYWxsb2NhdGVkIGEgcm9vdCBs
YXllci4KKyAgICAgICAgV2ViVmlldyB3b3VsZG4ndCBub3RpY2UgdGhhdCBjcmVhdGVSZW5kZXJl
ciBmYWlsZWQsIGFuZCB3b3VsZCBnbyBhaGVhZAorICAgICAgICBhbmQgdHJ5IHRvIHVzZSB0aGUg
cm9vdCBsYXllciBhbnl3YXksIHJlc3VsdGluZyBpbiBhIGNyYXNoLgorCisgICAgICAgIFRoZSBm
aXg6CisKKyAgICAgICAgV2Ugbm93IGFsbG9jYXRlIHRoZSByb290IGxheWVyIChhbmQgYWxsIHRo
ZSBvdGhlciBtZW1iZXJzIG9mCisgICAgICAgIFdLQ0FDRkxheWVyUmVuZGVyZXIgdGhhdCBhcmVu
J3QgZGVwZW5kZW50IG9uIGhhdmluZyBhbgorICAgICAgICBJRGlyZWN0M0REZXZpY2U5KSBpbiBX
S0NBQ0ZMYXllclJlbmRlcmVyJ3MgY29uc3RydWN0b3IuIFRoaXMgd2F5IHRoZQorICAgICAgICBs
YXllcnMgd2lsbCBhbHdheXMgYmUgcHJlc2VudCwgZXZlbiB3aGVuIGNyZWF0aW5nIHRoZSBEM0Qg
ZGV2aWNlCisgICAgICAgIGZhaWxzLgorCisgICAgICAgIFRoZXJlIGFyZSB0d28gcmVtYWluaW5n
IHByb2JsZW1zOgorICAgICAgICAgIDEpIFRoaXMgcmVzdWx0cyBpbiBzbGlnaHRseSBtb3JlIG1l
bW9yeSB1c2FnZSBpbiB0aGUgY2FzZSB3aGVyZQorICAgICAgICAgICAgIENyZWF0ZURldmljZSBm
YWlscy4KKyAgICAgICAgICAyKSBPbmNlIHdlIGdldCBpbnRvIHRoaXMgYmFkIHN0YXRlLCB0aGUg
V2ViVmlldyBkb2Vzbid0IHJlcGFpbnQKKyAgICAgICAgICAgICB1bnRpbCB3ZSBuYXZpZ2F0ZSBz
b21ld2hlcmUgZWxzZS4KKworICAgICAgICAoMikgaXMgY292ZXJlZCBieQorICAgICAgICA8aHR0
cDovL3dlYmtpdC5vcmcvYi8zOTI5Nz4vPHJkYXI6Ly9wcm9ibGVtLzc5OTc0MzE+LiBXZSdsbCBm
aXggaXQgYnkKKyAgICAgICAgcmV0cnlpbmcgQ3JlYXRlRGV2aWNlIGxhdGVyIGluIGhvcGVzIHRo
YXQgaXQgd2lsbCBzdWNjZWVkIGFmdGVyIG1vcmUKKyAgICAgICAgdGltZSBoYXMgcGFzc2VkLiBU
aGlzIHdpbGwgaW4gdHVybiBmaXggKDEpLiAoV2Ugc2hvdWxkIG5ldmVyIGVuZCB1cCBpbgorICAg
ICAgICBhIGNhc2Ugd2hlcmUgQ3JlYXRlRGV2aWNlIGZhaWxzIGZvcmV2ZXIgYmVjYXVzZSB3ZSBh
bHJlYWR5IGRpZCBzb21lCisgICAgICAgIHByZWxpbWluYXJ5IGNoZWNrcyBpbiBhY2NlbGVyYXRl
ZENvbXBvc2l0aW5nQXZhaWxhYmxlKCkuKQorCisgICAgICAgIEZpeGVzIDxodHRwOi8vd2Via2l0
Lm9yZy9iLzM5Mjk1PiA8cmRhcjovL3Byb2JsZW0vNzk3MTMxOT4gQ3Jhc2gKKyAgICAgICAgKHBy
ZWNlZGVkIGJ5IGFzc2VydGlvbikgaW4gV0tDQUNGTGF5ZXJSZW5kZXJlcjo6c2V0TmVlZHNEaXNw
bGF5IHdoZW4KKyAgICAgICAgY29tcHV0ZXIgd2FrZXMgZnJvbSBzbGVlcCBvbiBwYXJ0aWN1bGFy
IHBhZ2UKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IG1hbnVhbC10ZXN0cy9jcmFzaC1hZnRlci13YWtlLWZyb20tc2xlZXAuaHRtbDogQWRkZWQuIFRo
aXMKKyAgICAgICAgaXMgdGhlIFBvc3RlciBDaXJjbGUgZGVtbyBmcm9tIHdlYmtpdC5vcmcvYmxv
ZywgYnV0IG1vZGlmaWVkIHRvCisgICAgICAgIGF1dG9tYXRpY2FsbHkgcmVsb2FkIGV2ZXJ5IDUg
c2Vjb25kcyBhbmQgd2l0aCBpbnN0cnVjdGlvbnMgdG8gcHV0IHRoZQorICAgICAgICBjb21wdXRl
ciB0byBzbGVlcCBhbmQgd2FrZSBpdCB1cCBhZ2Fpbi4KKworICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL3dpbi9XS0NBQ0ZMYXllclJlbmRlcmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldL
Q0FDRkxheWVyUmVuZGVyZXI6OldLQ0FDRkxheWVyUmVuZGVyZXIpOiBNb3ZlZCBjb2RlIHRvCisg
ICAgICAgIGluaXRpYWxpemUgbV9jb250ZXh0LCBtX3JlbmRlckNvbnRleHQsIGFuZCBtXypMYXll
ciBoZXJlLi4uCisgICAgICAgIChXZWJDb3JlOjpXS0NBQ0ZMYXllclJlbmRlcmVyOjpjcmVhdGVS
ZW5kZXJlcik6IC4uLmZyb20gaGVyZS4KKworMjAxMC0wNS0xOCAgQWRhbSBSb2JlbiAgPGFyb2Jl
bkBhcHBsZS5jb20+CisKICAgICAgICAgUmVtb3ZlIGFuIHVudXNlZCBtZW1iZXIgdmFyaWFibGUg
ZnJvbSBXS0NBQ0ZMYXllclJlbmRlcmVyCiAKICAgICAgICAgUnViYmVyLXN0YW1wZWQgYnkgQWRh
IENoYW4uCmRpZmYgLS1naXQgYS9XZWJDb3JlL21hbnVhbC10ZXN0cy9jcmFzaC1hZnRlci13YWtl
LWZyb20tc2xlZXAuaHRtbCBiL1dlYkNvcmUvbWFudWFsLXRlc3RzL2NyYXNoLWFmdGVyLXdha2Ut
ZnJvbS1zbGVlcC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFlOGNhYjM1ZjlkOTVjNDBlYWNmYzFmMzdmN2Y2
YTJhZWJhYzQ2M2UKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL21hbnVhbC10ZXN0cy9jcmFz
aC1hZnRlci13YWtlLWZyb20tc2xlZXAuaHRtbApAQCAtMCwwICsxLDE4NCBAQAorPCFET0NUWVBF
IEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgU3RyaWN0Ly9FTiIKKyAgImh0dHA6
Ly93d3cudzMub3JnL1RSL2h0bWw0L3N0cmljdC5kdGQiPgorPGh0bWw+CisgIDxoZWFkPgorICAg
IDx0aXRsZT5UZXN0IGZvciBCdWcgMzkyOTU8L3RpdGxlPgorICAgIDxtZXRhIGh0dHAtZXF1aXY9
InJlZnJlc2giIGNvbnRlbnQ9IjUiPgorICAgIDxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlw
ZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4KKyAgICA8bWV0YSBuYW1lPSJ2
aWV3cG9ydCIgY29udGVudD0iaW5pdGlhbC1zY2FsZT0wLjYwLCBtaW5pbXVtLXNjYWxlPTAuNjAs
IG1heGltdW0tc2NhbGU9MC42MCI+CisgICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKworICAg
ICAgYm9keSB7CisgICAgICAgIGZvbnQtZmFtaWx5OiAnTHVjaWRhIEdyYW5kZScsIFZlcmRhbmEs
IEFyaWFsOworICAgICAgICBmb250LXNpemU6IDEycHg7CisgICAgICB9CisKKyAgICAgICNzdGFn
ZSB7CisgICAgICAgIG1hcmdpbjogMTUwcHggYXV0bzsKKyAgICAgICAgd2lkdGg6IDYwMHB4Owor
ICAgICAgICBoZWlnaHQ6IDQwMHB4OworICAgICAgICAvKgorICAgICAgICAKKyAgICAgICAgU2V0
dGluZyB0aGUgcGVyc3BlY3RpdmUgb2YgdGhlIGNvbnRlbnRzIG9mIHRoZSBzdGFnZQorICAgICAg
ICBidXQgbm90IHRoZSBzdGFnZSBpdHNlbGYKKyAgICAgICAgCisgICAgICAgICovCisgICAgICAg
IC13ZWJraXQtcGVyc3BlY3RpdmU6IDgwMDsKKyAgICAgIH0KKworICAgICAgI3JvdGF0ZSB7Cisg
ICAgICAgIG1hcmdpbjogMCBhdXRvOworICAgICAgICB3aWR0aDogNjAwcHg7CisgICAgICAgIGhl
aWdodDogNDAwcHg7CisgICAgICAgIC8qIEVuc3VyZSB0aGF0IHdlJ3JlIGluIDNEIHNwYWNlICov
CisgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsKKyAgICAgICAg
LyoKKyAgICAgICAgTWFrZSB0aGUgd2hvbGUgc2V0IG9mIHJvd3MgdXNlIHRoZSB4LWF4aXMgc3Bp
biBhbmltYXRpb24KKyAgICAgICAgZm9yIGEgZHVyYXRpb24gb2YgNyBzZWNvbmRzLCBydW5uaW5n
IGluZmluaXRlbHkgYW5kIGxpbmVhcmx5CisgICAgICAgICovCisgICAgICAgIC13ZWJraXQtYW5p
bWF0aW9uLW5hbWU6IHgtc3BpbjsKKyAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246
IDdzOworICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRl
OworICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsKKyAg
ICAgIH0KKworICAgICAgLnJpbmcgeworICAgICAgICBtYXJnaW46IDAgYXV0bzsKKyAgICAgICAg
aGVpZ2h0OiAxMTBweDsKKyAgICAgICAgd2lkdGg6IDYwMHB4OworICAgICAgICAtd2Via2l0LXRy
YW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7CisgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0
ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7CisgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWlu
Zy1mdW5jdGlvbjogbGluZWFyOworICAgICAgfQorICAgICAgCisgICAgICAucmluZyA+IDpudGgt
Y2hpbGQob2RkKSB7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTVDN0Y7CisgICAgICB9
CisKKyAgICAgIC5yaW5nID4gOm50aC1jaGlsZChldmVuKSB7CisgICAgICAgIGJhY2tncm91bmQt
Y29sb3I6ICM4MzVBOTk7CisgICAgICB9CisKKyAgICAgIC5wb3N0ZXIgeworICAgICAgICBwb3Np
dGlvbjogYWJzb2x1dGU7CisgICAgICAgIGxlZnQ6IDI1MHB4OworICAgICAgICB3aWR0aDogMTAw
cHg7CisgICAgICAgIGhlaWdodDogMTAwcHg7CisgICAgICAgIG9wYWNpdHk6IDAuNzsKKyAgICAg
ICAgY29sb3I6IHJnYmEoMCwwLDAsMC45KTsKKyAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVz
OiAxMHB4OworICAgICAgfQorICAgICAgCisgICAgICAucG9zdGVyID4gcCB7CisgICAgICAgIGZv
bnQtZmFtaWx5OiAnR2VvcmdpYScsIHNlcmlmOworICAgICAgICBmb250LXNpemU6IDM2cHg7Cisg
ICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7Cisg
ICAgICAgIG1hcmdpbi10b3A6IDI4cHg7CisgICAgICB9CisKKyAgICAgIC8qCisgICAgICBTZXQg
dXAgZWFjaCByb3cgdG8gaGF2ZSBhIGRpZmZlcmVudCBhbmltYXRpb24gZHVyYXRpb24KKyAgICAg
IGFuZCBhbHRlcm5hdGluZyB5LWF4aXMgcm90YXRpb24gZGlyZWN0aW9ucy4KKyAgICAgICovCisg
ICAgICAjcmluZy0xIHsKKyAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogeS1zcGluOwor
ICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogNXM7CisgICAgICB9CisKKyAgICAg
ICNyaW5nLTIgeworICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBiYWNrLXktc3BpbjsK
KyAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDRzOworICAgICAgfQorCisgICAg
ICAjcmluZy0zIHsKKyAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogeS1zcGluOworICAg
ICAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogM3M7CisgICAgICB9CisKKyAgICAgIC8q
CisKKyAgICAgIEhlcmUgd2UgZGVmaW5lIGVhY2ggb2YgdGhlIHRocmVlIGluZGl2aWR1YWwgYW5p
bWF0aW9ucyB0aGF0CisgICAgICB3ZSB3aWxsIGJlIHVzaW5nIHRvIGhhdmUgb3VyIDNEIHJvdGF0
aW9uIGVmZmVjdC4gVGhlIGZpcnN0CisgICAgICBhbmltYXRpb24gd2lsbCBwZXJmb3JtIGEgZnVs
bCByb3RhdGlvbiBvbiB0aGUgeC1heGlzLCB3ZSdsbAorICAgICAgdXNlIHRoYXQgb24gdGhlIHdo
b2xlIHNldCBvZiBvYmplY3RzLiBUaGUgc2Vjb25kIGFuZCB0aGlyZAorICAgICAgYW5pbWF0aW9u
cyB3aWxsIHBlcmZvcm0gYSBmdWxsIHJvdGF0aW9uIG9uIHRoZSB5LWF4aXMgaW4KKyAgICAgIG9w
cG9zaXRlIGRpcmVjdGlvbnMsIGFsdGVybmF0aW5nIGRpcmVjdGlvbnMgYmV0d2VlbiByb3dzLgor
ICAgIAorICAgICAgTm90ZSB0aGF0IHlvdSBjdXJyZW50bHkgaGF2ZSB0byBzcGVjaWZ5IGFuIGlu
dGVybWVkaWF0ZSBzdGVwCisgICAgICBmb3Igcm90YXRpb25zIGV2ZW4gd2hlbiB5b3UgYXJlIHVz
aW5nIGluZGl2aWR1YWwgdHJhbnNmb3JtYXRpb24KKyAgICAgIGNvbnN0cnVjdHMuCisKKyAgICAg
ICovCisgICAgICBALXdlYmtpdC1rZXlmcmFtZXMgeC1zcGluIHsKKyAgICAgICAgMCUgICAgeyAt
d2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgwZGVnKTsgfQorICAgICAgICA1MCUgICB7IC13ZWJr
aXQtdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7IH0KKyAgICAgICAgMTAwJSAgeyAtd2Via2l0
LXRyYW5zZm9ybTogcm90YXRlWCgzNjBkZWcpOyB9CisgICAgICB9CisKKyAgICAgIEAtd2Via2l0
LWtleWZyYW1lcyB5LXNwaW4geworICAgICAgICAwJSAgICB7IC13ZWJraXQtdHJhbnNmb3JtOiBy
b3RhdGVZKDBkZWcpOyB9CisgICAgICAgIDUwJSAgIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0
ZVkoMTgwZGVnKTsgfQorICAgICAgICAxMDAlICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZ
KDM2MGRlZyk7IH0KKyAgICAgIH0KKworICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIGJhY2steS1z
cGluIHsKKyAgICAgICAgMCUgICAgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgzNjBkZWcp
OyB9CisgICAgICAgIDUwJSAgIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTsg
fQorICAgICAgICAxMDAlICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKDBkZWcpOyB9Cisg
ICAgICB9CisgICAgPC9zdHlsZT4KKworICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0
Ij4KKworICAgICAgY29uc3QgUE9TVEVSU19QRVJfUk9XID0gMTI7CisgICAgICBjb25zdCBSSU5H
X1JBRElVUyA9IDIwMDsKKworICAgICAgZnVuY3Rpb24gc2V0dXBfcG9zdGVycyAocm93KQorICAg
ICAgeworICAgICAgICB2YXIgcG9zdGVyQW5nbGUgPSAzNjAgLyBQT1NURVJTX1BFUl9ST1c7Cisg
ICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgUE9TVEVSU19QRVJfUk9XOyBpICsrKSB7CisgICAg
ICAgICAgdmFyIHBvc3RlciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworICAgICAg
ICAgIHBvc3Rlci5jbGFzc05hbWUgPSAncG9zdGVyJzsKKyAgICAgICAgICAvLyBjb21wdXRlIGFu
ZCBhc3NpZ24gdGhlIHRyYW5zZm9ybSBmb3IgdGhpcyBwb3N0ZXIKKyAgICAgICAgICB2YXIgdHJh
bnNmb3JtID0gJ3JvdGF0ZVkoJyArIChwb3N0ZXJBbmdsZSAqIGkpICsgJ2RlZykgdHJhbnNsYXRl
WignICsgUklOR19SQURJVVMgKyAncHgpJzsKKyAgICAgICAgICBwb3N0ZXIuc3R5bGUud2Via2l0
VHJhbnNmb3JtID0gdHJhbnNmb3JtOworICAgICAgICAgIC8vIHNldHVwIHRoZSBudW1iZXIgdG8g
c2hvdyBpbnNpZGUgdGhlIHBvc3RlcgorICAgICAgICAgIHZhciBjb250ZW50ID0gcG9zdGVyLmFw
cGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3AnKSk7CisgICAgICAgICAgY29udGVu
dC50ZXh0Q29udGVudCA9IGk7CisgICAgICAgICAgLy8gYWRkIHRoZSBwb3N0ZXIgdG8gdGhlIHJv
dworICAgICAgICAgIHJvdy5hcHBlbmRDaGlsZChwb3N0ZXIpOworICAgICAgICB9CisKKyAgICAg
IH0KKworICAgICAgZnVuY3Rpb24gaW5pdCAoKQorICAgICAgeworICAgICAgICBzZXR1cF9wb3N0
ZXJzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyaW5nLTEnKSk7CisgICAgICAgIHNldHVwX3Bv
c3RlcnMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JpbmctMicpKTsKKyAgICAgICAgc2V0dXBf
cG9zdGVycyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmluZy0zJykpOworICAgICAgfQorCisg
ICAgICAvLyBjYWxsIGluaXQgb25jZSB0aGUgZG9jdW1lbnQgaXMgZnVsbHkgbG9hZGVkCisgICAg
ICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGluaXQsIGZhbHNlKTsKKworICAgIDwv
c2NyaXB0PgorICA8L2hlYWQ+CisgIAorICA8Ym9keT4KKworICAgIDxwPlRoaXMgaXMgYSB0ZXN0
IGZvciA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzky
OTUiPkJ1ZyAzOTEzOTogQ3Jhc2gKKyAgICAocHJlY2VkZWQgYnkgYXNzZXJ0aW9uKSBpbiBXS0NB
Q0ZMYXllclJlbmRlcmVyOjpzZXROZWVkc0Rpc3BsYXkgd2hlbiBjb21wdXRlciB3YWtlcyBmcm9t
IHNsZWVwCisgICAgb24gcGFydGljdWxhciBwYWdlPC9hPi4gVG8gdGVzdCwgcHV0IHlvdXIgY29t
cHV0ZXIgdG8gc2xlZXAgKG9yICJTdGFuZGJ5IiwgYXMgV2luZG93cyBjYWxscyBpdCkuCisgICAg
V2hlbiB5b3Ugd2FrZSB5b3VyIGNvbXB1dGVyIHVwLCB0aGUgYnJvd3NlciBzaG91bGQgbm90IGNy
YXNoLjwvcD4KKyAgICA8ZGl2IGlkPSJzdGFnZSI+CisgICAgICA8ZGl2IGlkPSJyb3RhdGUiPgor
ICAgICAgICA8ZGl2IGlkPSJyaW5nLTEiIGNsYXNzPSJyaW5nIj48L2Rpdj4KKyAgICAgICAgPGRp
diBpZD0icmluZy0yIiBjbGFzcz0icmluZyI+PC9kaXY+CisgICAgICAgIDxkaXYgaWQ9InJpbmct
MyIgY2xhc3M9InJpbmciPjwvZGl2PgorICAgICAgPC9kaXY+CisgICAgPC9kaXY+CisKKyAgPC9i
b2R5PgorICAKKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
d2luL1dLQ0FDRkxheWVyUmVuZGVyZXIuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93
aW4vV0tDQUNGTGF5ZXJSZW5kZXJlci5jcHAKaW5kZXggOTk0ZDA3OWViYmJiNWEyNWYxODg1NjAw
ODk4N2FjZDYzYjc5YjYzMy4uYTJhNmE1NzQ3NTIwZjYxZGJlYzEwZTlhNDMwMDQxMGExYmY3OWZm
YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vV0tDQUNGTGF5ZXJS
ZW5kZXJlci5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vV0tDQUNGTGF5
ZXJSZW5kZXJlci5jcHAKQEAgLTIyNCw3ICsyMjQsMTEgQEAgUGFzc093blB0cjxXS0NBQ0ZMYXll
clJlbmRlcmVyPiBXS0NBQ0ZMYXllclJlbmRlcmVyOjpjcmVhdGUoKQogCiBXS0NBQ0ZMYXllclJl
bmRlcmVyOjpXS0NBQ0ZMYXllclJlbmRlcmVyKCkKICAgICA6IG1fdHJpZWRUb0NyZWF0ZUQzRFJl
bmRlcmVyKGZhbHNlKQotICAgICwgbV9yZW5kZXJDb250ZXh0KDApCisgICAgLCBtX3Jvb3RMYXll
cihXS0NBQ0ZSb290TGF5ZXI6OmNyZWF0ZSh0aGlzKSkKKyAgICAsIG1fc2Nyb2xsTGF5ZXIoV0tD
QUNGTGF5ZXI6OmNyZWF0ZShXS0NBQ0ZMYXllcjo6TGF5ZXIpKQorICAgICwgbV9jbGlwTGF5ZXIo
V0tDQUNGTGF5ZXI6OmNyZWF0ZShXS0NBQ0ZMYXllcjo6TGF5ZXIpKQorICAgICwgbV9jb250ZXh0
KEFkb3B0Q0YsIENBQ0ZDb250ZXh0Q3JlYXRlKDApKQorICAgICwgbV9yZW5kZXJDb250ZXh0KHN0
YXRpY19jYXN0PENBUmVuZGVyQ29udGV4dCo+KENBQ0ZDb250ZXh0R2V0UmVuZGVyQ29udGV4dCht
X2NvbnRleHQuZ2V0KCkpKSkKICAgICAsIG1fcmVuZGVyZXIoMCkKICAgICAsIG1faG9zdFdpbmRv
dygwKQogICAgICwgbV9yZW5kZXJUaW1lcih0aGlzLCAmV0tDQUNGTGF5ZXJSZW5kZXJlcjo6cmVu
ZGVyVGltZXJGaXJlZCkKQEAgLTIzMyw2ICsyMzcsMzYgQEAgV0tDQUNGTGF5ZXJSZW5kZXJlcjo6
V0tDQUNGTGF5ZXJSZW5kZXJlcigpCiAgICAgLCBtX2JhY2tpbmdTdG9yZURpcnR5KGZhbHNlKQog
ICAgICwgbV9tdXN0UmVzZXRMb3N0RGV2aWNlQmVmb3JlUmVuZGVyaW5nKGZhbHNlKQogeworICAg
IHdpbmRvd3NGb3JDb250ZXh0cygpLnNldChtX2NvbnRleHQuZ2V0KCksIHRoaXMpOworCisgICAg
Ly8gVW5kZXIgdGhlIHJvb3QgbGF5ZXIsIHdlIGhhdmUgYSBjbGlwcGluZyBsYXllciB0byBjbGlw
IHRoZSBjb250ZW50LAorICAgIC8vIHRoYXQgY29udGFpbnMgYSBzY3JvbGwgbGF5ZXIgdGhhdCB3
ZSB1c2UgZm9yIHNjcm9sbGluZyB0aGUgY29udGVudC4KKyAgICAvLyBUaGUgcm9vdCBsYXllciBp
cyB0aGUgc2l6ZSBvZiB0aGUgY2xpZW50IGFyZWEgb2YgdGhlIHdpbmRvdy4KKyAgICAvLyBUaGUg
Y2xpcHBpbmcgbGF5ZXIgaXMgdGhlIHNpemUgb2YgdGhlIFdlYlZpZXcgY2xpZW50IGFyZWEgKHdp
bmRvdyBsZXNzIHRoZSBzY3JvbGxiYXJzKS4KKyAgICAvLyBUaGUgc2Nyb2xsIGxheWVyIGlzIHRo
ZSBzaXplIG9mIHRoZSByb290IGNoaWxkIGxheWVyLgorICAgIC8vIFJlc2l6aW5nIHRoZSB3aW5k
b3cgd2lsbCBjaGFuZ2UgdGhlIGJvdW5kcyBvZiB0aGUgcm9vdExheWVyIGFuZCB0aGUgY2xpcCBs
YXllciBhbmQgd2lsbCBub3QKKyAgICAvLyBjYXVzZSBhbnkgcmVwb3NpdGlvbmluZy4KKyAgICAv
LyBTY3JvbGxpbmcgd2lsbCBhZmZlY3Qgb25seSB0aGUgcG9zaXRpb24gb2YgdGhlIHNjcm9sbCBs
YXllciB3aXRob3V0IGFmZmVjdGluZyB0aGUgYm91bmRzLgorCisgICAgbV9yb290TGF5ZXItPnNl
dE5hbWUoIldLQ0FDRkxheWVyUmVuZGVyZXIgcm9vdExheWVyIik7CisgICAgbV9jbGlwTGF5ZXIt
PnNldE5hbWUoIldLQ0FDRkxheWVyUmVuZGVyZXIgY2xpcExheWVyIik7CisgICAgbV9zY3JvbGxM
YXllci0+c2V0TmFtZSgiV0tDQUNGTGF5ZXJSZW5kZXJlciBzY3JvbGxMYXllciIpOworCisgICAg
bV9yb290TGF5ZXItPmFkZFN1YmxheWVyKG1fY2xpcExheWVyKTsKKyAgICBtX2NsaXBMYXllci0+
YWRkU3VibGF5ZXIobV9zY3JvbGxMYXllcik7CisgICAgbV9jbGlwTGF5ZXItPnNldE1hc2tzVG9C
b3VuZHModHJ1ZSk7CisgICAgbV9zY3JvbGxMYXllci0+c2V0QW5jaG9yUG9pbnQoQ0dQb2ludE1h
a2UoMCwgMSkpOworICAgIG1fY2xpcExheWVyLT5zZXRBbmNob3JQb2ludChDR1BvaW50TWFrZSgw
LCAxKSk7CisKKyNpZm5kZWYgTkRFQlVHCisgICAgQ0dDb2xvclJlZiBkZWJ1Z0NvbG9yID0gY3Jl
YXRlQ0dDb2xvcihDb2xvcigyNTUsIDAsIDAsIDIwNCkpOworICAgIG1fcm9vdExheWVyLT5zZXRC
YWNrZ3JvdW5kQ29sb3IoZGVidWdDb2xvcik7CisgICAgQ0dDb2xvclJlbGVhc2UoZGVidWdDb2xv
cik7CisjZW5kaWYKKworICAgIGlmIChtX2NvbnRleHQpCisgICAgICAgIG1fcm9vdExheWVyLT5i
ZWNvbWVSb290TGF5ZXJGb3JDb250ZXh0KG1fY29udGV4dC5nZXQoKSk7CisKICNpZm5kZWYgTkRF
QlVHCiAgICAgY2hhciogcHJpbnRUcmVlRmxhZyA9IGdldGVudigiQ0FfUFJJTlRfVFJFRSIpOwog
ICAgIG1fcHJpbnRUcmVlID0gcHJpbnRUcmVlRmxhZyAmJiBhdG9pKHByaW50VHJlZUZsYWcpOwpA
QCAtMzQ5LDQ5ICszODMsMTEgQEAgYm9vbCBXS0NBQ0ZMYXllclJlbmRlcmVyOjpjcmVhdGVSZW5k
ZXJlcigpCiAKICAgICBtX2QzZERldmljZS0+U2V0VHJhbnNmb3JtKEQzRFRTX1BST0pFQ1RJT04s
ICZwcm9qZWN0aW9uKTsKIAotICAgIG1fY29udGV4dC5hZG9wdENGKENBQ0ZDb250ZXh0Q3JlYXRl
KDApKTsKLSAgICB3aW5kb3dzRm9yQ29udGV4dHMoKS5zZXQobV9jb250ZXh0LmdldCgpLCB0aGlz
KTsKLQotICAgIG1fcmVuZGVyQ29udGV4dCA9IHN0YXRpY19jYXN0PENBUmVuZGVyQ29udGV4dCo+
KENBQ0ZDb250ZXh0R2V0UmVuZGVyQ29udGV4dChtX2NvbnRleHQuZ2V0KCkpKTsKICAgICBtX3Jl
bmRlcmVyID0gQ0FSZW5kZXJPR0xOZXcoJmtDQVJlbmRlckRYOUNhbGxiYWNrcywgbV9kM2REZXZp
Y2UuZ2V0KCksIDApOwogCi0gICAgLy8gQ3JlYXRlIHRoZSByb290IGhpZXJhcmNoeS4KLSAgICAv
LyBVbmRlciB0aGUgcm9vdCBsYXllciwgd2UgaGF2ZSBhIGNsaXBwaW5nIGxheWVyIHRvIGNsaXAg
dGhlIGNvbnRlbnQsCi0gICAgLy8gdGhhdCBjb250YWlucyBhIHNjcm9sbCBsYXllciB0aGF0IHdl
IHVzZSBmb3Igc2Nyb2xsaW5nIHRoZSBjb250ZW50LgotICAgIC8vIFRoZSByb290IGxheWVyIGlz
IHRoZSBzaXplIG9mIHRoZSBjbGllbnQgYXJlYSBvZiB0aGUgd2luZG93LgotICAgIC8vIFRoZSBj
bGlwcGluZyBsYXllciBpcyB0aGUgc2l6ZSBvZiB0aGUgV2ViVmlldyBjbGllbnQgYXJlYSAod2lu
ZG93IGxlc3MgdGhlIHNjcm9sbGJhcnMpLgotICAgIC8vIFRoZSBzY3JvbGwgbGF5ZXIgaXMgdGhl
IHNpemUgb2YgdGhlIHJvb3QgY2hpbGQgbGF5ZXIuCi0gICAgLy8gUmVzaXppbmcgdGhlIHdpbmRv
dyB3aWxsIGNoYW5nZSB0aGUgYm91bmRzIG9mIHRoZSByb290TGF5ZXIgYW5kIHRoZSBjbGlwIGxh
eWVyIGFuZCB3aWxsIG5vdAotICAgIC8vIGNhdXNlIGFueSByZXBvc2l0aW9uaW5nLgotICAgIC8v
IFNjcm9sbGluZyB3aWxsIGFmZmVjdCBvbmx5IHRoZSBwb3NpdGlvbiBvZiB0aGUgc2Nyb2xsIGxh
eWVyIHdpdGhvdXQgYWZmZWN0aW5nIHRoZSBib3VuZHMuCi0KLSAgICBtX3Jvb3RMYXllciA9IFdL
Q0FDRlJvb3RMYXllcjo6Y3JlYXRlKHRoaXMpOwotICAgIG1fcm9vdExheWVyLT5zZXROYW1lKCJX
S0NBQ0ZMYXllclJlbmRlcmVyIHJvb3RMYXllciIpOwotCi0gICAgbV9jbGlwTGF5ZXIgPSBXS0NB
Q0ZMYXllcjo6Y3JlYXRlKFdLQ0FDRkxheWVyOjpMYXllcik7Ci0gICAgbV9jbGlwTGF5ZXItPnNl
dE5hbWUoIldLQ0FDRkxheWVyUmVuZGVyZXIgY2xpcExheWVyIik7Ci0gICAgCi0gICAgbV9zY3Jv
bGxMYXllciA9IFdLQ0FDRkxheWVyOjpjcmVhdGUoV0tDQUNGTGF5ZXI6OkxheWVyKTsKLSAgICBt
X3Njcm9sbExheWVyLT5zZXROYW1lKCJXS0NBQ0ZMYXllclJlbmRlcmVyIHNjcm9sbExheWVyIik7
Ci0KLSAgICBtX3Jvb3RMYXllci0+YWRkU3VibGF5ZXIobV9jbGlwTGF5ZXIpOwotICAgIG1fY2xp
cExheWVyLT5hZGRTdWJsYXllcihtX3Njcm9sbExheWVyKTsKLSAgICBtX2NsaXBMYXllci0+c2V0
TWFza3NUb0JvdW5kcyh0cnVlKTsKLSAgICBtX3Njcm9sbExheWVyLT5zZXRBbmNob3JQb2ludChD
R1BvaW50TWFrZSgwLCAxKSk7Ci0gICAgbV9jbGlwTGF5ZXItPnNldEFuY2hvclBvaW50KENHUG9p
bnRNYWtlKDAsIDEpKTsKLQotI2lmbmRlZiBOREVCVUcKLSAgICBDR0NvbG9yUmVmIGRlYnVnQ29s
b3IgPSBjcmVhdGVDR0NvbG9yKENvbG9yKDI1NSwgMCwgMCwgMjA0KSk7Ci0gICAgbV9yb290TGF5
ZXItPnNldEJhY2tncm91bmRDb2xvcihkZWJ1Z0NvbG9yKTsKLSAgICBDR0NvbG9yUmVsZWFzZShk
ZWJ1Z0NvbG9yKTsKLSNlbmRpZgotCiAgICAgaWYgKElzV2luZG93KG1faG9zdFdpbmRvdykpCiAg
ICAgICAgIG1fcm9vdExheWVyLT5zZXRGcmFtZShib3VuZHMoKSk7CiAKLSAgICBpZiAobV9jb250
ZXh0KQotICAgICAgICBtX3Jvb3RMYXllci0+YmVjb21lUm9vdExheWVyRm9yQ29udGV4dChtX2Nv
bnRleHQuZ2V0KCkpOwotCiAgICAgcmV0dXJuIHRydWU7CiB9CiAK
</data>
<flag name="review"
          id="40794"
          type_id="1"
          status="+"
          setter="sullivan"
    />
          </attachment>
      

    </bug>

</bugzilla>