<?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>107599</bug_id>
          
          <creation_ts>2013-01-22 16:45:17 -0800</creation_ts>
          <short_desc>[Chromium] Correct zoom for focused node when using compositor scaling</short_desc>
          <delta_ts>2013-01-30 00:24:23 -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>Layout and Rendering</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>
          <dependson>108280</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Xianzhu Wang">wangxianzhu</reporter>
          <assigned_to name="Xianzhu Wang">wangxianzhu</assigned_to>
          <cc>abarth</cc>
    
    <cc>aelias</cc>
    
    <cc>enne</cc>
    
    <cc>jamesr</cc>
    
    <cc>keishi</cc>
    
    <cc>klobag</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>813553</commentid>
    <comment_count>0</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2013-01-22 16:45:17 -0800</bug_when>
    <thetext>Similar to bug 107592, auto-zoom for focused node need to consider page scale and device scale differently.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>813563</commentid>
    <comment_count>1</comment_count>
      <attachid>184082</attachid>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2013-01-22 16:50:53 -0800</bug_when>
    <thetext>Created attachment 184082
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817988</commentid>
    <comment_count>2</comment_count>
      <attachid>184082</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-01-28 12:34:26 -0800</bug_when>
    <thetext>Comment on attachment 184082
Patch

Tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817995</commentid>
    <comment_count>3</comment_count>
      <attachid>184082</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-01-28 12:36:30 -0800</bug_when>
    <thetext>Comment on attachment 184082
Patch

The code change itself looks fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>818090</commentid>
    <comment_count>4</comment_count>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2013-01-28 14:14:41 -0800</bug_when>
    <thetext>Didn&apos;t include a test because the original test for the function was disabled (bug 98558). Now I&apos;d like to fix that bug and add a test for the changed code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819171</commentid>
    <comment_count>5</comment_count>
      <attachid>185280</attachid>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2013-01-29 12:06:31 -0800</bug_when>
    <thetext>Created attachment 185280
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819185</commentid>
    <comment_count>6</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-01-29 12:20:03 -0800</bug_when>
    <thetext>LGTM.  Adam?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819247</commentid>
    <comment_count>7</comment_count>
      <attachid>185280</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-01-29 13:02:36 -0800</bug_when>
    <thetext>Comment on attachment 185280
Patch

rs=me based on aelias&apos;s comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819254</commentid>
    <comment_count>8</comment_count>
      <attachid>185280</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-29 13:10:09 -0800</bug_when>
    <thetext>Comment on attachment 185280
Patch

Clearing flags on attachment: 185280

Committed r141153: &lt;http://trac.webkit.org/changeset/141153&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819255</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-29 13:10:13 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819656</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-29 18:34:44 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 108280</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819662</commentid>
    <comment_count>11</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2013-01-29 18:38:21 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; Re-opened since this is blocked by bug 108280

WebFrameTest.DivScrollIntoEditableTest is failing on Chromium Mac bots.

WebFrameTest.DivScrollIntoEditableTest: 
../../third_party/WebKit/Source/WebKit/chromium/tests/WebFrameTest.cpp:972: Failure
The difference between hScroll and scroll.x() is 23, which exceeds 1, where
hScroll evaluates to 102,
scroll.x() evaluates to 125, and
1 evaluates to 1.
../../third_party/WebKit/Source/WebKit/chromium/tests/WebFrameTest.cpp:974: Failure
The difference between vScroll and scroll.y() is 3, which exceeds 1, where
vScroll evaluates to 105,
scroll.y() evaluates to 102, and
1 evaluates to 1.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819841</commentid>
    <comment_count>12</comment_count>
      <attachid>185405</attachid>
    <who name="Xianzhu Wang">wangxianzhu</who>
    <bug_when>2013-01-29 23:33:15 -0800</bug_when>
    <thetext>Created attachment 185405
Added font-size to ensure same caret size across platforms</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819875</commentid>
    <comment_count>13</comment_count>
      <attachid>185405</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-30 00:24:18 -0800</bug_when>
    <thetext>Comment on attachment 185405
Added font-size to ensure same caret size across platforms

Clearing flags on attachment: 185405

Committed r141231: &lt;http://trac.webkit.org/changeset/141231&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>819876</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-30 00:24:23 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184082</attachid>
            <date>2013-01-22 16:50:53 -0800</date>
            <delta_ts>2013-01-29 12:06:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107599-20130123004747.patch</filename>
            <type>text/plain</type>
            <size>5866</size>
            <attacher name="Xianzhu Wang">wangxianzhu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNDQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDFmNmYxOTI3MjIxOGY4OTM5OGM0ODc4MmIxYmU3ODc4YzE1YmNmZTYuLmFjMDlmZDk0YzYxZWFi
NmEwMWM3NGE5ODgxM2UwYTNlZDg3YzMzOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTYgQEAKKzIwMTMtMDEtMjIgIFhpYW56aHUgV2FuZyAgPHdhbmd4aWFuemh1QGNo
cm9taXVtLm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dIENvcnJlY3Qgem9vbSBmb3IgZm9jdXNl
ZCBub2RlIHdoZW4gdXNpbmcgY29tcG9zaXRvciBzY2FsaW5nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc1OTkKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIGFwcGx5RGV2aWNlU2NhbGVGYWN0b3JJ
bkNvbXBvc2l0b3IsIHRhcmdldFNjYWxlIHNob3VsZCBleGNsdWRlIGRldmljZSBzY2FsZSBmYWN0
b3IuCisgICAgICAgIFdoZW4gYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IsIGNhcmV0
IHNpemUgYW5kIGNvbnRlbnQgc2l6ZXMgYXJlIGluIGNzcyBwaXhlbHMgYW5kIHRoZXkgc2hvdWxk
IGJlIGluIHRoZSB2aWV3cG9ydCBvZiB0aGUgbmV3IHNjYWxlLgorCisgICAgICAgICogc3JjL1dl
YlZpZXdJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OnNjcm9sbEZvY3Vz
ZWROb2RlSW50b1JlY3QpOgorCiAyMDEzLTAxLTIyICBBbHBoYSBMYW0gIDxoY2xhbUBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgUkVHUkVTU0lPTihyMTQwMzkyKTogSW5qZWN0SURCS2V5VGVzdC5U
b3BMZXZlbFByb3BlcnR5U3RyaW5nVmFsdWUgaXMgY3Jhc2hpbmcKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAppbmRleCBmZWQ0ZjhkNTEzZGUzMTg1YTMyZDQzYjM0
YWJjOWExMTgzOWVmNDdmLi43YjEwYzhhNzEwYmI1NTg4ZGNkMmM4MmM4MGYxODE2ZWYwNGRjMTNm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCkBAIC0yNzc0
LDQyICsyNzc0LDUwIEBAIHZvaWQgV2ViVmlld0ltcGw6OnNjcm9sbEZvY3VzZWROb2RlSW50b1Jl
Y3QoY29uc3QgV2ViUmVjdCYgcmVjdCkKICAgICAvLyBQaWNrIGEgc2NhbGUgd2hpY2ggaXMgcmVh
c29uYWJseSByZWFkYWJsZS4gVGhpcyBpcyB0aGUgc2NhbGUgYXQgd2hpY2gKICAgICAvLyB0aGUg
Y2FyZXQgaGVpZ2h0IHdpbGwgYmVjb21lIG1pblJlYWRhYmxlQ2FyZXRIZWlnaHQgKGFkanVzdGVk
IGZvciBkcGkKICAgICAvLyBhbmQgZm9udCBzY2FsZSBmYWN0b3IpLgotICAgIGZsb2F0IHRhcmdl
dFNjYWxlID0gZGV2aWNlU2NhbGVGYWN0b3IoKTsKKyAgICBmbG9hdCB0YXJnZXRTY2FsZSA9IHNl
dHRpbmdzSW1wbCgpLT5hcHBseURldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkgPyAxIDog
ZGV2aWNlU2NhbGVGYWN0b3IoKTsKICNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQogICAgIGlm
IChwYWdlKCkgJiYgcGFnZSgpLT5zZXR0aW5ncygpKQogICAgICAgICB0YXJnZXRTY2FsZSAqPSBw
YWdlKCktPnNldHRpbmdzKCktPnRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKCk7CiAjZW5k
aWYKLSAgICBjb25zdCBmbG9hdCBuZXdTY2FsZSA9IGNsYW1wUGFnZVNjYWxlRmFjdG9yVG9MaW1p
dHMocGFnZVNjYWxlRmFjdG9yKCkgKiBtaW5SZWFkYWJsZUNhcmV0SGVpZ2h0ICogdGFyZ2V0U2Nh
bGUgLyBjYXJldC5oZWlnaHQpOworICAgIGNvbnN0IGZsb2F0IGNhcmV0SGVpZ2h0ID0gc2V0dGlu
Z3NJbXBsKCktPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkgPyBjYXJldC5oZWln
aHQgOiBjYXJldC5oZWlnaHQgKiBwYWdlU2NhbGVGYWN0b3IoKTsKKyAgICBjb25zdCBmbG9hdCBu
ZXdTY2FsZSA9IGNsYW1wUGFnZVNjYWxlRmFjdG9yVG9MaW1pdHModGFyZ2V0U2NhbGUgKiBtaW5S
ZWFkYWJsZUNhcmV0SGVpZ2h0IC8gY2FyZXRIZWlnaHQpOwogICAgIGNvbnN0IGZsb2F0IGRlbHRh
U2NhbGUgPSBuZXdTY2FsZSAvIHBhZ2VTY2FsZUZhY3RvcigpOwogCiAgICAgLy8gQ29udmVydCB0
aGUgcmVjdHMgdG8gYWJzb2x1dGUgc3BhY2UgaW4gdGhlIG5ldyBzY2FsZS4KICAgICBJbnRSZWN0
IHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzID0gdGV4dGJveFJlY3Q7CiAgICAgdGV4
dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMubW92ZShtYWluRnJhbWUoKS0+c2Nyb2xsT2Zm
c2V0KCkpOwotICAgIHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLnNjYWxlKGRlbHRh
U2NhbGUpOwogICAgIEludFJlY3QgY2FyZXRJbkRvY3VtZW50Q29vcmRpbmF0ZXMgPSBjYXJldDsK
ICAgICBjYXJldEluRG9jdW1lbnRDb29yZGluYXRlcy5tb3ZlKG1haW5GcmFtZSgpLT5zY3JvbGxP
ZmZzZXQoKSk7Ci0gICAgY2FyZXRJbkRvY3VtZW50Q29vcmRpbmF0ZXMuc2NhbGUoZGVsdGFTY2Fs
ZSk7CisgICAgaW50IHZpZXdXaWR0aCA9IG1fc2l6ZS53aWR0aDsKKyAgICBpbnQgdmlld0hlaWdo
dCA9IG1fc2l6ZS5oZWlnaHQ7CisgICAgaWYgKHNldHRpbmdzSW1wbCgpLT5hcHBseVBhZ2VTY2Fs
ZUZhY3RvckluQ29tcG9zaXRvcigpKSB7CisgICAgICAgIHZpZXdXaWR0aCAvPSBuZXdTY2FsZTsK
KyAgICAgICAgdmlld0hlaWdodCAvPSBuZXdTY2FsZTsKKyAgICB9IGVsc2UgeworICAgICAgICB0
ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy5zY2FsZShkZWx0YVNjYWxlKTsKKyAgICAg
ICAgY2FyZXRJbkRvY3VtZW50Q29vcmRpbmF0ZXMuc2NhbGUoZGVsdGFTY2FsZSk7CisgICAgfQog
CiAgICAgSW50UG9pbnQgbmV3T2Zmc2V0OwotICAgIGlmICh0ZXh0Ym94UmVjdEluRG9jdW1lbnRD
b29yZGluYXRlcy53aWR0aCgpIDw9IG1fc2l6ZS53aWR0aCkgeworICAgIGlmICh0ZXh0Ym94UmVj
dEluRG9jdW1lbnRDb29yZGluYXRlcy53aWR0aCgpIDw9IHZpZXdXaWR0aCkgewogICAgICAgICAv
LyBGaWVsZCBpcyBuYXJyb3dlciB0aGFuIHNjcmVlbi4gVHJ5IHRvIGxlYXZlIHBhZGRpbmcgb24g
bGVmdCBzbyBmaWVsZCdzCiAgICAgICAgIC8vIGxhYmVsIGlzIHZpc2libGUsIGJ1dCBpdCdzIG1v
cmUgaW1wb3J0YW50IHRvIGVuc3VyZSBlbnRpcmUgZmllbGQgaXMKICAgICAgICAgLy8gb25zY3Jl
ZW4uCi0gICAgICAgIGludCBpZGVhbExlZnRQYWRkaW5nID0gbV9zaXplLndpZHRoICogbGVmdEJv
eFJhdGlvOwotICAgICAgICBpbnQgbWF4TGVmdFBhZGRpbmdLZWVwaW5nQm94T25zY3JlZW4gPSBt
X3NpemUud2lkdGggLSB0ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy53aWR0aCgpOwor
ICAgICAgICBpbnQgaWRlYWxMZWZ0UGFkZGluZyA9IHZpZXdXaWR0aCAqIGxlZnRCb3hSYXRpbzsK
KyAgICAgICAgaW50IG1heExlZnRQYWRkaW5nS2VlcGluZ0JveE9uc2NyZWVuID0gdmlld1dpZHRo
IC0gdGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMud2lkdGgoKTsKICAgICAgICAgbmV3
T2Zmc2V0LnNldFgodGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMueCgpIC0gbWluPGlu
dD4oaWRlYWxMZWZ0UGFkZGluZywgbWF4TGVmdFBhZGRpbmdLZWVwaW5nQm94T25zY3JlZW4pKTsK
ICAgICB9IGVsc2UgewogICAgICAgICAvLyBGaWVsZCBpcyB3aWRlciB0aGFuIHNjcmVlbi4gVHJ5
IHRvIGxlZnQtYWxpZ24gZmllbGQsIHVubGVzcyBjYXJldCB3b3VsZAogICAgICAgICAvLyBiZSBv
ZmZzY3JlZW4sIGluIHdoaWNoIGNhc2UgcmlnaHQtYWxpZ24gdGhlIGNhcmV0LgotICAgICAgICBu
ZXdPZmZzZXQuc2V0WChtYXg8aW50Pih0ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy54
KCksIGNhcmV0SW5Eb2N1bWVudENvb3JkaW5hdGVzLngoKSArIGNhcmV0SW5Eb2N1bWVudENvb3Jk
aW5hdGVzLndpZHRoKCkgKyBjYXJldFBhZGRpbmcgLSBtX3NpemUud2lkdGgpKTsKKyAgICAgICAg
bmV3T2Zmc2V0LnNldFgobWF4PGludD4odGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMu
eCgpLCBjYXJldEluRG9jdW1lbnRDb29yZGluYXRlcy54KCkgKyBjYXJldEluRG9jdW1lbnRDb29y
ZGluYXRlcy53aWR0aCgpICsgY2FyZXRQYWRkaW5nIC0gdmlld1dpZHRoKSk7CiAgICAgfQotICAg
IGlmICh0ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy5oZWlnaHQoKSA8PSBtX3NpemUu
aGVpZ2h0KSB7CisgICAgaWYgKHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLmhlaWdo
dCgpIDw9IHZpZXdIZWlnaHQpIHsKICAgICAgICAgLy8gRmllbGQgaXMgc2hvcnRlciB0aGFuIHNj
cmVlbi4gVmVydGljYWxseSBjZW50ZXIgaXQuCi0gICAgICAgIG5ld09mZnNldC5zZXRZKHRleHRi
b3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLnkoKSAtIChtX3NpemUuaGVpZ2h0IC0gdGV4dGJv
eFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMuaGVpZ2h0KCkpIC8gMik7CisgICAgICAgIG5ld09m
ZnNldC5zZXRZKHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLnkoKSAtICh2aWV3SGVp
Z2h0IC0gdGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMuaGVpZ2h0KCkpIC8gMik7CiAg
ICAgfSBlbHNlIHsKICAgICAgICAgLy8gRmllbGQgaXMgdGFsbGVyIHRoYW4gc2NyZWVuLiBUcnkg
dG8gdG9wIGFsaWduIGZpZWxkLCB1bmxlc3MgY2FyZXQgd291bGQKICAgICAgICAgLy8gYmUgb2Zm
c2NyZWVuLCBpbiB3aGljaCBjYXNlIGJvdHRvbS1hbGlnbiB0aGUgY2FyZXQuCi0gICAgICAgIG5l
d09mZnNldC5zZXRZKG1heDxpbnQ+KHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLnko
KSwgY2FyZXRJbkRvY3VtZW50Q29vcmRpbmF0ZXMueSgpICsgY2FyZXRJbkRvY3VtZW50Q29vcmRp
bmF0ZXMuaGVpZ2h0KCkgKyBjYXJldFBhZGRpbmcgLSBtX3NpemUuaGVpZ2h0KSk7CisgICAgICAg
IG5ld09mZnNldC5zZXRZKG1heDxpbnQ+KHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVz
LnkoKSwgY2FyZXRJbkRvY3VtZW50Q29vcmRpbmF0ZXMueSgpICsgY2FyZXRJbkRvY3VtZW50Q29v
cmRpbmF0ZXMuaGVpZ2h0KCkgKyBjYXJldFBhZGRpbmcgLSB2aWV3SGVpZ2h0KSk7IAogICAgIH0K
IAogICAgIGJvb2wgbmVlZEFuaW1hdGlvbiA9IGZhbHNlOwpAQCAtMjgxNyw3ICsyODI1LDcgQEAg
dm9pZCBXZWJWaWV3SW1wbDo6c2Nyb2xsRm9jdXNlZE5vZGVJbnRvUmVjdChjb25zdCBXZWJSZWN0
JiByZWN0KQogICAgIGlmIChkZWx0YVNjYWxlID4gbWluU2NhbGVDaGFuZ2VUb1RyaWdnZXJab29t
KQogICAgICAgICBuZWVkQW5pbWF0aW9uID0gdHJ1ZTsKICAgICAvLyBJZiB0aGUgY2FyZXQgaXMg
b2Zmc2NyZWVuLCB0aGVuIGFuaW1hdGUuCi0gICAgSW50UmVjdCBzaXplUmVjdCgwLCAwLCBtX3Np
emUud2lkdGgsIG1fc2l6ZS5oZWlnaHQpOworICAgIEludFJlY3Qgc2l6ZVJlY3QoMCwgMCwgdmll
d1dpZHRoLCB2aWV3SGVpZ2h0KTsKICAgICBpZiAoIXNpemVSZWN0LmNvbnRhaW5zKGNhcmV0KSkK
ICAgICAgICAgbmVlZEFuaW1hdGlvbiA9IHRydWU7CiAgICAgLy8gSWYgdGhlIGJveCBpcyBwYXJ0
aWFsbHkgb2Zmc2NyZWVuIGFuZCBpdCdzIHBvc3NpYmxlIHRvIGJyaW5nIGl0IGZ1bGx5Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185280</attachid>
            <date>2013-01-29 12:06:31 -0800</date>
            <delta_ts>2013-01-29 23:33:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-107599-20130129200317.patch</filename>
            <type>text/plain</type>
            <size>16040</size>
            <attacher name="Xianzhu Wang">wangxianzhu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxMTI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDZmMjczZmU1YzU1NjU2ZDJkOTgyZjQyYjQzNzUwNTBiNTI1MTQ4YWEuLjE3ZTEwOGJkMmU4ODcy
MmMwNmIyZTQyMjY3NDM4N2Y1ODNhNmQ1NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjIgQEAKKzIwMTMtMDEtMjkgIFhpYW56aHUgV2FuZyAgPHdhbmd4aWFuemh1QGNo
cm9taXVtLm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dIENvcnJlY3Qgem9vbSBmb3IgZm9jdXNl
ZCBub2RlIHdoZW4gdXNpbmcgY29tcG9zaXRvciBzY2FsaW5nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc1OTkKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIGFwcGx5RGV2aWNlU2NhbGVGYWN0b3JJ
bkNvbXBvc2l0b3IsIHRhcmdldFNjYWxlIHNob3VsZCBleGNsdWRlIGRldmljZSBzY2FsZSBmYWN0
b3IuCisgICAgICAgIFdoZW4gYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IsIGNhcmV0
IHNpemUgYW5kIGNvbnRlbnQgc2l6ZXMgYXJlIGluIGNzcyBwaXhlbHMgYW5kIHRoZXkgc2hvdWxk
IGJlIGluIHRoZSB2aWV3cG9ydCBvZiB0aGUgbmV3IHNjYWxlLgorCisgICAgICAgICogc3JjL1dl
YlZpZXdJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OnNjcm9sbEZvY3Vz
ZWROb2RlSW50b1JlY3QpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6V2Vi
Vmlld0ltcGw6OmNvbXB1dGVTY2FsZUFuZFNjcm9sbEZvckZvY3VzZWROb2RlKTogRXh0cmFjdGVk
IGZyb20gc2Nyb2xsRm9jdXNlZE5vZGVJbnRvUmVjdCgpIHRvIGVhc2UgdGVzdGluZy4KKyAgICAg
ICAgKiBzcmMvV2ViVmlld0ltcGwuaDoKKyAgICAgICAgKFdlYlZpZXdJbXBsKToKKyAgICAgICAg
KiB0ZXN0cy9XZWJGcmFtZVRlc3QuY3BwOiBVcGRhdGVkIHRlc3QgRGl2U2Nyb2xsRWRpdGFibGVU
ZXN0CisgICAgICAgICogdGVzdHMvZGF0YS9nZXRfc2NhbGVfZm9yX3pvb21faW50b19lZGl0YWJs
ZV90ZXN0Lmh0bWw6IE1vdmVkIHRoZSBsb2dpYyBvZiBvbmxvYWQgc2NyaXB0ICh3aGljaCBzZWVt
cyBub3QgdG8gd29yaykgaW50byBXZWJGcmFtZVRlc3QuY3BwLgorCiAyMDEzLTAxLTI5ICBKb3No
dWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBJbmRl
eGVkREI6IExldCBjYWxsZXJzIHNwZWNpZnkgcmVhc29uIChlcnJvcikgZm9yIGFib3J0aW5nIHRy
YW5zYWN0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3
SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKaW5k
ZXggYzM1MTdkMWNkZTNlNmMyNjAzYWU5NGQxNDZiNjVjYzQwNjg3YThhMy4uOTJhZmMxOTg2ZWU1
MGI1NWYyMGVjMDkxMmM5OGE0NzEzN2QxZjVlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlZpZXdJbXBsLmNwcApAQCAtMjc5MCw2ICsyNzkwLDE4IEBAIHZvaWQgV2ViVmlld0lt
cGw6OnNjcm9sbEZvY3VzZWROb2RlSW50b1JlY3QoY29uc3QgV2ViUmVjdCYgcmVjdCkKICAgICB9
CiAKICNpZiBFTkFCTEUoR0VTVFVSRV9FVkVOVFMpCisgICAgZmxvYXQgc2NhbGU7CisgICAgSW50
UG9pbnQgc2Nyb2xsOworICAgIGJvb2wgbmVlZEFuaW1hdGlvbjsKKyAgICBjb21wdXRlU2NhbGVB
bmRTY3JvbGxGb3JGb2N1c2VkTm9kZShmb2N1c2VkTm9kZSwgc2NhbGUsIHNjcm9sbCwgbmVlZEFu
aW1hdGlvbik7CisgICAgaWYgKG5lZWRBbmltYXRpb24pCisgICAgICAgIHN0YXJ0UGFnZVNjYWxl
QW5pbWF0aW9uKHNjcm9sbCwgZmFsc2UsIHNjYWxlLCBzY3JvbGxBbmRTY2FsZUFuaW1hdGlvbkR1
cmF0aW9uSW5TZWNvbmRzKTsKKyNlbmRpZgorfQorCisjaWYgRU5BQkxFKEdFU1RVUkVfRVZFTlRT
KQordm9pZCBXZWJWaWV3SW1wbDo6Y29tcHV0ZVNjYWxlQW5kU2Nyb2xsRm9yRm9jdXNlZE5vZGUo
Tm9kZSogZm9jdXNlZE5vZGUsIGZsb2F0JiBuZXdTY2FsZSwgSW50UG9pbnQmIG5ld1Njcm9sbCwg
Ym9vbCYgbmVlZEFuaW1hdGlvbikKK3sKICAgICBmb2N1c2VkTm9kZS0+ZG9jdW1lbnQoKS0+dXBk
YXRlTGF5b3V0SWdub3JlUGVuZGluZ1N0eWxlc2hlZXRzKCk7CiAKICAgICAvLyAnY2FyZXQnIGlz
IHJlY3QgZW5jb21wYXNzaW5nIHRoZSBibGlua2luZyBjdXJzb3IuCkBAIC0yODAwLDYxICsyODEy
LDY2IEBAIHZvaWQgV2ViVmlld0ltcGw6OnNjcm9sbEZvY3VzZWROb2RlSW50b1JlY3QoY29uc3Qg
V2ViUmVjdCYgcmVjdCkKICAgICAvLyBQaWNrIGEgc2NhbGUgd2hpY2ggaXMgcmVhc29uYWJseSBy
ZWFkYWJsZS4gVGhpcyBpcyB0aGUgc2NhbGUgYXQgd2hpY2gKICAgICAvLyB0aGUgY2FyZXQgaGVp
Z2h0IHdpbGwgYmVjb21lIG1pblJlYWRhYmxlQ2FyZXRIZWlnaHQgKGFkanVzdGVkIGZvciBkcGkK
ICAgICAvLyBhbmQgZm9udCBzY2FsZSBmYWN0b3IpLgotICAgIGZsb2F0IHRhcmdldFNjYWxlID0g
ZGV2aWNlU2NhbGVGYWN0b3IoKTsKKyAgICBmbG9hdCB0YXJnZXRTY2FsZSA9IHNldHRpbmdzSW1w
bCgpLT5hcHBseURldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkgPyAxIDogZGV2aWNlU2Nh
bGVGYWN0b3IoKTsKICNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQogICAgIGlmIChwYWdlKCkg
JiYgcGFnZSgpLT5zZXR0aW5ncygpKQogICAgICAgICB0YXJnZXRTY2FsZSAqPSBwYWdlKCktPnNl
dHRpbmdzKCktPnRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKCk7CiAjZW5kaWYKLSAgICBj
b25zdCBmbG9hdCBuZXdTY2FsZSA9IGNsYW1wUGFnZVNjYWxlRmFjdG9yVG9MaW1pdHMocGFnZVNj
YWxlRmFjdG9yKCkgKiBtaW5SZWFkYWJsZUNhcmV0SGVpZ2h0ICogdGFyZ2V0U2NhbGUgLyBjYXJl
dC5oZWlnaHQpOworICAgIGNvbnN0IGZsb2F0IGNhcmV0SGVpZ2h0ID0gc2V0dGluZ3NJbXBsKCkt
PmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkgPyBjYXJldC5oZWlnaHQgOiBjYXJl
dC5oZWlnaHQgLyBwYWdlU2NhbGVGYWN0b3IoKTsKKyAgICBuZXdTY2FsZSA9IGNsYW1wUGFnZVNj
YWxlRmFjdG9yVG9MaW1pdHMobWluUmVhZGFibGVDYXJldEhlaWdodCAqIHRhcmdldFNjYWxlIC8g
Y2FyZXRIZWlnaHQpOwogICAgIGNvbnN0IGZsb2F0IGRlbHRhU2NhbGUgPSBuZXdTY2FsZSAvIHBh
Z2VTY2FsZUZhY3RvcigpOwogCiAgICAgLy8gQ29udmVydCB0aGUgcmVjdHMgdG8gYWJzb2x1dGUg
c3BhY2UgaW4gdGhlIG5ldyBzY2FsZS4KICAgICBJbnRSZWN0IHRleHRib3hSZWN0SW5Eb2N1bWVu
dENvb3JkaW5hdGVzID0gdGV4dGJveFJlY3Q7CiAgICAgdGV4dGJveFJlY3RJbkRvY3VtZW50Q29v
cmRpbmF0ZXMubW92ZShtYWluRnJhbWUoKS0+c2Nyb2xsT2Zmc2V0KCkpOwotICAgIHRleHRib3hS
ZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLnNjYWxlKGRlbHRhU2NhbGUpOwogICAgIEludFJlY3Qg
Y2FyZXRJbkRvY3VtZW50Q29vcmRpbmF0ZXMgPSBjYXJldDsKICAgICBjYXJldEluRG9jdW1lbnRD
b29yZGluYXRlcy5tb3ZlKG1haW5GcmFtZSgpLT5zY3JvbGxPZmZzZXQoKSk7Ci0gICAgY2FyZXRJ
bkRvY3VtZW50Q29vcmRpbmF0ZXMuc2NhbGUoZGVsdGFTY2FsZSk7CiAKLSAgICBJbnRQb2ludCBu
ZXdPZmZzZXQ7Ci0gICAgaWYgKHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLndpZHRo
KCkgPD0gbV9zaXplLndpZHRoKSB7CisgICAgaW50IHZpZXdXaWR0aCA9IG1fc2l6ZS53aWR0aDsK
KyAgICBpbnQgdmlld0hlaWdodCA9IG1fc2l6ZS5oZWlnaHQ7CisgICAgaWYgKHNldHRpbmdzSW1w
bCgpLT5hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpKSB7CisgICAgICAgIHZpZXdX
aWR0aCAvPSBuZXdTY2FsZTsKKyAgICAgICAgdmlld0hlaWdodCAvPSBuZXdTY2FsZTsKKyAgICB9
IGVsc2UgeworICAgICAgICB0ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy5zY2FsZShk
ZWx0YVNjYWxlKTsKKyAgICAgICAgY2FyZXRJbkRvY3VtZW50Q29vcmRpbmF0ZXMuc2NhbGUoZGVs
dGFTY2FsZSk7CisgICAgfQorCisgICAgaWYgKHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5h
dGVzLndpZHRoKCkgPD0gdmlld1dpZHRoKSB7CiAgICAgICAgIC8vIEZpZWxkIGlzIG5hcnJvd2Vy
IHRoYW4gc2NyZWVuLiBUcnkgdG8gbGVhdmUgcGFkZGluZyBvbiBsZWZ0IHNvIGZpZWxkJ3MKICAg
ICAgICAgLy8gbGFiZWwgaXMgdmlzaWJsZSwgYnV0IGl0J3MgbW9yZSBpbXBvcnRhbnQgdG8gZW5z
dXJlIGVudGlyZSBmaWVsZCBpcwogICAgICAgICAvLyBvbnNjcmVlbi4KLSAgICAgICAgaW50IGlk
ZWFsTGVmdFBhZGRpbmcgPSBtX3NpemUud2lkdGggKiBsZWZ0Qm94UmF0aW87Ci0gICAgICAgIGlu
dCBtYXhMZWZ0UGFkZGluZ0tlZXBpbmdCb3hPbnNjcmVlbiA9IG1fc2l6ZS53aWR0aCAtIHRleHRi
b3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLndpZHRoKCk7Ci0gICAgICAgIG5ld09mZnNldC5z
ZXRYKHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLngoKSAtIG1pbjxpbnQ+KGlkZWFs
TGVmdFBhZGRpbmcsIG1heExlZnRQYWRkaW5nS2VlcGluZ0JveE9uc2NyZWVuKSk7CisgICAgICAg
IGludCBpZGVhbExlZnRQYWRkaW5nID0gdmlld1dpZHRoICogbGVmdEJveFJhdGlvOworICAgICAg
ICBpbnQgbWF4TGVmdFBhZGRpbmdLZWVwaW5nQm94T25zY3JlZW4gPSB2aWV3V2lkdGggLSB0ZXh0
Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy53aWR0aCgpOworICAgICAgICBuZXdTY3JvbGwu
c2V0WCh0ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy54KCkgLSBtaW48aW50PihpZGVh
bExlZnRQYWRkaW5nLCBtYXhMZWZ0UGFkZGluZ0tlZXBpbmdCb3hPbnNjcmVlbikpOwogICAgIH0g
ZWxzZSB7CiAgICAgICAgIC8vIEZpZWxkIGlzIHdpZGVyIHRoYW4gc2NyZWVuLiBUcnkgdG8gbGVm
dC1hbGlnbiBmaWVsZCwgdW5sZXNzIGNhcmV0IHdvdWxkCiAgICAgICAgIC8vIGJlIG9mZnNjcmVl
biwgaW4gd2hpY2ggY2FzZSByaWdodC1hbGlnbiB0aGUgY2FyZXQuCi0gICAgICAgIG5ld09mZnNl
dC5zZXRYKG1heDxpbnQ+KHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLngoKSwgY2Fy
ZXRJbkRvY3VtZW50Q29vcmRpbmF0ZXMueCgpICsgY2FyZXRJbkRvY3VtZW50Q29vcmRpbmF0ZXMu
d2lkdGgoKSArIGNhcmV0UGFkZGluZyAtIG1fc2l6ZS53aWR0aCkpOworICAgICAgICBuZXdTY3Jv
bGwuc2V0WChtYXg8aW50Pih0ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy54KCksIGNh
cmV0SW5Eb2N1bWVudENvb3JkaW5hdGVzLngoKSArIGNhcmV0SW5Eb2N1bWVudENvb3JkaW5hdGVz
LndpZHRoKCkgKyBjYXJldFBhZGRpbmcgLSB2aWV3V2lkdGgpKTsKICAgICB9Ci0gICAgaWYgKHRl
eHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLmhlaWdodCgpIDw9IG1fc2l6ZS5oZWlnaHQp
IHsKKyAgICBpZiAodGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMuaGVpZ2h0KCkgPD0g
dmlld0hlaWdodCkgewogICAgICAgICAvLyBGaWVsZCBpcyBzaG9ydGVyIHRoYW4gc2NyZWVuLiBW
ZXJ0aWNhbGx5IGNlbnRlciBpdC4KLSAgICAgICAgbmV3T2Zmc2V0LnNldFkodGV4dGJveFJlY3RJ
bkRvY3VtZW50Q29vcmRpbmF0ZXMueSgpIC0gKG1fc2l6ZS5oZWlnaHQgLSB0ZXh0Ym94UmVjdElu
RG9jdW1lbnRDb29yZGluYXRlcy5oZWlnaHQoKSkgLyAyKTsKKyAgICAgICAgbmV3U2Nyb2xsLnNl
dFkodGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMueSgpIC0gKHZpZXdIZWlnaHQgLSB0
ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy5oZWlnaHQoKSkgLyAyKTsKICAgICB9IGVs
c2UgewogICAgICAgICAvLyBGaWVsZCBpcyB0YWxsZXIgdGhhbiBzY3JlZW4uIFRyeSB0byB0b3Ag
YWxpZ24gZmllbGQsIHVubGVzcyBjYXJldCB3b3VsZAogICAgICAgICAvLyBiZSBvZmZzY3JlZW4s
IGluIHdoaWNoIGNhc2UgYm90dG9tLWFsaWduIHRoZSBjYXJldC4KLSAgICAgICAgbmV3T2Zmc2V0
LnNldFkobWF4PGludD4odGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMueSgpLCBjYXJl
dEluRG9jdW1lbnRDb29yZGluYXRlcy55KCkgKyBjYXJldEluRG9jdW1lbnRDb29yZGluYXRlcy5o
ZWlnaHQoKSArIGNhcmV0UGFkZGluZyAtIG1fc2l6ZS5oZWlnaHQpKTsKKyAgICAgICAgbmV3U2Ny
b2xsLnNldFkobWF4PGludD4odGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMueSgpLCBj
YXJldEluRG9jdW1lbnRDb29yZGluYXRlcy55KCkgKyBjYXJldEluRG9jdW1lbnRDb29yZGluYXRl
cy5oZWlnaHQoKSArIGNhcmV0UGFkZGluZyAtIHZpZXdIZWlnaHQpKTsKICAgICB9CiAKLSAgICBi
b29sIG5lZWRBbmltYXRpb24gPSBmYWxzZTsKKyAgICBuZWVkQW5pbWF0aW9uID0gZmFsc2U7CiAg
ICAgLy8gSWYgd2UgYXJlIGF0IGxlc3MgdGhhbiB0aGUgdGFyZ2V0IHpvb20gbGV2ZWwsIHpvb20g
aW4uCiAgICAgaWYgKGRlbHRhU2NhbGUgPiBtaW5TY2FsZUNoYW5nZVRvVHJpZ2dlclpvb20pCiAg
ICAgICAgIG5lZWRBbmltYXRpb24gPSB0cnVlOwogICAgIC8vIElmIHRoZSBjYXJldCBpcyBvZmZz
Y3JlZW4sIHRoZW4gYW5pbWF0ZS4KLSAgICBJbnRSZWN0IHNpemVSZWN0KDAsIDAsIG1fc2l6ZS53
aWR0aCwgbV9zaXplLmhlaWdodCk7CisgICAgSW50UmVjdCBzaXplUmVjdCgwLCAwLCB2aWV3V2lk
dGgsIHZpZXdIZWlnaHQpOwogICAgIGlmICghc2l6ZVJlY3QuY29udGFpbnMoY2FyZXQpKQogICAg
ICAgICBuZWVkQW5pbWF0aW9uID0gdHJ1ZTsKICAgICAvLyBJZiB0aGUgYm94IGlzIHBhcnRpYWxs
eSBvZmZzY3JlZW4gYW5kIGl0J3MgcG9zc2libGUgdG8gYnJpbmcgaXQgZnVsbHkKICAgICAvLyBv
bnNjcmVlbiwgdGhlbiBhbmltYXRlLgogICAgIGlmIChzaXplUmVjdC5jb250YWlucyh0ZXh0Ym94
UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy53aWR0aCgpLCB0ZXh0Ym94UmVjdEluRG9jdW1lbnRD
b29yZGluYXRlcy5oZWlnaHQoKSkgJiYgIXNpemVSZWN0LmNvbnRhaW5zKHRleHRib3hSZWN0KSkK
ICAgICAgICAgbmVlZEFuaW1hdGlvbiA9IHRydWU7Ci0KLSAgICBpZiAobmVlZEFuaW1hdGlvbikK
LSAgICAgICAgc3RhcnRQYWdlU2NhbGVBbmltYXRpb24obmV3T2Zmc2V0LCBmYWxzZSwgbmV3U2Nh
bGUsIHNjcm9sbEFuZFNjYWxlQW5pbWF0aW9uRHVyYXRpb25JblNlY29uZHMpOwotI2VuZGlmCiB9
CisjZW5kaWYKIAogdm9pZCBXZWJWaWV3SW1wbDo6YWR2YW5jZUZvY3VzKGJvb2wgcmV2ZXJzZSkK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmgg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5oCmluZGV4IGU3Y2UwZTdh
N2I2OTMxMzc1ZjM1ZDA3OTI3ODQ0NDJhOTJiMWMzNTkuLjY3ZDZiYTY1YzZmMzAzM2FiOGQ0NzFk
MTE3MmM3NmRjZTU2N2FhNjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYlZpZXdJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0lt
cGwuaApAQCAtNTc5LDYgKzU3OSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGNvbXB1dGVTY2FsZUFu
ZFNjcm9sbEZvckhpdFJlY3QoY29uc3QgV2ViUmVjdCYgaGl0UmVjdCwgQXV0b1pvb21UeXBlLCBm
bG9hdCYgc2NhbGUsIFdlYlBvaW50JiBzY3JvbGwsIGJvb2wmIGlzQW5jaG9yKTsKICAgICBXZWJD
b3JlOjpOb2RlKiBiZXN0VG91Y2hMaW5rTm9kZShjb25zdCBXZWJHZXN0dXJlRXZlbnQmIHRvdWNo
RXZlbnQpOwogICAgIHZvaWQgZW5hYmxlVG91Y2hIaWdobGlnaHQoY29uc3QgV2ViR2VzdHVyZUV2
ZW50JiB0b3VjaEV2ZW50KTsKKyAgICB2b2lkIGNvbXB1dGVTY2FsZUFuZFNjcm9sbEZvckZvY3Vz
ZWROb2RlKFdlYkNvcmU6Ok5vZGUqIGZvY3VzZWROb2RlLCBmbG9hdCYgc2NhbGUsIFdlYkNvcmU6
OkludFBvaW50JiBzY3JvbGwsIGJvb2wmIG5lZWRBbmltYXRpb24pOwogI2VuZGlmCiAgICAgdm9p
ZCBhbmltYXRlWm9vbUFyb3VuZFBvaW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgQXV0b1pv
b21UeXBlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJG
cmFtZVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3Qu
Y3BwCmluZGV4IDgzYzc2NjMyNTcxNTE2YWYxMzRhYzlhYzk5MWM1NDExZjBkY2U2YjguLjA3NzM2
NDkzOGNkM2NmZmFkZGMyZjVmZmE5MjU2MTIxMDYyZDM1MzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKQEAgLTkyOCwyMiArOTI4LDIxIEBAIFRF
U1RfRihXZWJGcmFtZVRlc3QsIERpdkF1dG9ab29tU2NhbGVGb250U2NhbGVGYWN0b3JUZXN0Q29t
cG9zaXRvclNjYWxpbmcpCiB9CiAjZW5kaWYKIAotLy8gVGhpcyB0ZXN0IGRlcGVuZHMgb24gY29k
ZSB0aGF0IGlzIGNvbXBpbGVkIGNvbmRpdGlvbmFsbHkuIFdlIGxpa2VseSBuZWVkIHRvCi0vLyBh
ZGQgdGhlIHByb3BlciBpZmRlZiB3aGVuIHJlLWVuYWJsaW5nIGl0LiBTZWUKLS8vIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05ODU1OAotVEVTVF9GKFdlYkZyYW1lVGVz
dCwgRElTQUJMRURfRGl2U2Nyb2xsSW50b0VkaXRhYmxlVGVzdCkKK1RFU1RfRihXZWJGcmFtZVRl
c3QsIERpdlNjcm9sbEludG9FZGl0YWJsZVRlc3QpCiB7CiAgICAgcmVnaXN0ZXJNb2NrZWRIdHRw
VVJMTG9hZCgiZ2V0X3NjYWxlX2Zvcl96b29tX2ludG9fZWRpdGFibGVfdGVzdC5odG1sIik7CiAK
LSAgICBpbnQgdmlld3BvcnRXaWR0aCA9IDY0MDsKLSAgICBpbnQgdmlld3BvcnRIZWlnaHQgPSA0
ODA7CisgICAgaW50IHZpZXdwb3J0V2lkdGggPSA0NTA7CisgICAgaW50IHZpZXdwb3J0SGVpZ2h0
ID0gMzAwOwogICAgIGZsb2F0IGxlZnRCb3hSYXRpbyA9IDAuM2Y7CiAgICAgaW50IGNhcmV0UGFk
ZGluZyA9IDEwOwotICAgIGludCBtaW5SZWFkYWJsZUNhcmV0SGVpZ2h0ID0gMTg7CisgICAgZmxv
YXQgbWluUmVhZGFibGVDYXJldEhlaWdodCA9IDE4LjBmOwogICAgIFdlYktpdDo6V2ViVmlldyog
d2ViVmlldyA9IEZyYW1lVGVzdEhlbHBlcnM6OmNyZWF0ZVdlYlZpZXdBbmRMb2FkKG1fYmFzZVVS
TCArICJnZXRfc2NhbGVfZm9yX3pvb21faW50b19lZGl0YWJsZV90ZXN0Lmh0bWwiKTsKKyAgICB3
ZWJWaWV3LT5zZXR0aW5ncygpLT5zZXRBcHBseURldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9y
KHRydWUpOworICAgIHdlYlZpZXctPnNldHRpbmdzKCktPnNldEFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yKHRydWUpOwogICAgIHdlYlZpZXctPmVuYWJsZUZpeGVkTGF5b3V0TW9kZSh0
cnVlKTsKICAgICB3ZWJWaWV3LT5yZXNpemUoV2ViU2l6ZSh2aWV3cG9ydFdpZHRoLCB2aWV3cG9y
dEhlaWdodCkpOwotICAgIHdlYlZpZXctPnNldFBhZ2VTY2FsZUZhY3RvckxpbWl0cygxLCAxMCk7
CisgICAgd2ViVmlldy0+c2V0UGFnZVNjYWxlRmFjdG9yTGltaXRzKDEsIDQpOwogICAgIHdlYlZp
ZXctPmxheW91dCgpOwogICAgIHdlYlZpZXctPnNldERldmljZVNjYWxlRmFjdG9yKDEuNWYpOwog
ICAgIHdlYlZpZXctPnNldHRpbmdzKCktPnNldEF1dG9ab29tRm9jdXNlZE5vZGVUb0xlZ2libGVT
Y2FsZSh0cnVlKTsKQEAgLTk1Niw0NiArOTU1LDYwIEBAIFRFU1RfRihXZWJGcmFtZVRlc3QsIERJ
U0FCTEVEX0RpdlNjcm9sbEludG9FZGl0YWJsZVRlc3QpCiAKICAgICAvLyBUZXN0IHNjcm9sbGlu
ZyB0aGUgZm9jdXNlZCBub2RlCiAgICAgLy8gVGhlIGVkaXQgYm94IGlzIHNob3J0ZXIgYW5kIG5h
cnJvd2VyIHRoYW4gdGhlIHZpZXdwb3J0IHdoZW4gbGVnaWJsZS4KKyAgICB3ZWJWaWV3LT5hZHZh
bmNlRm9jdXMoZmFsc2UpOworICAgIC8vIFNldCB0aGUgY2FyZXQgdG8gdGhlIGVuZCBvZiB0aGUg
aW5wdXQgYm94LgorICAgIHdlYlZpZXctPm1haW5GcmFtZSgpLT5kb2N1bWVudCgpLmdldEVsZW1l
bnRCeUlkKCJFZGl0Qm94V2l0aFRleHQiKS50bzxXZWJJbnB1dEVsZW1lbnQ+KCkuc2V0U2VsZWN0
aW9uUmFuZ2UoMTAwMCwgMTAwMCk7CiAgICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2Vi
VmlldywgV2ViUG9pbnQoMCwgMCksIDEpOwogICAgIFdlYlJlY3QgcmVjdCwgY2FyZXQ7CiAgICAg
d2ViVmlld0ltcGwtPnNlbGVjdGlvbkJvdW5kcyhjYXJldCwgcmVjdCk7Ci0gICAgd2ViVmlldy0+
c2Nyb2xsRm9jdXNlZE5vZGVJbnRvUmVjdChyZWN0KTsKKworICAgIGZsb2F0IHNjYWxlOworICAg
IFdlYkNvcmU6OkludFBvaW50IHNjcm9sbDsKKyAgICBib29sIG5lZWRBbmltYXRpb247CisgICAg
d2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9sbEZvckZvY3VzZWROb2RlKHdlYlZpZXdJ
bXBsLT5mb2N1c2VkV2ViQ29yZU5vZGUoKSwgc2NhbGUsIHNjcm9sbCwgbmVlZEFuaW1hdGlvbik7
CisgICAgRVhQRUNUX1RSVUUobmVlZEFuaW1hdGlvbik7CiAgICAgLy8gVGhlIGVkaXQgYm94IHNo
b3VsZCBiZSBsZWZ0IGFsaWduZWQgd2l0aCBhIG1hcmdpbiBmb3IgcG9zc2libGUgbGFiZWwuCi0g
ICAgaW50IGhTY3JvbGwgPSBlZGl0Qm94V2l0aFRleHQueCAqIHdlYlZpZXctPnBhZ2VTY2FsZUZh
Y3RvcigpIC0gbGVmdEJveFJhdGlvICogdmlld3BvcnRXaWR0aDsKLSAgICBFWFBFQ1RfRVEoaFNj
cm9sbCwgd2ViVmlldy0+bWFpbkZyYW1lKCktPnNjcm9sbE9mZnNldCgpLndpZHRoKTsKLSAgICBp
bnQgdlNjcm9sbCA9IGVkaXRCb3hXaXRoVGV4dC55ICogd2ViVmlldy0+cGFnZVNjYWxlRmFjdG9y
KCkgLSAodmlld3BvcnRIZWlnaHQgLSBlZGl0Qm94V2l0aFRleHQuaGVpZ2h0ICogd2ViVmlldy0+
cGFnZVNjYWxlRmFjdG9yKCkpIC8gMjsKLSAgICBFWFBFQ1RfRVEodlNjcm9sbCwgd2ViVmlldy0+
bWFpbkZyYW1lKCktPnNjcm9sbE9mZnNldCgpLmhlaWdodCk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VR
KHdlYlZpZXctPmRldmljZVNjYWxlRmFjdG9yKCkgKiBtaW5SZWFkYWJsZUNhcmV0SGVpZ2h0IC8g
Y2FyZXQuaGVpZ2h0LCB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSk7CisgICAgaW50IGhTY3Jv
bGwgPSBlZGl0Qm94V2l0aFRleHQueCAtIGxlZnRCb3hSYXRpbyAqIHZpZXdwb3J0V2lkdGggLyBz
Y2FsZTsKKyAgICBFWFBFQ1RfTkVBUihoU2Nyb2xsLCBzY3JvbGwueCgpLCAxKTsKKyAgICBpbnQg
dlNjcm9sbCA9IGVkaXRCb3hXaXRoVGV4dC55IC0gKHZpZXdwb3J0SGVpZ2h0IC8gc2NhbGUgLSBl
ZGl0Qm94V2l0aFRleHQuaGVpZ2h0ICogc2NhbGUpIC8gMjsKKyAgICBFWFBFQ1RfTkVBUih2U2Ny
b2xsLCBzY3JvbGwueSgpLCAxKTsKKyAgICBFWFBFQ1RfTkVBUihtaW5SZWFkYWJsZUNhcmV0SGVp
Z2h0IC8gY2FyZXQuaGVpZ2h0LCBzY2FsZSwgMC4xKTsKIAogICAgIC8vIFRoZSBlZGl0IGJveCBp
cyB3aWRlciB0aGFuIHRoZSB2aWV3cG9ydCB3aGVuIGxlZ2libGUuCi0gICAgd2ViVmlldy0+c2V0
RGV2aWNlU2NhbGVGYWN0b3IoNCk7CisgICAgdmlld3BvcnRXaWR0aCA9IDIwMDsKKyAgICB2aWV3
cG9ydEhlaWdodCA9IDE1MDsKKyAgICB3ZWJWaWV3LT5yZXNpemUoV2ViU2l6ZSh2aWV3cG9ydFdp
ZHRoLCB2aWV3cG9ydEhlaWdodCkpOwogICAgIHNldFNjYWxlQW5kU2Nyb2xsQW5kTGF5b3V0KHdl
YlZpZXcsIFdlYlBvaW50KDAsIDApLCAxKTsKICAgICB3ZWJWaWV3SW1wbC0+c2VsZWN0aW9uQm91
bmRzKGNhcmV0LCByZWN0KTsKLSAgICB3ZWJWaWV3LT5zY3JvbGxGb2N1c2VkTm9kZUludG9SZWN0
KHJlY3QpOworICAgIHdlYlZpZXdJbXBsLT5jb21wdXRlU2NhbGVBbmRTY3JvbGxGb3JGb2N1c2Vk
Tm9kZSh3ZWJWaWV3SW1wbC0+Zm9jdXNlZFdlYkNvcmVOb2RlKCksIHNjYWxlLCBzY3JvbGwsIG5l
ZWRBbmltYXRpb24pOworICAgIEVYUEVDVF9UUlVFKG5lZWRBbmltYXRpb24pOwogICAgIC8vIFRo
ZSBjYXJldCBzaG91bGQgYmUgcmlnaHQgYWxpZ25lZCBzaW5jZSB0aGUgY2FyZXQgd291bGQgYmUg
b2Zmc2NyZWVuIHdoZW4gdGhlIGVkaXQgYm94IGlzIGxlZnQgYWxpZ25lZC4KLSAgICBoU2Nyb2xs
ID0gKGNhcmV0LnggKyBjYXJldC53aWR0aCkgKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSAr
IGNhcmV0UGFkZGluZyAtIHZpZXdwb3J0V2lkdGg7Ci0gICAgRVhQRUNUX0VRKGhTY3JvbGwsIHdl
YlZpZXctPm1haW5GcmFtZSgpLT5zY3JvbGxPZmZzZXQoKS53aWR0aCk7Ci0gICAgRVhQRUNUX0ZM
T0FUX0VRKHdlYlZpZXctPmRldmljZVNjYWxlRmFjdG9yKCkgKiBtaW5SZWFkYWJsZUNhcmV0SGVp
Z2h0IC8gY2FyZXQuaGVpZ2h0LCB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSk7CisgICAgaFNj
cm9sbCA9IGNhcmV0LnggKyBjYXJldC53aWR0aCArIGNhcmV0UGFkZGluZyAtIHZpZXdwb3J0V2lk
dGggLyBzY2FsZTsKKyAgICBFWFBFQ1RfTkVBUihoU2Nyb2xsLCBzY3JvbGwueCgpLCAxKTsKKyAg
ICBFWFBFQ1RfTkVBUihtaW5SZWFkYWJsZUNhcmV0SGVpZ2h0IC8gY2FyZXQuaGVpZ2h0LCBzY2Fs
ZSwgMC4xKTsKIAogICAgIHNldFNjYWxlQW5kU2Nyb2xsQW5kTGF5b3V0KHdlYlZpZXcsIFdlYlBv
aW50KDAsIDApLCAxKTsKICAgICAvLyBNb3ZlIGZvY3VzIHRvIGVkaXQgYm94IHdpdGggdGV4dC4K
ICAgICB3ZWJWaWV3LT5hZHZhbmNlRm9jdXMoZmFsc2UpOwogICAgIHdlYlZpZXdJbXBsLT5zZWxl
Y3Rpb25Cb3VuZHMoY2FyZXQsIHJlY3QpOwotICAgIHdlYlZpZXctPnNjcm9sbEZvY3VzZWROb2Rl
SW50b1JlY3QocmVjdCk7CisgICAgd2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9sbEZv
ckZvY3VzZWROb2RlKHdlYlZpZXdJbXBsLT5mb2N1c2VkV2ViQ29yZU5vZGUoKSwgc2NhbGUsIHNj
cm9sbCwgbmVlZEFuaW1hdGlvbik7CisgICAgRVhQRUNUX1RSVUUobmVlZEFuaW1hdGlvbik7CiAg
ICAgLy8gVGhlIGVkaXQgYm94IHNob3VsZCBiZSBsZWZ0IGFsaWduZWQuCi0gICAgaFNjcm9sbCA9
IGVkaXRCb3hXaXRoTm9UZXh0LnggKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKTsKLSAgICBF
WFBFQ1RfRVEoaFNjcm9sbCwgd2ViVmlldy0+bWFpbkZyYW1lKCktPnNjcm9sbE9mZnNldCgpLndp
ZHRoKTsKLSAgICB2U2Nyb2xsID0gZWRpdEJveFdpdGhOb1RleHQueSAqIHdlYlZpZXctPnBhZ2VT
Y2FsZUZhY3RvcigpIC0gKHZpZXdwb3J0SGVpZ2h0IC0gZWRpdEJveFdpdGhOb1RleHQuaGVpZ2h0
ICogd2ViVmlldy0+cGFnZVNjYWxlRmFjdG9yKCkpIC8gMjsKLSAgICBFWFBFQ1RfRVEodlNjcm9s
bCwgd2ViVmlldy0+bWFpbkZyYW1lKCktPnNjcm9sbE9mZnNldCgpLmhlaWdodCk7Ci0gICAgRVhQ
RUNUX0ZMT0FUX0VRKHdlYlZpZXctPmRldmljZVNjYWxlRmFjdG9yKCkgKiBtaW5SZWFkYWJsZUNh
cmV0SGVpZ2h0IC8gY2FyZXQuaGVpZ2h0LCB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSk7Cisg
ICAgaFNjcm9sbCA9IGVkaXRCb3hXaXRoTm9UZXh0Lng7CisgICAgRVhQRUNUX05FQVIoaFNjcm9s
bCwgc2Nyb2xsLngoKSwgMSk7CisgICAgdlNjcm9sbCA9IGVkaXRCb3hXaXRoTm9UZXh0LnkgLSAo
dmlld3BvcnRIZWlnaHQgLyBzY2FsZSAtIGVkaXRCb3hXaXRoTm9UZXh0LmhlaWdodCkgLyAyOwor
ICAgIEVYUEVDVF9ORUFSKHZTY3JvbGwsIHNjcm9sbC55KCksIDEpOworICAgIEVYUEVDVF9ORUFS
KG1pblJlYWRhYmxlQ2FyZXRIZWlnaHQgLyBjYXJldC5oZWlnaHQsIHNjYWxlLCAwLjEpOworCisg
ICAgc2V0U2NhbGVBbmRTY3JvbGxBbmRMYXlvdXQod2ViVmlld0ltcGwsIHNjcm9sbCwgc2NhbGUp
OwogCiAgICAgLy8gTW92ZSBmb2N1cyBiYWNrIHRvIHRoZSBmaXJzdCBlZGl0IGJveC4KICAgICB3
ZWJWaWV3LT5hZHZhbmNlRm9jdXModHJ1ZSk7Ci0gICAgd2ViVmlld0ltcGwtPnNlbGVjdGlvbkJv
dW5kcyhjYXJldCwgcmVjdCk7CisgICAgd2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9s
bEZvckZvY3VzZWROb2RlKHdlYlZpZXdJbXBsLT5mb2N1c2VkV2ViQ29yZU5vZGUoKSwgc2NhbGUs
IHNjcm9sbCwgbmVlZEFuaW1hdGlvbik7CiAgICAgLy8gVGhlIHBvc2l0aW9uIHNob3VsZCBoYXZl
IHN0YXllZCB0aGUgc2FtZSBzaW5jZSB0aGlzIGJveCB3YXMgYWxyZWFkeSBvbiBzY3JlZW4gd2l0
aCB0aGUgcmlnaHQgc2NhbGUuCi0gICAgRVhQRUNUX0VRKHZTY3JvbGwsIHdlYlZpZXctPm1haW5G
cmFtZSgpLT5zY3JvbGxPZmZzZXQoKS5oZWlnaHQpOwotICAgIEVYUEVDVF9FUShoU2Nyb2xsLCB3
ZWJWaWV3LT5tYWluRnJhbWUoKS0+c2Nyb2xsT2Zmc2V0KCkud2lkdGgpOworICAgIEVYUEVDVF9G
QUxTRShuZWVkQW5pbWF0aW9uKTsKIH0KKwogI2VuZGlmCiAKIGNsYXNzIFRlc3RSZWxvYWREb2Vz
bnRSZWRpcmVjdFdlYkZyYW1lQ2xpZW50IDogcHVibGljIFdlYkZyYW1lQ2xpZW50IHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvZGF0YS9nZXRfc2NhbGVfZm9yX3pv
b21faW50b19lZGl0YWJsZV90ZXN0Lmh0bWwgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3Rz
L2RhdGEvZ2V0X3NjYWxlX2Zvcl96b29tX2ludG9fZWRpdGFibGVfdGVzdC5odG1sCmluZGV4IDkx
Yzc0OGUzMGRjZmMzZTBiOGQ5YzExZjg4MjRhNDc5MjZhMGI2NGEuLjk3YWYzZGM3YTcxMzA4Zjk4
NTM5ZTc2NmU0YzhhNTZjYmJlNjA2NmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vdGVzdHMvZGF0YS9nZXRfc2NhbGVfZm9yX3pvb21faW50b19lZGl0YWJsZV90ZXN0Lmh0bWwK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9kYXRhL2dldF9zY2FsZV9mb3Jfem9v
bV9pbnRvX2VkaXRhYmxlX3Rlc3QuaHRtbApAQCAtMSwxNiArMSw4IEBACiA8aHRtbD4KIDxoZWFk
PgotPHNjcmlwdD4KLWZ1bmN0aW9uIGdldGZvY3VzKCkKLXsKLXZhciB0ZXh0ZmllbGQgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgnRWRpdEJveFdpdGhUZXh0Jyk7Ci10ZXh0ZmllbGQuZm9jdXMo
KTsKLXRleHRmaWVsZC5zZXRTZWxlY3Rpb25SYW5nZSh0ZXh0ZmllbGQudmFsdWUubGVuZ3RoLHRl
eHRmaWVsZC52YWx1ZS5sZW5ndGgpOwotfQotPC9zY3JpcHQ+CiA8L2hlYWQ+Ci0gIDxib2R5IG9u
bG9hZD0iZ2V0Zm9jdXMoKSI+Ci0gICAgICA8aW5wdXQgaWQ9IkVkaXRCb3hXaXRoVGV4dCIgc3R5
bGU9IiBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDIwMHB4OyB0b3A6IDIwMHB4OyB3aWR0aDog
MjUwOyBoZWlnaHQ6MjAiIHZhbHVlID0gIkxvbmcgdGV4dCB0byBmaWxsIHRoZSBlZGl0IGJveCIg
dHlwZT0idGV4dCI+Ci0gICAgICA8aW5wdXQgaWQ9IkVkaXRCb3hXaXRoTm9UZXh0IiBzdHlsZT0i
IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMjAwcHg7IHRvcDogMjUwcHg7IHdpZHRoOiAyNTA7
IGhlaWdodDoyMCIgdHlwZT0idGV4dCI+CisgIDxib2R5PgorICAgICAgPGlucHV0IGlkPSJFZGl0
Qm94V2l0aFRleHQiIHN0eWxlPSIgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAyMDBweDsgdG9w
OiAyMDBweDsgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6MjAiIHZhbHVlID0gIkxvbmcgbG9uZyBsb25n
IGxvbmcgdGV4dCB0byBmaWxsIHRoZSBlZGl0IGJveCIgdHlwZT0idGV4dCI+CisgICAgICA8aW5w
dXQgaWQ9IkVkaXRCb3hXaXRoTm9UZXh0IiBzdHlsZT0iIHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVm
dDogMjAwcHg7IHRvcDogMjUwcHg7IHdpZHRoOiAyNTBweDsgaGVpZ2h0OjIwIiB0eXBlPSJ0ZXh0
Ij4KICAgPC9ib2R5PgogPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185405</attachid>
            <date>2013-01-29 23:33:15 -0800</date>
            <delta_ts>2013-01-30 00:24:18 -0800</delta_ts>
            <desc>Added font-size to ensure same caret size across platforms</desc>
            <filename>bug-107599-20130130073001.patch</filename>
            <type>text/plain</type>
            <size>16180</size>
            <attacher name="Xianzhu Wang">wangxianzhu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxMjI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IGM2N2MyN2FjYjA0MzFjY2Y4ZDEwMWY0OTMxNTk1OWE3YmVlNzYzMWIuLmI4YjlhZTY2YWU5YTY4
ZmM2YzAyYjFlMjMxNTRiZTA5OWY2ZmZjZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTMtMDEtMjkgIFhpYW56aHUgV2FuZyAgPHdhbmd4aWFuemh1QGNo
cm9taXVtLm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dIENvcnJlY3Qgem9vbSBmb3IgZm9jdXNl
ZCBub2RlIHdoZW4gdXNpbmcgY29tcG9zaXRvciBzY2FsaW5nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc1OTkKKworICAgICAgICBSZXZpZXdlZCBi
eSBBZGFtIEJhcnRoLgorCisgICAgICAgIFdoZW4gYXBwbHlEZXZpY2VTY2FsZUZhY3RvckluQ29t
cG9zaXRvciwgdGFyZ2V0U2NhbGUgc2hvdWxkIGV4Y2x1ZGUgZGV2aWNlIHNjYWxlIGZhY3Rvci4K
KyAgICAgICAgV2hlbiBhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvciwgY2FyZXQgc2l6
ZSBhbmQgY29udGVudCBzaXplcyBhcmUgaW4gY3NzIHBpeGVscyBhbmQgdGhleSBzaG91bGQgYmUg
aW4gdGhlIHZpZXdwb3J0IG9mIHRoZSBuZXcgc2NhbGUuCisKKyAgICAgICAgUmVhcHBseSByMTQx
MTUzLiBBZGRlZCBmb250LXNpemUgaW4gaHRtbCB0byBlbnN1cmUgc2FtZSBjYXJldCBzaXplIGFj
cm9zcyBwbGF0Zm9ybXMuCisKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6c2Nyb2xsRm9jdXNlZE5vZGVJbnRvUmVjdCk6CisgICAg
ICAgIChXZWJLaXQpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6Y29tcHV0ZVNjYWxl
QW5kU2Nyb2xsRm9yRm9jdXNlZE5vZGUpOiBFeHRyYWN0ZWQgZnJvbSBzY3JvbGxGb2N1c2VkTm9k
ZUludG9SZWN0KCkgdG8gZWFzZSB0ZXN0aW5nLgorICAgICAgICAqIHNyYy9XZWJWaWV3SW1wbC5o
OgorICAgICAgICAoV2ViVmlld0ltcGwpOgorICAgICAgICAqIHRlc3RzL1dlYkZyYW1lVGVzdC5j
cHA6IFVwZGF0ZWQgdGVzdCBEaXZTY3JvbGxFZGl0YWJsZVRlc3QKKyAgICAgICAgKiB0ZXN0cy9k
YXRhL2dldF9zY2FsZV9mb3Jfem9vbV9pbnRvX2VkaXRhYmxlX3Rlc3QuaHRtbDogTW92ZWQgdGhl
IGxvZ2ljIG9mIG9ubG9hZCBzY3JpcHQgKHdoaWNoIHNlZW1zIG5vdCB0byB3b3JrKSBpbnRvIFdl
YkZyYW1lVGVzdC5jcHAuCisKIDIwMTMtMDEtMjkgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUu
Y29tPgogCiAgICAgICAgIFJlbmFtZSBBYnN0cmFjdERhdGFiYXNlIHRvIERhdGFiYXNlQmFja2Vu
ZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNw
cCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAppbmRleCAzZmFi
MjI4ODkyZjExOWZkNTMwNGI4ODg3NDQwODU5ZmU4ZDc5NjMxLi5hNGYzMDhkMDdkYTYyMmQzYTlj
MTNmODlkNDEwNmJlYThkNjg3ZmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJWaWV3SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
Vmlld0ltcGwuY3BwCkBAIC0yNzg4LDYgKzI3ODgsMTggQEAgdm9pZCBXZWJWaWV3SW1wbDo6c2Ny
b2xsRm9jdXNlZE5vZGVJbnRvUmVjdChjb25zdCBXZWJSZWN0JiByZWN0KQogICAgIH0KIAogI2lm
IEVOQUJMRShHRVNUVVJFX0VWRU5UUykKKyAgICBmbG9hdCBzY2FsZTsKKyAgICBJbnRQb2ludCBz
Y3JvbGw7CisgICAgYm9vbCBuZWVkQW5pbWF0aW9uOworICAgIGNvbXB1dGVTY2FsZUFuZFNjcm9s
bEZvckZvY3VzZWROb2RlKGZvY3VzZWROb2RlLCBzY2FsZSwgc2Nyb2xsLCBuZWVkQW5pbWF0aW9u
KTsKKyAgICBpZiAobmVlZEFuaW1hdGlvbikKKyAgICAgICAgc3RhcnRQYWdlU2NhbGVBbmltYXRp
b24oc2Nyb2xsLCBmYWxzZSwgc2NhbGUsIHNjcm9sbEFuZFNjYWxlQW5pbWF0aW9uRHVyYXRpb25J
blNlY29uZHMpOworI2VuZGlmCit9CisKKyNpZiBFTkFCTEUoR0VTVFVSRV9FVkVOVFMpCit2b2lk
IFdlYlZpZXdJbXBsOjpjb21wdXRlU2NhbGVBbmRTY3JvbGxGb3JGb2N1c2VkTm9kZShOb2RlKiBm
b2N1c2VkTm9kZSwgZmxvYXQmIG5ld1NjYWxlLCBJbnRQb2ludCYgbmV3U2Nyb2xsLCBib29sJiBu
ZWVkQW5pbWF0aW9uKQorewogICAgIGZvY3VzZWROb2RlLT5kb2N1bWVudCgpLT51cGRhdGVMYXlv
dXRJZ25vcmVQZW5kaW5nU3R5bGVzaGVldHMoKTsKIAogICAgIC8vICdjYXJldCcgaXMgcmVjdCBl
bmNvbXBhc3NpbmcgdGhlIGJsaW5raW5nIGN1cnNvci4KQEAgLTI3OTgsNjEgKzI4MTAsNjYgQEAg
dm9pZCBXZWJWaWV3SW1wbDo6c2Nyb2xsRm9jdXNlZE5vZGVJbnRvUmVjdChjb25zdCBXZWJSZWN0
JiByZWN0KQogICAgIC8vIFBpY2sgYSBzY2FsZSB3aGljaCBpcyByZWFzb25hYmx5IHJlYWRhYmxl
LiBUaGlzIGlzIHRoZSBzY2FsZSBhdCB3aGljaAogICAgIC8vIHRoZSBjYXJldCBoZWlnaHQgd2ls
bCBiZWNvbWUgbWluUmVhZGFibGVDYXJldEhlaWdodCAoYWRqdXN0ZWQgZm9yIGRwaQogICAgIC8v
IGFuZCBmb250IHNjYWxlIGZhY3RvcikuCi0gICAgZmxvYXQgdGFyZ2V0U2NhbGUgPSBkZXZpY2VT
Y2FsZUZhY3RvcigpOworICAgIGZsb2F0IHRhcmdldFNjYWxlID0gc2V0dGluZ3NJbXBsKCktPmFw
cGx5RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSA/IDEgOiBkZXZpY2VTY2FsZUZhY3Rv
cigpOwogI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCiAgICAgaWYgKHBhZ2UoKSAmJiBwYWdl
KCktPnNldHRpbmdzKCkpCiAgICAgICAgIHRhcmdldFNjYWxlICo9IHBhZ2UoKS0+c2V0dGluZ3Mo
KS0+dGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3IoKTsKICNlbmRpZgotICAgIGNvbnN0IGZs
b2F0IG5ld1NjYWxlID0gY2xhbXBQYWdlU2NhbGVGYWN0b3JUb0xpbWl0cyhwYWdlU2NhbGVGYWN0
b3IoKSAqIG1pblJlYWRhYmxlQ2FyZXRIZWlnaHQgKiB0YXJnZXRTY2FsZSAvIGNhcmV0LmhlaWdo
dCk7CisgICAgY29uc3QgZmxvYXQgY2FyZXRIZWlnaHQgPSBzZXR0aW5nc0ltcGwoKS0+YXBwbHlQ
YWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSA/IGNhcmV0LmhlaWdodCA6IGNhcmV0LmhlaWdo
dCAvIHBhZ2VTY2FsZUZhY3RvcigpOworICAgIG5ld1NjYWxlID0gY2xhbXBQYWdlU2NhbGVGYWN0
b3JUb0xpbWl0cyhtaW5SZWFkYWJsZUNhcmV0SGVpZ2h0ICogdGFyZ2V0U2NhbGUgLyBjYXJldEhl
aWdodCk7CiAgICAgY29uc3QgZmxvYXQgZGVsdGFTY2FsZSA9IG5ld1NjYWxlIC8gcGFnZVNjYWxl
RmFjdG9yKCk7CiAKICAgICAvLyBDb252ZXJ0IHRoZSByZWN0cyB0byBhYnNvbHV0ZSBzcGFjZSBp
biB0aGUgbmV3IHNjYWxlLgogICAgIEludFJlY3QgdGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRp
bmF0ZXMgPSB0ZXh0Ym94UmVjdDsKICAgICB0ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRl
cy5tb3ZlKG1haW5GcmFtZSgpLT5zY3JvbGxPZmZzZXQoKSk7Ci0gICAgdGV4dGJveFJlY3RJbkRv
Y3VtZW50Q29vcmRpbmF0ZXMuc2NhbGUoZGVsdGFTY2FsZSk7CiAgICAgSW50UmVjdCBjYXJldElu
RG9jdW1lbnRDb29yZGluYXRlcyA9IGNhcmV0OwogICAgIGNhcmV0SW5Eb2N1bWVudENvb3JkaW5h
dGVzLm1vdmUobWFpbkZyYW1lKCktPnNjcm9sbE9mZnNldCgpKTsKLSAgICBjYXJldEluRG9jdW1l
bnRDb29yZGluYXRlcy5zY2FsZShkZWx0YVNjYWxlKTsKIAotICAgIEludFBvaW50IG5ld09mZnNl
dDsKLSAgICBpZiAodGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMud2lkdGgoKSA8PSBt
X3NpemUud2lkdGgpIHsKKyAgICBpbnQgdmlld1dpZHRoID0gbV9zaXplLndpZHRoOworICAgIGlu
dCB2aWV3SGVpZ2h0ID0gbV9zaXplLmhlaWdodDsKKyAgICBpZiAoc2V0dGluZ3NJbXBsKCktPmFw
cGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkpIHsKKyAgICAgICAgdmlld1dpZHRoIC89
IG5ld1NjYWxlOworICAgICAgICB2aWV3SGVpZ2h0IC89IG5ld1NjYWxlOworICAgIH0gZWxzZSB7
CisgICAgICAgIHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLnNjYWxlKGRlbHRhU2Nh
bGUpOworICAgICAgICBjYXJldEluRG9jdW1lbnRDb29yZGluYXRlcy5zY2FsZShkZWx0YVNjYWxl
KTsKKyAgICB9CisKKyAgICBpZiAodGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMud2lk
dGgoKSA8PSB2aWV3V2lkdGgpIHsKICAgICAgICAgLy8gRmllbGQgaXMgbmFycm93ZXIgdGhhbiBz
Y3JlZW4uIFRyeSB0byBsZWF2ZSBwYWRkaW5nIG9uIGxlZnQgc28gZmllbGQncwogICAgICAgICAv
LyBsYWJlbCBpcyB2aXNpYmxlLCBidXQgaXQncyBtb3JlIGltcG9ydGFudCB0byBlbnN1cmUgZW50
aXJlIGZpZWxkIGlzCiAgICAgICAgIC8vIG9uc2NyZWVuLgotICAgICAgICBpbnQgaWRlYWxMZWZ0
UGFkZGluZyA9IG1fc2l6ZS53aWR0aCAqIGxlZnRCb3hSYXRpbzsKLSAgICAgICAgaW50IG1heExl
ZnRQYWRkaW5nS2VlcGluZ0JveE9uc2NyZWVuID0gbV9zaXplLndpZHRoIC0gdGV4dGJveFJlY3RJ
bkRvY3VtZW50Q29vcmRpbmF0ZXMud2lkdGgoKTsKLSAgICAgICAgbmV3T2Zmc2V0LnNldFgodGV4
dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMueCgpIC0gbWluPGludD4oaWRlYWxMZWZ0UGFk
ZGluZywgbWF4TGVmdFBhZGRpbmdLZWVwaW5nQm94T25zY3JlZW4pKTsKKyAgICAgICAgaW50IGlk
ZWFsTGVmdFBhZGRpbmcgPSB2aWV3V2lkdGggKiBsZWZ0Qm94UmF0aW87CisgICAgICAgIGludCBt
YXhMZWZ0UGFkZGluZ0tlZXBpbmdCb3hPbnNjcmVlbiA9IHZpZXdXaWR0aCAtIHRleHRib3hSZWN0
SW5Eb2N1bWVudENvb3JkaW5hdGVzLndpZHRoKCk7CisgICAgICAgIG5ld1Njcm9sbC5zZXRYKHRl
eHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLngoKSAtIG1pbjxpbnQ+KGlkZWFsTGVmdFBh
ZGRpbmcsIG1heExlZnRQYWRkaW5nS2VlcGluZ0JveE9uc2NyZWVuKSk7CiAgICAgfSBlbHNlIHsK
ICAgICAgICAgLy8gRmllbGQgaXMgd2lkZXIgdGhhbiBzY3JlZW4uIFRyeSB0byBsZWZ0LWFsaWdu
IGZpZWxkLCB1bmxlc3MgY2FyZXQgd291bGQKICAgICAgICAgLy8gYmUgb2Zmc2NyZWVuLCBpbiB3
aGljaCBjYXNlIHJpZ2h0LWFsaWduIHRoZSBjYXJldC4KLSAgICAgICAgbmV3T2Zmc2V0LnNldFgo
bWF4PGludD4odGV4dGJveFJlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMueCgpLCBjYXJldEluRG9j
dW1lbnRDb29yZGluYXRlcy54KCkgKyBjYXJldEluRG9jdW1lbnRDb29yZGluYXRlcy53aWR0aCgp
ICsgY2FyZXRQYWRkaW5nIC0gbV9zaXplLndpZHRoKSk7CisgICAgICAgIG5ld1Njcm9sbC5zZXRY
KG1heDxpbnQ+KHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLngoKSwgY2FyZXRJbkRv
Y3VtZW50Q29vcmRpbmF0ZXMueCgpICsgY2FyZXRJbkRvY3VtZW50Q29vcmRpbmF0ZXMud2lkdGgo
KSArIGNhcmV0UGFkZGluZyAtIHZpZXdXaWR0aCkpOwogICAgIH0KLSAgICBpZiAodGV4dGJveFJl
Y3RJbkRvY3VtZW50Q29vcmRpbmF0ZXMuaGVpZ2h0KCkgPD0gbV9zaXplLmhlaWdodCkgeworICAg
IGlmICh0ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy5oZWlnaHQoKSA8PSB2aWV3SGVp
Z2h0KSB7CiAgICAgICAgIC8vIEZpZWxkIGlzIHNob3J0ZXIgdGhhbiBzY3JlZW4uIFZlcnRpY2Fs
bHkgY2VudGVyIGl0LgotICAgICAgICBuZXdPZmZzZXQuc2V0WSh0ZXh0Ym94UmVjdEluRG9jdW1l
bnRDb29yZGluYXRlcy55KCkgLSAobV9zaXplLmhlaWdodCAtIHRleHRib3hSZWN0SW5Eb2N1bWVu
dENvb3JkaW5hdGVzLmhlaWdodCgpKSAvIDIpOworICAgICAgICBuZXdTY3JvbGwuc2V0WSh0ZXh0
Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy55KCkgLSAodmlld0hlaWdodCAtIHRleHRib3hS
ZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzLmhlaWdodCgpKSAvIDIpOwogICAgIH0gZWxzZSB7CiAg
ICAgICAgIC8vIEZpZWxkIGlzIHRhbGxlciB0aGFuIHNjcmVlbi4gVHJ5IHRvIHRvcCBhbGlnbiBm
aWVsZCwgdW5sZXNzIGNhcmV0IHdvdWxkCiAgICAgICAgIC8vIGJlIG9mZnNjcmVlbiwgaW4gd2hp
Y2ggY2FzZSBib3R0b20tYWxpZ24gdGhlIGNhcmV0LgotICAgICAgICBuZXdPZmZzZXQuc2V0WSht
YXg8aW50Pih0ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy55KCksIGNhcmV0SW5Eb2N1
bWVudENvb3JkaW5hdGVzLnkoKSArIGNhcmV0SW5Eb2N1bWVudENvb3JkaW5hdGVzLmhlaWdodCgp
ICsgY2FyZXRQYWRkaW5nIC0gbV9zaXplLmhlaWdodCkpOworICAgICAgICBuZXdTY3JvbGwuc2V0
WShtYXg8aW50Pih0ZXh0Ym94UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy55KCksIGNhcmV0SW5E
b2N1bWVudENvb3JkaW5hdGVzLnkoKSArIGNhcmV0SW5Eb2N1bWVudENvb3JkaW5hdGVzLmhlaWdo
dCgpICsgY2FyZXRQYWRkaW5nIC0gdmlld0hlaWdodCkpOwogICAgIH0KIAotICAgIGJvb2wgbmVl
ZEFuaW1hdGlvbiA9IGZhbHNlOworICAgIG5lZWRBbmltYXRpb24gPSBmYWxzZTsKICAgICAvLyBJ
ZiB3ZSBhcmUgYXQgbGVzcyB0aGFuIHRoZSB0YXJnZXQgem9vbSBsZXZlbCwgem9vbSBpbi4KICAg
ICBpZiAoZGVsdGFTY2FsZSA+IG1pblNjYWxlQ2hhbmdlVG9UcmlnZ2VyWm9vbSkKICAgICAgICAg
bmVlZEFuaW1hdGlvbiA9IHRydWU7CiAgICAgLy8gSWYgdGhlIGNhcmV0IGlzIG9mZnNjcmVlbiwg
dGhlbiBhbmltYXRlLgotICAgIEludFJlY3Qgc2l6ZVJlY3QoMCwgMCwgbV9zaXplLndpZHRoLCBt
X3NpemUuaGVpZ2h0KTsKKyAgICBJbnRSZWN0IHNpemVSZWN0KDAsIDAsIHZpZXdXaWR0aCwgdmll
d0hlaWdodCk7CiAgICAgaWYgKCFzaXplUmVjdC5jb250YWlucyhjYXJldCkpCiAgICAgICAgIG5l
ZWRBbmltYXRpb24gPSB0cnVlOwogICAgIC8vIElmIHRoZSBib3ggaXMgcGFydGlhbGx5IG9mZnNj
cmVlbiBhbmQgaXQncyBwb3NzaWJsZSB0byBicmluZyBpdCBmdWxseQogICAgIC8vIG9uc2NyZWVu
LCB0aGVuIGFuaW1hdGUuCiAgICAgaWYgKHNpemVSZWN0LmNvbnRhaW5zKHRleHRib3hSZWN0SW5E
b2N1bWVudENvb3JkaW5hdGVzLndpZHRoKCksIHRleHRib3hSZWN0SW5Eb2N1bWVudENvb3JkaW5h
dGVzLmhlaWdodCgpKSAmJiAhc2l6ZVJlY3QuY29udGFpbnModGV4dGJveFJlY3QpKQogICAgICAg
ICBuZWVkQW5pbWF0aW9uID0gdHJ1ZTsKLQotICAgIGlmIChuZWVkQW5pbWF0aW9uKQotICAgICAg
ICBzdGFydFBhZ2VTY2FsZUFuaW1hdGlvbihuZXdPZmZzZXQsIGZhbHNlLCBuZXdTY2FsZSwgc2Ny
b2xsQW5kU2NhbGVBbmltYXRpb25EdXJhdGlvbkluU2Vjb25kcyk7Ci0jZW5kaWYKIH0KKyNlbmRp
ZgogCiB2b2lkIFdlYlZpZXdJbXBsOjphZHZhbmNlRm9jdXMoYm9vbCByZXZlcnNlKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuaCBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmgKaW5kZXggZTdjZTBlN2E3YjY5MzEz
NzVmMzVkMDc5Mjc4NDQ0MmE5MmIxYzM1OS4uNjdkNmJhNjVjNmYzMDMzYWI4ZDQ3MWQxMTcyYzc2
ZGNlNTY3YWE2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmll
d0ltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5oCkBA
IC01NzksNiArNTc5LDcgQEAgcHVibGljOgogICAgIHZvaWQgY29tcHV0ZVNjYWxlQW5kU2Nyb2xs
Rm9ySGl0UmVjdChjb25zdCBXZWJSZWN0JiBoaXRSZWN0LCBBdXRvWm9vbVR5cGUsIGZsb2F0JiBz
Y2FsZSwgV2ViUG9pbnQmIHNjcm9sbCwgYm9vbCYgaXNBbmNob3IpOwogICAgIFdlYkNvcmU6Ok5v
ZGUqIGJlc3RUb3VjaExpbmtOb2RlKGNvbnN0IFdlYkdlc3R1cmVFdmVudCYgdG91Y2hFdmVudCk7
CiAgICAgdm9pZCBlbmFibGVUb3VjaEhpZ2hsaWdodChjb25zdCBXZWJHZXN0dXJlRXZlbnQmIHRv
dWNoRXZlbnQpOworICAgIHZvaWQgY29tcHV0ZVNjYWxlQW5kU2Nyb2xsRm9yRm9jdXNlZE5vZGUo
V2ViQ29yZTo6Tm9kZSogZm9jdXNlZE5vZGUsIGZsb2F0JiBzY2FsZSwgV2ViQ29yZTo6SW50UG9p
bnQmIHNjcm9sbCwgYm9vbCYgbmVlZEFuaW1hdGlvbik7CiAjZW5kaWYKICAgICB2b2lkIGFuaW1h
dGVab29tQXJvdW5kUG9pbnQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBBdXRvWm9vbVR5cGUp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVz
dC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKaW5k
ZXggODNjNzY2MzI1NzE1MTZhZjEzNGFjOWFjOTkxYzU0MTFmMGRjZTZiOC4uY2VlNjJhNGUyMDZi
ZDg2NDY4OTYxZGJlOGNlZmZiMzczNDA5NzdkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcApAQCAtOTI4LDIyICs5MjgsMjEgQEAgVEVTVF9GKFdl
YkZyYW1lVGVzdCwgRGl2QXV0b1pvb21TY2FsZUZvbnRTY2FsZUZhY3RvclRlc3RDb21wb3NpdG9y
U2NhbGluZykKIH0KICNlbmRpZgogCi0vLyBUaGlzIHRlc3QgZGVwZW5kcyBvbiBjb2RlIHRoYXQg
aXMgY29tcGlsZWQgY29uZGl0aW9uYWxseS4gV2UgbGlrZWx5IG5lZWQgdG8KLS8vIGFkZCB0aGUg
cHJvcGVyIGlmZGVmIHdoZW4gcmUtZW5hYmxpbmcgaXQuIFNlZQotLy8gaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4NTU4Ci1URVNUX0YoV2ViRnJhbWVUZXN0LCBESVNB
QkxFRF9EaXZTY3JvbGxJbnRvRWRpdGFibGVUZXN0KQorVEVTVF9GKFdlYkZyYW1lVGVzdCwgRGl2
U2Nyb2xsSW50b0VkaXRhYmxlVGVzdCkKIHsKICAgICByZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2Fk
KCJnZXRfc2NhbGVfZm9yX3pvb21faW50b19lZGl0YWJsZV90ZXN0Lmh0bWwiKTsKIAotICAgIGlu
dCB2aWV3cG9ydFdpZHRoID0gNjQwOwotICAgIGludCB2aWV3cG9ydEhlaWdodCA9IDQ4MDsKKyAg
ICBpbnQgdmlld3BvcnRXaWR0aCA9IDQ1MDsKKyAgICBpbnQgdmlld3BvcnRIZWlnaHQgPSAzMDA7
CiAgICAgZmxvYXQgbGVmdEJveFJhdGlvID0gMC4zZjsKICAgICBpbnQgY2FyZXRQYWRkaW5nID0g
MTA7Ci0gICAgaW50IG1pblJlYWRhYmxlQ2FyZXRIZWlnaHQgPSAxODsKKyAgICBmbG9hdCBtaW5S
ZWFkYWJsZUNhcmV0SGVpZ2h0ID0gMTguMGY7CiAgICAgV2ViS2l0OjpXZWJWaWV3KiB3ZWJWaWV3
ID0gRnJhbWVUZXN0SGVscGVyczo6Y3JlYXRlV2ViVmlld0FuZExvYWQobV9iYXNlVVJMICsgImdl
dF9zY2FsZV9mb3Jfem9vbV9pbnRvX2VkaXRhYmxlX3Rlc3QuaHRtbCIpOworICAgIHdlYlZpZXct
PnNldHRpbmdzKCktPnNldEFwcGx5RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IodHJ1ZSk7
CisgICAgd2ViVmlldy0+c2V0dGluZ3MoKS0+c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IodHJ1ZSk7CiAgICAgd2ViVmlldy0+ZW5hYmxlRml4ZWRMYXlvdXRNb2RlKHRydWUpOwog
ICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKHZpZXdwb3J0V2lkdGgsIHZpZXdwb3J0SGVpZ2h0
KSk7Ci0gICAgd2ViVmlldy0+c2V0UGFnZVNjYWxlRmFjdG9yTGltaXRzKDEsIDEwKTsKKyAgICB3
ZWJWaWV3LT5zZXRQYWdlU2NhbGVGYWN0b3JMaW1pdHMoMSwgNCk7CiAgICAgd2ViVmlldy0+bGF5
b3V0KCk7CiAgICAgd2ViVmlldy0+c2V0RGV2aWNlU2NhbGVGYWN0b3IoMS41Zik7CiAgICAgd2Vi
Vmlldy0+c2V0dGluZ3MoKS0+c2V0QXV0b1pvb21Gb2N1c2VkTm9kZVRvTGVnaWJsZVNjYWxlKHRy
dWUpOwpAQCAtOTU2LDQ2ICs5NTUsNjAgQEAgVEVTVF9GKFdlYkZyYW1lVGVzdCwgRElTQUJMRURf
RGl2U2Nyb2xsSW50b0VkaXRhYmxlVGVzdCkKIAogICAgIC8vIFRlc3Qgc2Nyb2xsaW5nIHRoZSBm
b2N1c2VkIG5vZGUKICAgICAvLyBUaGUgZWRpdCBib3ggaXMgc2hvcnRlciBhbmQgbmFycm93ZXIg
dGhhbiB0aGUgdmlld3BvcnQgd2hlbiBsZWdpYmxlLgorICAgIHdlYlZpZXctPmFkdmFuY2VGb2N1
cyhmYWxzZSk7CisgICAgLy8gU2V0IHRoZSBjYXJldCB0byB0aGUgZW5kIG9mIHRoZSBpbnB1dCBi
b3guCisgICAgd2ViVmlldy0+bWFpbkZyYW1lKCktPmRvY3VtZW50KCkuZ2V0RWxlbWVudEJ5SWQo
IkVkaXRCb3hXaXRoVGV4dCIpLnRvPFdlYklucHV0RWxlbWVudD4oKS5zZXRTZWxlY3Rpb25SYW5n
ZSgxMDAwLCAxMDAwKTsKICAgICBzZXRTY2FsZUFuZFNjcm9sbEFuZExheW91dCh3ZWJWaWV3LCBX
ZWJQb2ludCgwLCAwKSwgMSk7CiAgICAgV2ViUmVjdCByZWN0LCBjYXJldDsKICAgICB3ZWJWaWV3
SW1wbC0+c2VsZWN0aW9uQm91bmRzKGNhcmV0LCByZWN0KTsKLSAgICB3ZWJWaWV3LT5zY3JvbGxG
b2N1c2VkTm9kZUludG9SZWN0KHJlY3QpOworCisgICAgZmxvYXQgc2NhbGU7CisgICAgV2ViQ29y
ZTo6SW50UG9pbnQgc2Nyb2xsOworICAgIGJvb2wgbmVlZEFuaW1hdGlvbjsKKyAgICB3ZWJWaWV3
SW1wbC0+Y29tcHV0ZVNjYWxlQW5kU2Nyb2xsRm9yRm9jdXNlZE5vZGUod2ViVmlld0ltcGwtPmZv
Y3VzZWRXZWJDb3JlTm9kZSgpLCBzY2FsZSwgc2Nyb2xsLCBuZWVkQW5pbWF0aW9uKTsKKyAgICBF
WFBFQ1RfVFJVRShuZWVkQW5pbWF0aW9uKTsKICAgICAvLyBUaGUgZWRpdCBib3ggc2hvdWxkIGJl
IGxlZnQgYWxpZ25lZCB3aXRoIGEgbWFyZ2luIGZvciBwb3NzaWJsZSBsYWJlbC4KLSAgICBpbnQg
aFNjcm9sbCA9IGVkaXRCb3hXaXRoVGV4dC54ICogd2ViVmlldy0+cGFnZVNjYWxlRmFjdG9yKCkg
LSBsZWZ0Qm94UmF0aW8gKiB2aWV3cG9ydFdpZHRoOwotICAgIEVYUEVDVF9FUShoU2Nyb2xsLCB3
ZWJWaWV3LT5tYWluRnJhbWUoKS0+c2Nyb2xsT2Zmc2V0KCkud2lkdGgpOwotICAgIGludCB2U2Ny
b2xsID0gZWRpdEJveFdpdGhUZXh0LnkgKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSAtICh2
aWV3cG9ydEhlaWdodCAtIGVkaXRCb3hXaXRoVGV4dC5oZWlnaHQgKiB3ZWJWaWV3LT5wYWdlU2Nh
bGVGYWN0b3IoKSkgLyAyOwotICAgIEVYUEVDVF9FUSh2U2Nyb2xsLCB3ZWJWaWV3LT5tYWluRnJh
bWUoKS0+c2Nyb2xsT2Zmc2V0KCkuaGVpZ2h0KTsKLSAgICBFWFBFQ1RfRkxPQVRfRVEod2ViVmll
dy0+ZGV2aWNlU2NhbGVGYWN0b3IoKSAqIG1pblJlYWRhYmxlQ2FyZXRIZWlnaHQgLyBjYXJldC5o
ZWlnaHQsIHdlYlZpZXctPnBhZ2VTY2FsZUZhY3RvcigpKTsKKyAgICBpbnQgaFNjcm9sbCA9IGVk
aXRCb3hXaXRoVGV4dC54IC0gbGVmdEJveFJhdGlvICogdmlld3BvcnRXaWR0aCAvIHNjYWxlOwor
ICAgIEVYUEVDVF9ORUFSKGhTY3JvbGwsIHNjcm9sbC54KCksIDEpOworICAgIGludCB2U2Nyb2xs
ID0gZWRpdEJveFdpdGhUZXh0LnkgLSAodmlld3BvcnRIZWlnaHQgLyBzY2FsZSAtIGVkaXRCb3hX
aXRoVGV4dC5oZWlnaHQpIC8gMjsKKyAgICBFWFBFQ1RfTkVBUih2U2Nyb2xsLCBzY3JvbGwueSgp
LCAxKTsKKyAgICBFWFBFQ1RfTkVBUihtaW5SZWFkYWJsZUNhcmV0SGVpZ2h0IC8gY2FyZXQuaGVp
Z2h0LCBzY2FsZSwgMC4xKTsKIAogICAgIC8vIFRoZSBlZGl0IGJveCBpcyB3aWRlciB0aGFuIHRo
ZSB2aWV3cG9ydCB3aGVuIGxlZ2libGUuCi0gICAgd2ViVmlldy0+c2V0RGV2aWNlU2NhbGVGYWN0
b3IoNCk7CisgICAgdmlld3BvcnRXaWR0aCA9IDIwMDsKKyAgICB2aWV3cG9ydEhlaWdodCA9IDE1
MDsKKyAgICB3ZWJWaWV3LT5yZXNpemUoV2ViU2l6ZSh2aWV3cG9ydFdpZHRoLCB2aWV3cG9ydEhl
aWdodCkpOwogICAgIHNldFNjYWxlQW5kU2Nyb2xsQW5kTGF5b3V0KHdlYlZpZXcsIFdlYlBvaW50
KDAsIDApLCAxKTsKICAgICB3ZWJWaWV3SW1wbC0+c2VsZWN0aW9uQm91bmRzKGNhcmV0LCByZWN0
KTsKLSAgICB3ZWJWaWV3LT5zY3JvbGxGb2N1c2VkTm9kZUludG9SZWN0KHJlY3QpOworICAgIHdl
YlZpZXdJbXBsLT5jb21wdXRlU2NhbGVBbmRTY3JvbGxGb3JGb2N1c2VkTm9kZSh3ZWJWaWV3SW1w
bC0+Zm9jdXNlZFdlYkNvcmVOb2RlKCksIHNjYWxlLCBzY3JvbGwsIG5lZWRBbmltYXRpb24pOwor
ICAgIEVYUEVDVF9UUlVFKG5lZWRBbmltYXRpb24pOwogICAgIC8vIFRoZSBjYXJldCBzaG91bGQg
YmUgcmlnaHQgYWxpZ25lZCBzaW5jZSB0aGUgY2FyZXQgd291bGQgYmUgb2Zmc2NyZWVuIHdoZW4g
dGhlIGVkaXQgYm94IGlzIGxlZnQgYWxpZ25lZC4KLSAgICBoU2Nyb2xsID0gKGNhcmV0LnggKyBj
YXJldC53aWR0aCkgKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSArIGNhcmV0UGFkZGluZyAt
IHZpZXdwb3J0V2lkdGg7Ci0gICAgRVhQRUNUX0VRKGhTY3JvbGwsIHdlYlZpZXctPm1haW5GcmFt
ZSgpLT5zY3JvbGxPZmZzZXQoKS53aWR0aCk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdlYlZpZXct
PmRldmljZVNjYWxlRmFjdG9yKCkgKiBtaW5SZWFkYWJsZUNhcmV0SGVpZ2h0IC8gY2FyZXQuaGVp
Z2h0LCB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSk7CisgICAgaFNjcm9sbCA9IGNhcmV0Lngg
KyBjYXJldC53aWR0aCArIGNhcmV0UGFkZGluZyAtIHZpZXdwb3J0V2lkdGggLyBzY2FsZTsKKyAg
ICBFWFBFQ1RfTkVBUihoU2Nyb2xsLCBzY3JvbGwueCgpLCAxKTsKKyAgICBFWFBFQ1RfTkVBUiht
aW5SZWFkYWJsZUNhcmV0SGVpZ2h0IC8gY2FyZXQuaGVpZ2h0LCBzY2FsZSwgMC4xKTsKIAogICAg
IHNldFNjYWxlQW5kU2Nyb2xsQW5kTGF5b3V0KHdlYlZpZXcsIFdlYlBvaW50KDAsIDApLCAxKTsK
ICAgICAvLyBNb3ZlIGZvY3VzIHRvIGVkaXQgYm94IHdpdGggdGV4dC4KICAgICB3ZWJWaWV3LT5h
ZHZhbmNlRm9jdXMoZmFsc2UpOwogICAgIHdlYlZpZXdJbXBsLT5zZWxlY3Rpb25Cb3VuZHMoY2Fy
ZXQsIHJlY3QpOwotICAgIHdlYlZpZXctPnNjcm9sbEZvY3VzZWROb2RlSW50b1JlY3QocmVjdCk7
CisgICAgd2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9sbEZvckZvY3VzZWROb2RlKHdl
YlZpZXdJbXBsLT5mb2N1c2VkV2ViQ29yZU5vZGUoKSwgc2NhbGUsIHNjcm9sbCwgbmVlZEFuaW1h
dGlvbik7CisgICAgRVhQRUNUX1RSVUUobmVlZEFuaW1hdGlvbik7CiAgICAgLy8gVGhlIGVkaXQg
Ym94IHNob3VsZCBiZSBsZWZ0IGFsaWduZWQuCi0gICAgaFNjcm9sbCA9IGVkaXRCb3hXaXRoTm9U
ZXh0LnggKiB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKTsKLSAgICBFWFBFQ1RfRVEoaFNjcm9s
bCwgd2ViVmlldy0+bWFpbkZyYW1lKCktPnNjcm9sbE9mZnNldCgpLndpZHRoKTsKLSAgICB2U2Ny
b2xsID0gZWRpdEJveFdpdGhOb1RleHQueSAqIHdlYlZpZXctPnBhZ2VTY2FsZUZhY3RvcigpIC0g
KHZpZXdwb3J0SGVpZ2h0IC0gZWRpdEJveFdpdGhOb1RleHQuaGVpZ2h0ICogd2ViVmlldy0+cGFn
ZVNjYWxlRmFjdG9yKCkpIC8gMjsKLSAgICBFWFBFQ1RfRVEodlNjcm9sbCwgd2ViVmlldy0+bWFp
bkZyYW1lKCktPnNjcm9sbE9mZnNldCgpLmhlaWdodCk7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKHdl
YlZpZXctPmRldmljZVNjYWxlRmFjdG9yKCkgKiBtaW5SZWFkYWJsZUNhcmV0SGVpZ2h0IC8gY2Fy
ZXQuaGVpZ2h0LCB3ZWJWaWV3LT5wYWdlU2NhbGVGYWN0b3IoKSk7CisgICAgaFNjcm9sbCA9IGVk
aXRCb3hXaXRoTm9UZXh0Lng7CisgICAgRVhQRUNUX05FQVIoaFNjcm9sbCwgc2Nyb2xsLngoKSwg
MSk7CisgICAgdlNjcm9sbCA9IGVkaXRCb3hXaXRoTm9UZXh0LnkgLSAodmlld3BvcnRIZWlnaHQg
LyBzY2FsZSAtIGVkaXRCb3hXaXRoTm9UZXh0LmhlaWdodCkgLyAyOworICAgIEVYUEVDVF9ORUFS
KHZTY3JvbGwsIHNjcm9sbC55KCksIDEpOworICAgIEVYUEVDVF9ORUFSKG1pblJlYWRhYmxlQ2Fy
ZXRIZWlnaHQgLyBjYXJldC5oZWlnaHQsIHNjYWxlLCAwLjEpOworCisgICAgc2V0U2NhbGVBbmRT
Y3JvbGxBbmRMYXlvdXQod2ViVmlld0ltcGwsIHNjcm9sbCwgc2NhbGUpOwogCiAgICAgLy8gTW92
ZSBmb2N1cyBiYWNrIHRvIHRoZSBmaXJzdCBlZGl0IGJveC4KICAgICB3ZWJWaWV3LT5hZHZhbmNl
Rm9jdXModHJ1ZSk7Ci0gICAgd2ViVmlld0ltcGwtPnNlbGVjdGlvbkJvdW5kcyhjYXJldCwgcmVj
dCk7CisgICAgd2ViVmlld0ltcGwtPmNvbXB1dGVTY2FsZUFuZFNjcm9sbEZvckZvY3VzZWROb2Rl
KHdlYlZpZXdJbXBsLT5mb2N1c2VkV2ViQ29yZU5vZGUoKSwgc2NhbGUsIHNjcm9sbCwgbmVlZEFu
aW1hdGlvbik7CiAgICAgLy8gVGhlIHBvc2l0aW9uIHNob3VsZCBoYXZlIHN0YXllZCB0aGUgc2Ft
ZSBzaW5jZSB0aGlzIGJveCB3YXMgYWxyZWFkeSBvbiBzY3JlZW4gd2l0aCB0aGUgcmlnaHQgc2Nh
bGUuCi0gICAgRVhQRUNUX0VRKHZTY3JvbGwsIHdlYlZpZXctPm1haW5GcmFtZSgpLT5zY3JvbGxP
ZmZzZXQoKS5oZWlnaHQpOwotICAgIEVYUEVDVF9FUShoU2Nyb2xsLCB3ZWJWaWV3LT5tYWluRnJh
bWUoKS0+c2Nyb2xsT2Zmc2V0KCkud2lkdGgpOworICAgIEVYUEVDVF9GQUxTRShuZWVkQW5pbWF0
aW9uKTsKIH0KKwogI2VuZGlmCiAKIGNsYXNzIFRlc3RSZWxvYWREb2VzbnRSZWRpcmVjdFdlYkZy
YW1lQ2xpZW50IDogcHVibGljIFdlYkZyYW1lQ2xpZW50IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vdGVzdHMvZGF0YS9nZXRfc2NhbGVfZm9yX3pvb21faW50b19lZGl0YWJs
ZV90ZXN0Lmh0bWwgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL2RhdGEvZ2V0X3NjYWxl
X2Zvcl96b29tX2ludG9fZWRpdGFibGVfdGVzdC5odG1sCmluZGV4IDkxYzc0OGUzMGRjZmMzZTBi
OGQ5YzExZjg4MjRhNDc5MjZhMGI2NGEuLmFjZDUxOWNlOTljOGYwNDI2NTZlZmY0MThhZGFiNDIy
MDkwNjc3NDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvZGF0YS9n
ZXRfc2NhbGVfZm9yX3pvb21faW50b19lZGl0YWJsZV90ZXN0Lmh0bWwKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS90ZXN0cy9kYXRhL2dldF9zY2FsZV9mb3Jfem9vbV9pbnRvX2VkaXRhYmxl
X3Rlc3QuaHRtbApAQCAtMSwxNiArMSwxNCBAQAogPGh0bWw+CiA8aGVhZD4KLTxzY3JpcHQ+Ci1m
dW5jdGlvbiBnZXRmb2N1cygpCi17Ci12YXIgdGV4dGZpZWxkID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ0VkaXRCb3hXaXRoVGV4dCcpOwotdGV4dGZpZWxkLmZvY3VzKCk7Ci10ZXh0ZmllbGQu
c2V0U2VsZWN0aW9uUmFuZ2UodGV4dGZpZWxkLnZhbHVlLmxlbmd0aCx0ZXh0ZmllbGQudmFsdWUu
bGVuZ3RoKTsKLX0KLTwvc2NyaXB0PgorICA8c3R5bGU+CisgICAgaW5wdXQgeworICAgICAgZm9u
dC1zaXplOiAxM3B4OworICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsKKyAgICB9CisgIDwv
c3R5bGU+CiA8L2hlYWQ+Ci0gIDxib2R5IG9ubG9hZD0iZ2V0Zm9jdXMoKSI+Ci0gICAgICA8aW5w
dXQgaWQ9IkVkaXRCb3hXaXRoVGV4dCIgc3R5bGU9IiBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6
IDIwMHB4OyB0b3A6IDIwMHB4OyB3aWR0aDogMjUwOyBoZWlnaHQ6MjAiIHZhbHVlID0gIkxvbmcg
dGV4dCB0byBmaWxsIHRoZSBlZGl0IGJveCIgdHlwZT0idGV4dCI+Ci0gICAgICA8aW5wdXQgaWQ9
IkVkaXRCb3hXaXRoTm9UZXh0IiBzdHlsZT0iIHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMjAw
cHg7IHRvcDogMjUwcHg7IHdpZHRoOiAyNTA7IGhlaWdodDoyMCIgdHlwZT0idGV4dCI+Ci0gIDwv
Ym9keT4KKzxib2R5PgorICA8aW5wdXQgaWQ9IkVkaXRCb3hXaXRoVGV4dCIgc3R5bGU9IiBwb3Np
dGlvbjogYWJzb2x1dGU7IGxlZnQ6IDIwMHB4OyB0b3A6IDIwMHB4OyB3aWR0aDogMjUwcHg7IGhl
aWdodDoyMCIgdmFsdWUgPSAiTG9uZyBsb25nIGxvbmcgbG9uZyB0ZXh0IHRvIGZpbGwgdGhlIGVk
aXQgYm94IiB0eXBlPSJ0ZXh0Ij4KKyAgPGlucHV0IGlkPSJFZGl0Qm94V2l0aE5vVGV4dCIgc3R5
bGU9IiBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDIwMHB4OyB0b3A6IDI1MHB4OyB3aWR0aDog
MjUwcHg7IGhlaWdodDoyMCIgdHlwZT0idGV4dCI+Cis8L2JvZHk+CiA8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>