<?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>147021</bug_id>
          
          <creation_ts>2015-07-16 15:10:59 -0700</creation_ts>
          <short_desc>Add shrink-wrapped link highlights</short_desc>
          <delta_ts>2015-07-16 16:16:46 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>andersca</cc>
    
    <cc>enrica</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1109994</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-07-16 15:10:59 -0700</bug_when>
    <thetext>Add shrink-wrapped link highlights</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109996</commentid>
    <comment_count>1</comment_count>
      <attachid>256931</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-07-16 15:12:39 -0700</bug_when>
    <thetext>Created attachment 256931
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110008</commentid>
    <comment_count>2</comment_count>
      <attachid>256931</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-07-16 15:29:40 -0700</bug_when>
    <thetext>Comment on attachment 256931
Patch

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

&gt; Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm:2201
&gt; +                        RefPtr&lt;TextIndicator&gt; textIndicator = TextIndicator::createWithRange(*linkRange, TextIndicatorPresentationTransition::FadeIn, marginInPoints * deviceScaleFactor);

This should use TextIndicatorPresentationTransition::None (but it doesn&apos;t really matter as long as we don&apos;t use one that requires a contentImageWithHighlight).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110013</commentid>
    <comment_count>3</comment_count>
      <attachid>256931</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2015-07-16 15:58:08 -0700</bug_when>
    <thetext>Comment on attachment 256931
Patch

Looks good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110021</commentid>
    <comment_count>4</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2015-07-16 16:16:46 -0700</bug_when>
    <thetext>https://trac.webkit.org/changeset/186916</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256931</attachid>
            <date>2015-07-16 15:12:39 -0700</date>
            <delta_ts>2015-07-16 15:58:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-147021-20150716151130.patch</filename>
            <type>text/plain</type>
            <size>19294</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2OTAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmIyOTYzYjNkYzBmNWRm
MDVmNTBlNTZiYjNjYTA0ZGZjMmNmNDViZC4uOWE5ZGZjMDFkNmM1NzQwOTlkNWMwOGIyY2Q5ZWY0
MGVhZjdhMTQxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE1LTA3LTE2ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBzaHJpbmst
d3JhcHBlZCBsaW5rIGhpZ2hsaWdodHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE0NzAyMQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjE2NDMwOTQ+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFnZS9UZXh0SW5kaWNh
dG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlRleHRJbmRpY2F0b3I6OmNyZWF0ZVdpdGhSYW5n
ZSk6CisgICAgICAgIChXZWJDb3JlOjpUZXh0SW5kaWNhdG9yOjpjcmVhdGVXaXRoU2VsZWN0aW9u
SW5GcmFtZSk6CisgICAgICAgICogcGFnZS9UZXh0SW5kaWNhdG9yLmg6CisgICAgICAgIEFkZCBh
IG1hcmdpbiBwYXJhbWV0ZXIgdG8gVGV4dEluZGljYXRvcjsgdGhpcyBpbmZsYXRlcyBlYWNoIHRl
eHQgcmVjdAorICAgICAgICBieSB0aGUgZ2l2ZW4gYW1vdW50LgorCisgICAgICAgIFVzZSBzbmFw
c2hvdEZyYW1lUmVjdCBpbnN0ZWFkIG9mIHNuYXBzaG90U2VsZWN0aW9uIGJlY2F1c2Ugd2UgcmVh
bGx5CisgICAgICAgIHdhbnQgYW4gaW1hZ2UgdGhhdCBleGFjdGx5IGZpdHMgdGV4dEJvdW5kaW5n
UmVjdEluRG9jdW1lbnRDb29yZGluYXRlcywKKyAgICAgICAgYW5kIHNuYXBzaG90U2VsZWN0aW9u
IGNvbWVzIHVwIHdpdGggc2VsZWN0aW9uIHJlY3RzIGluIGRpZmZlcmVudCB3YXlzLAorICAgICAg
ICBlc3BlY2lhbGx5IG9uIGlPUyAod2hlcmUgaXQgY29tZXMgdXAgd2l0aCBub3RoaW5nISkuCisK
KyAgICAgICAgRm9yIG5vdywgYXZvaWQgZm9yY2luZyBibGFjayB0ZXh0IG9yIHBhaW50aW5nIG9u
bHkgdGhlIHNlbGVjdGlvbiBvbiBpT1MuCisgICAgICAgIEV2ZW50dWFsbHksIHdlIHNob3VsZCBo
YXZlIFRleHRJbmRpY2F0b3Igb3B0aW9ucyBmb3IgdGhlc2UgdGhpbmdzIHRoYXQKKyAgICAgICAg
YXJlIHRoZW4gcmVzcGVjdGVkIGF0IHRoZSBwcmVzZW50YXRpb24gbGF5ZXIuCisKIDIwMTUtMDct
MTYgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFdlYktpdCBk
b2N1bWVudC5jb29raWUgbWlzLXBhcnNpbmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZjRjYjUxZDQ0ZjNkYmE1
NjQ5MGUxNzQzOTIxMzhlMTViYTE0ZWQ2MS4uODk4MmY0YTZlNzhhOWFkMzkwMTkwOTViM2FlNzM0
NmNiMTJmMmQyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDE1LTA3LTE2ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBzaHJpbmst
d3JhcHBlZCBsaW5rIGhpZ2hsaWdodHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE0NzAyMQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjE2NDMwOTQ+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTaGFy
ZWQvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24uY3BwOgorICAgICAgICAoV2ViS2l0
OjpJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbjo6ZW5jb2RlKToKKyAgICAgICAgKFdl
YktpdDo6SW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb246OmRlY29kZSk6CisgICAgICAg
ICogU2hhcmVkL0ludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uLmg6CisgICAgICAgIEFk
ZCBhIFRleHRJbmRpY2F0b3IgdG8gSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24uCisg
ICAgICAgIE1ha2UgdXNlIG9mIHNvbWUgbmV3IEMrKyBmZWF0dXJlcy4KKworICAgICAgICAqIFVJ
UHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmg6CisgICAgICAgICogVUlQcm9j
ZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW06CisgICAgICAgICgtW1dLQ29udGVu
dFZpZXcgd2lsbFByZXNlbnRQcmV2aWV3Vmlld0NvbnRyb2xsZXI6Zm9yUG9zaXRpb246aW5Tb3Vy
Y2VWaWV3Ol0pOgorICAgICAgICAoLVtXS0NvbnRlbnRWaWV3IGRpZERpc21pc3NQcmV2aWV3Vmll
d0NvbnRyb2xsZXI6Y29tbWl0dGluZzpdKToKKyAgICAgICAgTWFrZSB1c2Ugb2YgdGhlIFRleHRJ
bmRpY2F0b3IgKGlmIHdlIGhhdmUgb25lKSB0byBzaG93IGEgc2hyaW5rLXdyYXBwZWQKKyAgICAg
ICAgc25hcHNob3Qgb2YgdGhlIGxpbmsuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2Uv
aW9zL1dlYlBhZ2VJT1MubW06CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmdldFBvc2l0aW9u
SW5mb3JtYXRpb24pOgorICAgICAgICBCdWlsZCBhIFRleHRJbmRpY2F0b3IgZm9yIHRoZSBsaW5r
IGlmIHBvc3NpYmxlLgorCiAyMDE1LTA3LTE2ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxl
LmNvbT4KIAogICAgICAgICBSZXZpZXcgZmVlZGJhY2sgZm9sbG93dXAgZm9yOgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDM3MDky
Y2EzZDY3ZWMyM2Y2YWZjNDE5ODRkMWViYzIzZDY4OTJlYzMuLmExZjJlYTY0OTc4N2YwOTRhNTRk
MjM1MWY4OWMwNjA1NmEyNzg5YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTExMjYsNyArMTEyNiw3IEBACiAJCTJENEY5NkY4
MUExRUNDMjQwMDk4QkY4OCAvKiBUZXh0SW5kaWNhdG9yV2luZG93Lm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ0Rjk2RjQxQTFFQ0MyNDAwOThCRjg4
IC8qIFRleHRJbmRpY2F0b3JXaW5kb3cubW0gKi87IH07CiAJCTJENTAwMkY4MUI1NkQ3ODEwMDIw
QUFGNyAvKiBET01QYXRoLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDJENTAwMkY3MUI1NkQ3ODEwMDIwQUFGNyAvKiBET01QYXRoLmNwcCAqLzsgfTsK
IAkJMkQ1MDAyRkIxQjU2RDc5OTAwMjBBQUY3IC8qIFBhdGhVdGlsaXRpZXMuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ1MDAyRjkxQjU2RDc5OTAw
MjBBQUY3IC8qIFBhdGhVdGlsaXRpZXMuY3BwICovOyB9OwotCQkyRDUwMDJGQzFCNTZENzk5MDAy
MEFBRjcgLyogUGF0aFV0aWxpdGllcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMkQ1MDAyRkExQjU2RDc5OTAwMjBBQUY3IC8qIFBhdGhVdGlsaXRpZXMu
aCAqLzsgfTsKKwkJMkQ1MDAyRkMxQjU2RDc5OTAwMjBBQUY3IC8qIFBhdGhVdGlsaXRpZXMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJENTAwMkZBMUI1
NkQ3OTkwMDIwQUFGNyAvKiBQYXRoVXRpbGl0aWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMkQ1OEQ4NTUxQTE1RjY1RjAwQTVGNzI2IC8qIERh
dGFEZXRlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDJENThEODUzMUExNUY2NUYwMEE1RjcyNiAvKiBEYXRhRGV0ZWN0aW9uLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMkQ1OEQ4NTYxQTE1RjY1
RjAwQTVGNzI2IC8qIERhdGFEZXRlY3Rpb24ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAyRDU4RDg1NDFBMTVGNjVGMDBBNUY3MjYgLyogRGF0YURldGVj
dGlvbi5tbSAqLzsgfTsKIAkJMkQ1OUYxQkYxQTAwNDRDNjAwMUYzRDI5IC8qIERhdGFEZXRlY3Rv
cnNTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJE
NTlGMUJFMUEwMDQ0QzYwMDFGM0QyOSAvKiBEYXRhRGV0ZWN0b3JzU1BJLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvVGV4dEluZGljYXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1RleHRJ
bmRpY2F0b3IuY3BwCmluZGV4IDQ3MWZhYjM3YmE4ODliMjZmMDliZjg1YjgzMWIyMzg0ZDVkMGI2
ZWYuLjkzYmNmZGY5YjQ3NGQyNjZjYzNlYjNkMjUwNzAzMDQzMmFjN2YyMWMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvVGV4dEluZGljYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9UZXh0SW5kaWNhdG9yLmNwcApAQCAtNDcsNyArNDcsNyBAQCBSZWY8VGV4dEluZGlj
YXRvcj4gVGV4dEluZGljYXRvcjo6Y3JlYXRlKGNvbnN0IFRleHRJbmRpY2F0b3JEYXRhJiBkYXRh
KQogICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFRleHRJbmRpY2F0b3IoZGF0YSkpOwogfQogCi1S
ZWZQdHI8VGV4dEluZGljYXRvcj4gVGV4dEluZGljYXRvcjo6Y3JlYXRlV2l0aFJhbmdlKGNvbnN0
IFJhbmdlJiByYW5nZSwgVGV4dEluZGljYXRvclByZXNlbnRhdGlvblRyYW5zaXRpb24gcHJlc2Vu
dGF0aW9uVHJhbnNpdGlvbikKK1JlZlB0cjxUZXh0SW5kaWNhdG9yPiBUZXh0SW5kaWNhdG9yOjpj
cmVhdGVXaXRoUmFuZ2UoY29uc3QgUmFuZ2UmIHJhbmdlLCBUZXh0SW5kaWNhdG9yUHJlc2VudGF0
aW9uVHJhbnNpdGlvbiBwcmVzZW50YXRpb25UcmFuc2l0aW9uLCB1bnNpZ25lZCBtYXJnaW4pCiB7
CiAgICAgRnJhbWUqIGZyYW1lID0gcmFuZ2Uuc3RhcnRDb250YWluZXIoKS0+ZG9jdW1lbnQoKS5m
cmFtZSgpOwogCkBAIC01Nyw3ICs1Nyw3IEBAIFJlZlB0cjxUZXh0SW5kaWNhdG9yPiBUZXh0SW5k
aWNhdG9yOjpjcmVhdGVXaXRoUmFuZ2UoY29uc3QgUmFuZ2UmIHJhbmdlLCBUZXh0SW5kCiAgICAg
VmlzaWJsZVNlbGVjdGlvbiBvbGRTZWxlY3Rpb24gPSBmcmFtZS0+c2VsZWN0aW9uKCkuc2VsZWN0
aW9uKCk7CiAgICAgZnJhbWUtPnNlbGVjdGlvbigpLnNldFNlbGVjdGlvbihyYW5nZSk7CiAKLSAg
ICBSZWZQdHI8VGV4dEluZGljYXRvcj4gaW5kaWNhdG9yID0gVGV4dEluZGljYXRvcjo6Y3JlYXRl
V2l0aFNlbGVjdGlvbkluRnJhbWUoKmZyYW1lLCBwcmVzZW50YXRpb25UcmFuc2l0aW9uKTsKKyAg
ICBSZWZQdHI8VGV4dEluZGljYXRvcj4gaW5kaWNhdG9yID0gVGV4dEluZGljYXRvcjo6Y3JlYXRl
V2l0aFNlbGVjdGlvbkluRnJhbWUoKmZyYW1lLCBwcmVzZW50YXRpb25UcmFuc2l0aW9uLCBtYXJn
aW4pOwogCiAgICAgZnJhbWUtPnNlbGVjdGlvbigpLnNldFNlbGVjdGlvbihvbGRTZWxlY3Rpb24p
OwogCkBAIC05MCwyNCArOTAsOCBAQCBzdGF0aWMgUmVmUHRyPEltYWdlPiBzbmFwc2hvdFNlbGVj
dGlvbldpdGhIaWdobGlnaHQoRnJhbWUmIGZyYW1lKQogICAgIHJldHVybiBzbmFwc2hvdC0+Y29w
eUltYWdlKENvcHlCYWNraW5nU3RvcmUsIFVuc2NhbGVkKTsKIH0KIAotUmVmUHRyPFRleHRJbmRp
Y2F0b3I+IFRleHRJbmRpY2F0b3I6OmNyZWF0ZVdpdGhTZWxlY3Rpb25JbkZyYW1lKEZyYW1lJiBm
cmFtZSwgVGV4dEluZGljYXRvclByZXNlbnRhdGlvblRyYW5zaXRpb24gcHJlc2VudGF0aW9uVHJh
bnNpdGlvbikKK1JlZlB0cjxUZXh0SW5kaWNhdG9yPiBUZXh0SW5kaWNhdG9yOjpjcmVhdGVXaXRo
U2VsZWN0aW9uSW5GcmFtZShGcmFtZSYgZnJhbWUsIFRleHRJbmRpY2F0b3JQcmVzZW50YXRpb25U
cmFuc2l0aW9uIHByZXNlbnRhdGlvblRyYW5zaXRpb24sIHVuc2lnbmVkIG1hcmdpbikKIHsKLSAg
ICBJbnRSZWN0IHNlbGVjdGlvblJlY3QgPSBlbmNsb3NpbmdJbnRSZWN0KGZyYW1lLnNlbGVjdGlv
bigpLnNlbGVjdGlvbkJvdW5kcygpKTsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8SW1hZ2VCdWZmZXI+
IGluZGljYXRvckJ1ZmZlciA9IHNuYXBzaG90U2VsZWN0aW9uKGZyYW1lLCBTbmFwc2hvdE9wdGlv
bnNGb3JjZUJsYWNrVGV4dCk7Ci0gICAgaWYgKCFpbmRpY2F0b3JCdWZmZXIpCi0gICAgICAgIHJl
dHVybiBudWxscHRyOwotICAgIFJlZlB0cjxJbWFnZT4gaW5kaWNhdG9yQml0bWFwID0gaW5kaWNh
dG9yQnVmZmVyLT5jb3B5SW1hZ2UoQ29weUJhY2tpbmdTdG9yZSwgVW5zY2FsZWQpOwotICAgIGlm
ICghaW5kaWNhdG9yQml0bWFwKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLQotICAgIFJlZlB0
cjxJbWFnZT4gaW5kaWNhdG9yQml0bWFwV2l0aEhpZ2hsaWdodDsKLSAgICBpZiAocHJlc2VudGF0
aW9uVHJhbnNpdGlvbiA9PSBUZXh0SW5kaWNhdG9yUHJlc2VudGF0aW9uVHJhbnNpdGlvbjo6Qm91
bmNlQW5kQ3Jvc3NmYWRlKQotICAgICAgICBpbmRpY2F0b3JCaXRtYXBXaXRoSGlnaGxpZ2h0ID0g
c25hcHNob3RTZWxlY3Rpb25XaXRoSGlnaGxpZ2h0KGZyYW1lKTsKLQotICAgIC8vIFN0b3JlIHRo
ZSBzZWxlY3Rpb24gcmVjdCBpbiB3aW5kb3cgY29vcmRpbmF0ZXMsIHRvIGJlIHVzZWQgc3Vic2Vx
dWVudGx5Ci0gICAgLy8gdG8gZGV0ZXJtaW5lIGlmIHRoZSBpbmRpY2F0b3IgYW5kIHNlbGVjdGlv
biBzdGlsbCBwcmVjaXNlbHkgb3ZlcmxhcC4KLSAgICBJbnRSZWN0IHNlbGVjdGlvblJlY3RJblJv
b3RWaWV3Q29vcmRpbmF0ZXMgPSBmcmFtZS52aWV3KCktPmNvbnRlbnRzVG9Sb290VmlldyhzZWxl
Y3Rpb25SZWN0KTsKLQogICAgIFZlY3RvcjxGbG9hdFJlY3Q+IHRleHRSZWN0czsKICAgICBmcmFt
ZS5zZWxlY3Rpb24oKS5nZXRDbGlwcGVkVmlzaWJsZVRleHRSZWN0YW5nbGVzKHRleHRSZWN0cyk7
CiAKQEAgLTExNSw5ICs5OSwxNSBAQCBSZWZQdHI8VGV4dEluZGljYXRvcj4gVGV4dEluZGljYXRv
cjo6Y3JlYXRlV2l0aFNlbGVjdGlvbkluRnJhbWUoRnJhbWUmIGZyYW1lLCBUZQogICAgIC8vIHJl
Y3Qgd2hlbiB0aGUgc2VsZWN0aW9uIHNwYW5zIG11bHRpcGxlIGxpbmVzOyB0aGUgaW5kaWNhdG9y
IGRvZXNuJ3QgYWN0dWFsbHkKICAgICAvLyBjYXJlIHdoZXJlIHRoZSBzZWxlY3Rpb24gaGlnaGxp
Z2h0IGdvZXMsIGp1c3Qgd2hlcmUgdGhlIHRleHQgYWN0dWFsbHkgaXMuCiAgICAgRmxvYXRSZWN0
IHRleHRCb3VuZGluZ1JlY3RJblJvb3RWaWV3Q29vcmRpbmF0ZXM7CisgICAgRmxvYXRSZWN0IHRl
eHRCb3VuZGluZ1JlY3RJbkRvY3VtZW50Q29vcmRpbmF0ZXM7CiAgICAgVmVjdG9yPEZsb2F0UmVj
dD4gdGV4dFJlY3RzSW5Sb290Vmlld0Nvb3JkaW5hdGVzOwogICAgIGZvciAoY29uc3QgRmxvYXRS
ZWN0JiB0ZXh0UmVjdCA6IHRleHRSZWN0cykgewotICAgICAgICBGbG9hdFJlY3QgdGV4dFJlY3RJ
blJvb3RWaWV3Q29vcmRpbmF0ZXMgPSBmcmFtZS52aWV3KCktPmNvbnRlbnRzVG9Sb290Vmlldyhl
bmNsb3NpbmdJbnRSZWN0KHRleHRSZWN0KSk7CisgICAgICAgIEZsb2F0UmVjdCB0ZXh0UmVjdElu
RG9jdW1lbnRDb29yZGluYXRlc0luY2x1ZGluZ01hcmdpbiA9IHRleHRSZWN0OworICAgICAgICB0
ZXh0UmVjdEluRG9jdW1lbnRDb29yZGluYXRlc0luY2x1ZGluZ01hcmdpbi5pbmZsYXRlKG1hcmdp
bik7CisKKyAgICAgICAgdGV4dEJvdW5kaW5nUmVjdEluRG9jdW1lbnRDb29yZGluYXRlcy51bml0
ZSh0ZXh0UmVjdEluRG9jdW1lbnRDb29yZGluYXRlc0luY2x1ZGluZ01hcmdpbik7CisKKyAgICAg
ICAgRmxvYXRSZWN0IHRleHRSZWN0SW5Sb290Vmlld0Nvb3JkaW5hdGVzID0gZnJhbWUudmlldygp
LT5jb250ZW50c1RvUm9vdFZpZXcoZW5jbG9zaW5nSW50UmVjdCh0ZXh0UmVjdEluRG9jdW1lbnRD
b29yZGluYXRlc0luY2x1ZGluZ01hcmdpbikpOwogICAgICAgICB0ZXh0UmVjdHNJblJvb3RWaWV3
Q29vcmRpbmF0ZXMuYXBwZW5kKHRleHRSZWN0SW5Sb290Vmlld0Nvb3JkaW5hdGVzKTsKICAgICAg
ICAgdGV4dEJvdW5kaW5nUmVjdEluUm9vdFZpZXdDb29yZGluYXRlcy51bml0ZSh0ZXh0UmVjdElu
Um9vdFZpZXdDb29yZGluYXRlcyk7CiAgICAgfQpAQCAtMTI4LDggKzExOCwyOSBAQCBSZWZQdHI8
VGV4dEluZGljYXRvcj4gVGV4dEluZGljYXRvcjo6Y3JlYXRlV2l0aFNlbGVjdGlvbkluRnJhbWUo
RnJhbWUmIGZyYW1lLCBUZQogICAgICAgICB0ZXh0UmVjdHNJbkJvdW5kaW5nUmVjdENvb3JkaW5h
dGVzLmFwcGVuZChyZWN0KTsKICAgICB9CiAKKyAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGhhdmUg
VGV4dEluZGljYXRvciBvcHRpb25zIGluc3RlYWQgb2YgdGhpcyBiZWluZyBwbGF0Zm9ybS1zcGVj
aWZpYy4KKyNpZiBQTEFURk9STShJT1MpCisgICAgU25hcHNob3RPcHRpb25zIHNuYXBzaG90T3B0
aW9ucyA9IFNuYXBzaG90T3B0aW9uc05vbmU7CisjZWxzZQorICAgIFNuYXBzaG90T3B0aW9ucyBz
bmFwc2hvdE9wdGlvbnMgPSBTbmFwc2hvdE9wdGlvbnNGb3JjZUJsYWNrVGV4dCB8IFNuYXBzaG90
T3B0aW9uc1BhaW50U2VsZWN0aW9uT25seTsKKyNlbmRpZgorCisgICAgc3RkOjp1bmlxdWVfcHRy
PEltYWdlQnVmZmVyPiBpbmRpY2F0b3JCdWZmZXIgPSBzbmFwc2hvdEZyYW1lUmVjdChmcmFtZSwg
ZW5jbG9zaW5nSW50UmVjdCh0ZXh0Qm91bmRpbmdSZWN0SW5Eb2N1bWVudENvb3JkaW5hdGVzKSwg
c25hcHNob3RPcHRpb25zKTsKKyAgICBpZiAoIWluZGljYXRvckJ1ZmZlcikKKyAgICAgICAgcmV0
dXJuIG51bGxwdHI7CisgICAgUmVmUHRyPEltYWdlPiBpbmRpY2F0b3JCaXRtYXAgPSBpbmRpY2F0
b3JCdWZmZXItPmNvcHlJbWFnZShDb3B5QmFja2luZ1N0b3JlLCBVbnNjYWxlZCk7CisgICAgaWYg
KCFpbmRpY2F0b3JCaXRtYXApCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgUmVmUHRy
PEltYWdlPiBpbmRpY2F0b3JCaXRtYXBXaXRoSGlnaGxpZ2h0OworICAgIGlmIChwcmVzZW50YXRp
b25UcmFuc2l0aW9uID09IFRleHRJbmRpY2F0b3JQcmVzZW50YXRpb25UcmFuc2l0aW9uOjpCb3Vu
Y2VBbmRDcm9zc2ZhZGUpCisgICAgICAgIGluZGljYXRvckJpdG1hcFdpdGhIaWdobGlnaHQgPSBz
bmFwc2hvdFNlbGVjdGlvbldpdGhIaWdobGlnaHQoZnJhbWUpOworCiAgICAgVGV4dEluZGljYXRv
ckRhdGEgZGF0YTsKLSAgICBkYXRhLnNlbGVjdGlvblJlY3RJblJvb3RWaWV3Q29vcmRpbmF0ZXMg
PSBzZWxlY3Rpb25SZWN0SW5Sb290Vmlld0Nvb3JkaW5hdGVzOworCisgICAgLy8gU3RvcmUgdGhl
IHNlbGVjdGlvbiByZWN0IGluIHdpbmRvdyBjb29yZGluYXRlcywgdG8gYmUgdXNlZCBzdWJzZXF1
ZW50bHkKKyAgICAvLyB0byBkZXRlcm1pbmUgaWYgdGhlIGluZGljYXRvciBhbmQgc2VsZWN0aW9u
IHN0aWxsIHByZWNpc2VseSBvdmVybGFwLgorICAgIGRhdGEuc2VsZWN0aW9uUmVjdEluUm9vdFZp
ZXdDb29yZGluYXRlcyA9IGZyYW1lLnZpZXcoKS0+Y29udGVudHNUb1Jvb3RWaWV3KGVuY2xvc2lu
Z0ludFJlY3QoZnJhbWUuc2VsZWN0aW9uKCkuc2VsZWN0aW9uQm91bmRzKCkpKTsKICAgICBkYXRh
LnRleHRCb3VuZGluZ1JlY3RJblJvb3RWaWV3Q29vcmRpbmF0ZXMgPSB0ZXh0Qm91bmRpbmdSZWN0
SW5Sb290Vmlld0Nvb3JkaW5hdGVzOwogICAgIGRhdGEudGV4dFJlY3RzSW5Cb3VuZGluZ1JlY3RD
b29yZGluYXRlcyA9IHRleHRSZWN0c0luQm91bmRpbmdSZWN0Q29vcmRpbmF0ZXM7CiAgICAgZGF0
YS5jb250ZW50SW1hZ2VTY2FsZUZhY3RvciA9IGZyYW1lLnBhZ2UoKS0+ZGV2aWNlU2NhbGVGYWN0
b3IoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvVGV4dEluZGljYXRvci5oIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9UZXh0SW5kaWNhdG9yLmgKaW5kZXggODk2ZTEwODc1ZjI0OGU1
Y2E0N2NiNDAwZGU4YWFmZGFlOTM5MjdlNi4uZWFkY2RlYjkyMTE5OGU4MWFkYjY4ZWE4NDdmYzVm
YmNlMzIzMDY3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9UZXh0SW5kaWNhdG9y
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9UZXh0SW5kaWNhdG9yLmgKQEAgLTgyLDggKzgy
LDggQEAgc3RydWN0IFRleHRJbmRpY2F0b3JEYXRhIHsKIGNsYXNzIFRleHRJbmRpY2F0b3IgOiBw
dWJsaWMgUmVmQ291bnRlZDxUZXh0SW5kaWNhdG9yPiB7CiBwdWJsaWM6CiAgICAgV0VCQ09SRV9F
WFBPUlQgc3RhdGljIFJlZjxUZXh0SW5kaWNhdG9yPiBjcmVhdGUoY29uc3QgVGV4dEluZGljYXRv
ckRhdGEmKTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgUmVmUHRyPFRleHRJbmRpY2F0b3I+
IGNyZWF0ZVdpdGhTZWxlY3Rpb25JbkZyYW1lKEZyYW1lJiwgVGV4dEluZGljYXRvclByZXNlbnRh
dGlvblRyYW5zaXRpb24pOwotICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWZQdHI8VGV4dElu
ZGljYXRvcj4gY3JlYXRlV2l0aFJhbmdlKGNvbnN0IFJhbmdlJiwgVGV4dEluZGljYXRvclByZXNl
bnRhdGlvblRyYW5zaXRpb24pOworICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBSZWZQdHI8VGV4
dEluZGljYXRvcj4gY3JlYXRlV2l0aFNlbGVjdGlvbkluRnJhbWUoRnJhbWUmLCBUZXh0SW5kaWNh
dG9yUHJlc2VudGF0aW9uVHJhbnNpdGlvbiwgdW5zaWduZWQgbWFyZ2luID0gMCk7CisgICAgV0VC
Q09SRV9FWFBPUlQgc3RhdGljIFJlZlB0cjxUZXh0SW5kaWNhdG9yPiBjcmVhdGVXaXRoUmFuZ2Uo
Y29uc3QgUmFuZ2UmLCBUZXh0SW5kaWNhdG9yUHJlc2VudGF0aW9uVHJhbnNpdGlvbiwgdW5zaWdu
ZWQgbWFyZ2luID0gMCk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB+VGV4dEluZGljYXRvcigpOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvSW50ZXJhY3Rpb25JbmZvcm1hdGlv
bkF0UG9zaXRpb24uY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0ludGVyYWN0aW9uSW5mb3Jt
YXRpb25BdFBvc2l0aW9uLmNwcAppbmRleCAzOTk2NzIxMmM4OTIwZDI4OWQwZjM0MTJhNjZlNWUx
M2NkZWM1OGFlLi4zYzZhMzhjMWYwYzU4MDA5ZmI3YjczZWY2OGM2NTBjNGI2NTIwZmM1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9z
aXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9JbnRlcmFjdGlvbkluZm9ybWF0
aW9uQXRQb3NpdGlvbi5jcHAKQEAgLTQ0LDYgKzQ0LDcgQEAgdm9pZCBJbnRlcmFjdGlvbkluZm9y
bWF0aW9uQXRQb3NpdGlvbjo6ZW5jb2RlKElQQzo6QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyKSBj
b24KICAgICBlbmNvZGVyIDw8IGltYWdlVVJMOwogICAgIGVuY29kZXIgPDwgdGl0bGU7CiAgICAg
ZW5jb2RlciA8PCBib3VuZHM7CisgICAgZW5jb2RlciA8PCBsaW5rSW5kaWNhdG9yOwogCiAgICAg
U2hhcmVhYmxlQml0bWFwOjpIYW5kbGUgaGFuZGxlOwogICAgIGlmIChpbWFnZSkKQEAgLTgzLDYg
Kzg0LDkgQEAgYm9vbCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbjo6ZGVjb2RlKElQ
Qzo6QXJndW1lbnREZWNvZGVyJiBkZWNvZGVyLCBJbnQKICAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KHJlc3VsdC5ib3VuZHMpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKKyAgICBpZiAoIWRlY29k
ZXIuZGVjb2RlKHJlc3VsdC5saW5rSW5kaWNhdG9yKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
CiAgICAgU2hhcmVhYmxlQml0bWFwOjpIYW5kbGUgaGFuZGxlOwogICAgIGlmICghZGVjb2Rlci5k
ZWNvZGUoaGFuZGxlKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvU2hhcmVkL0ludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24uaAppbmRl
eCAyYzE1MWJiYThiNGUwYmE1MDNlY2VjMjczZTZkYzdlZDA4Mjg2OWZkLi4zMzBkZjU0ZWQyNThk
YzdhMDY4YjBmNTc2ODdhYWFkN2U0N2Q2MTc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb24uaApAQCAtMjYsMzIg
KzI2LDIzIEBACiAjaWZuZGVmIEludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uX2gKICNk
ZWZpbmUgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9zaXRpb25faAogCisjaWYgUExBVEZPUk0o
SU9TKQorCiAjaW5jbHVkZSAiQXJndW1lbnRDb2RlcnMuaCIKICNpbmNsdWRlICJTaGFyZWFibGVC
aXRtYXAuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0ludFBvaW50Lmg+Ci0jaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+Ci0KLSNpZiBQTEFURk9STShJT1MpCiAjaW5jbHVkZSA8V2ViQ29yZS9T
ZWxlY3Rpb25SZWN0Lmg+Ci0jZW5kaWYKKyNpbmNsdWRlIDxXZWJDb3JlL1RleHRJbmRpY2F0b3Iu
aD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7
CiAKLSNpZiBQTEFURk9STShJT1MpCiBzdHJ1Y3QgSW50ZXJhY3Rpb25JbmZvcm1hdGlvbkF0UG9z
aXRpb24gewotICAgIEludGVyYWN0aW9uSW5mb3JtYXRpb25BdFBvc2l0aW9uKCkKLSAgICAgICAg
OiBub2RlQXRQb3NpdGlvbklzQXNzaXN0ZWROb2RlKGZhbHNlKQotICAgICAgICAsIGlzU2VsZWN0
YWJsZShmYWxzZSkKLSAgICAgICAgLCBpc05lYXJNYXJrZWRUZXh0KGZhbHNlKQotICAgICAgICAs
IHRvdWNoQ2FsbG91dEVuYWJsZWQodHJ1ZSkKLSAgICB7Ci0gICAgfQotCiAgICAgV2ViQ29yZTo6
SW50UG9pbnQgcG9pbnQ7Ci0gICAgYm9vbCBub2RlQXRQb3NpdGlvbklzQXNzaXN0ZWROb2RlOwot
ICAgIGJvb2wgaXNTZWxlY3RhYmxlOwotICAgIGJvb2wgaXNOZWFyTWFya2VkVGV4dDsKLSAgICBi
b29sIHRvdWNoQ2FsbG91dEVuYWJsZWQ7CisgICAgYm9vbCBub2RlQXRQb3NpdGlvbklzQXNzaXN0
ZWROb2RlIHsgZmFsc2UgfTsKKyAgICBib29sIGlzU2VsZWN0YWJsZSB7IGZhbHNlIH07CisgICAg
Ym9vbCBpc05lYXJNYXJrZWRUZXh0IHsgZmFsc2UgfTsKKyAgICBib29sIHRvdWNoQ2FsbG91dEVu
YWJsZWQgeyB0cnVlIH07CiAgICAgU3RyaW5nIGNsaWNrYWJsZUVsZW1lbnROYW1lOwogICAgIFN0
cmluZyB1cmw7CiAgICAgU3RyaW5nIGltYWdlVVJMOwpAQCAtNTksMTEgKzUwLDE0IEBAIHN0cnVj
dCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbiB7CiAgICAgV2ViQ29yZTo6SW50UmVj
dCBib3VuZHM7CiAgICAgUmVmUHRyPFNoYXJlYWJsZUJpdG1hcD4gaW1hZ2U7CiAKKyAgICBXZWJD
b3JlOjpUZXh0SW5kaWNhdG9yRGF0YSBsaW5rSW5kaWNhdG9yOworCiAgICAgdm9pZCBlbmNvZGUo
SVBDOjpBcmd1bWVudEVuY29kZXImKSBjb25zdDsKICAgICBzdGF0aWMgYm9vbCBkZWNvZGUoSVBD
OjpBcmd1bWVudERlY29kZXImLCBJbnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbiYpOwog
fTsKLSNlbmRpZgogCiB9CiAKKyNlbmRpZiAvLyBQTEFURk9STShJT1MpCisKICNlbmRpZiAvLyBJ
bnRlcmFjdGlvbkluZm9ybWF0aW9uQXRQb3NpdGlvbl9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24uaAppbmRleCAxYjlm
YWY0YTViZGU5YzMzZjhhNDIzY2M0MGU3ZjMxMGM4MThlMjhjLi40M2Q0YTFmZjUwZjUwNzg2ZDRl
MWQzYTg5NDVlMDg4ZWZiNDExNzk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLmgKQEAgLTE1Niw2ICsxNTYsOCBA
QCBlbnVtIGNsYXNzIFByZXZpZXdFbGVtZW50VHlwZSB7CiAgICAgaWQgPFVJVmlld0NvbnRyb2xs
ZXJQcmV2aWV3aW5nPiBfcHJldmlld2luZzsKICNlbmRpZgogCisgICAgUmV0YWluUHRyPFVJSW1h
Z2VWaWV3PiBfcHJldmlld0luZGljYXRvclZpZXc7CisKICAgICBCT09MIF9pc0VkaXRhYmxlOwog
ICAgIEJPT0wgX3Nob3dpbmdUZXh0U3R5bGVPcHRpb25zOwogICAgIEJPT0wgX2hhc1ZhbGlkUG9z
aXRpb25JbmZvcm1hdGlvbjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9p
b3MvV0tDb250ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2lvcy9XS0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggNjk1NDRmZDZiYzQ1M2JhYmI1
NjBjOGU1Y2VmODlhZmY2MzI1N2FjNC4uNTIzZWZhNzZjNmY4ODE1MmJjNGExYzU5M2NmZDFjNjRm
NDU0YmZiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9XS0NvbnRl
bnRWaWV3SW50ZXJhY3Rpb24ubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2lvcy9X
S0NvbnRlbnRWaWV3SW50ZXJhY3Rpb24ubW0KQEAgLTYyLDggKzYyLDExIEBACiAjaW1wb3J0IDxX
ZWJDb3JlL0NvcmVHcmFwaGljc1NQSS5oPgogI2ltcG9ydCA8V2ViQ29yZS9GbG9hdFF1YWQuaD4K
ICNpbXBvcnQgPFdlYkNvcmUvUGFzdGVib2FyZC5oPgorI2ltcG9ydCA8V2ViQ29yZS9QYXRoLmg+
CisjaW1wb3J0IDxXZWJDb3JlL1BhdGhVdGlsaXRpZXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2Ny
b2xsYmFyLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NvZnRMaW5raW5nLmg+CisjaW1wb3J0IDxXZWJD
b3JlL1RleHRJbmRpY2F0b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViRXZlbnQuaD4KICNpbXBv
cnQgPFdlYktpdC9XZWJTZWxlY3Rpb25SZWN0Lmg+IC8vIEZJWE1FOiBXSzIgc2hvdWxkIG5vdCBp
bmNsdWRlIFdlYktpdCBoZWFkZXJzIQogI2ltcG9ydCA8V2ViS2l0U3lzdGVtSW50ZXJmYWNlSU9T
Lmg+CkBAIC0zMzE1LDcgKzMzMTgsMzEgQEAgc3RhdGljIGJvb2wgaXNBc3Npc3RhYmxlSW5wdXRU
eXBlKElucHV0VHlwZSB0eXBlKQogICAgIFtzZWxmIF9yZW1vdmVEZWZhdWx0R2VzdHVyZVJlY29n
bml6ZXJzXTsKIAogICAgIFtzZWxmIF9jYW5jZWxJbnRlcmFjdGlvbl07Ci0gICAgW1t2aWV3Q29u
dHJvbGxlciBwcmVzZW50YXRpb25Db250cm9sbGVyXSBzZXRTb3VyY2VSZWN0Ol9wb3NpdGlvbklu
Zm9ybWF0aW9uLmJvdW5kc107CisKKyAgICBbX3ByZXZpZXdJbmRpY2F0b3JWaWV3IHJlbW92ZUZy
b21TdXBlcnZpZXddOworCisgICAgUmVmUHRyPEltYWdlPiBpbWFnZSA9IF9wb3NpdGlvbkluZm9y
bWF0aW9uLmxpbmtJbmRpY2F0b3IuY29udGVudEltYWdlOworICAgIGlmICghaW1hZ2UpIHsKKyAg
ICAgICAgW1t2aWV3Q29udHJvbGxlciBwcmVzZW50YXRpb25Db250cm9sbGVyXSBzZXRTb3VyY2VS
ZWN0Ol9wb3NpdGlvbkluZm9ybWF0aW9uLmJvdW5kc107CisgICAgICAgIFtbdmlld0NvbnRyb2xs
ZXIgcHJlc2VudGF0aW9uQ29udHJvbGxlcl0gc2V0U291cmNlVmlldzpzZWxmXTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KKworICAgIFJldGFpblB0cjxVSUltYWdlPiBpbmRpY2F0b3JJbWFnZSA9
IGFkb3B0TlMoW1tVSUltYWdlIGFsbG9jXSBpbml0V2l0aENHSW1hZ2U6aW1hZ2UtPmdldENHSW1h
Z2VSZWYoKV0pOworICAgIF9wcmV2aWV3SW5kaWNhdG9yVmlldyA9IGFkb3B0TlMoW1tVSUltYWdl
VmlldyBhbGxvY10gaW5pdFdpdGhJbWFnZTppbmRpY2F0b3JJbWFnZS5nZXQoKV0pOworCisgICAg
ZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IgPSBfcGFnZS0+ZGV2aWNlU2NhbGVGYWN0b3IoKTsKKyAg
ICBjb25zdCBmbG9hdCBjb3JuZXJSYWRpdXNJblBvaW50cyA9IDU7CisgICAgUGF0aCBwYXRoID0g
UGF0aFV0aWxpdGllczo6cGF0aFdpdGhTaHJpbmtXcmFwcGVkUmVjdHMoX3Bvc2l0aW9uSW5mb3Jt
YXRpb24ubGlua0luZGljYXRvci50ZXh0UmVjdHNJbkJvdW5kaW5nUmVjdENvb3JkaW5hdGVzLCBj
b3JuZXJSYWRpdXNJblBvaW50cyAqIGRldmljZVNjYWxlRmFjdG9yKTsKKyAgICBSZXRhaW5QdHI8
Q0FTaGFwZUxheWVyPiBtYXNrTGF5ZXIgPSBhZG9wdE5TKFtbQ0FTaGFwZUxheWVyIGFsbG9jXSBp
bml0XSk7CisgICAgW21hc2tMYXllciBzZXRQYXRoOnBhdGguZW5zdXJlUGxhdGZvcm1QYXRoKCld
OworCisgICAgW19wcmV2aWV3SW5kaWNhdG9yVmlldyBsYXllcl0ubWFzayA9IG1hc2tMYXllci5n
ZXQoKTsKKyAgICBbX3ByZXZpZXdJbmRpY2F0b3JWaWV3IHNldEZyYW1lOl9wb3NpdGlvbkluZm9y
bWF0aW9uLmxpbmtJbmRpY2F0b3IudGV4dEJvdW5kaW5nUmVjdEluUm9vdFZpZXdDb29yZGluYXRl
c107CisgICAgW3NlbGYgYWRkU3VidmlldzpfcHJldmlld0luZGljYXRvclZpZXcuZ2V0KCldOwor
CisgICAgW1t2aWV3Q29udHJvbGxlciBwcmVzZW50YXRpb25Db250cm9sbGVyXSBzZXRTb3VyY2VS
ZWN0OltfcHJldmlld0luZGljYXRvclZpZXcgYm91bmRzXV07CisgICAgW1t2aWV3Q29udHJvbGxl
ciBwcmVzZW50YXRpb25Db250cm9sbGVyXSBzZXRTb3VyY2VWaWV3Ol9wcmV2aWV3SW5kaWNhdG9y
Vmlldy5nZXQoKV07CiB9CiAKIC0gKHZvaWQpZGlkRGlzbWlzc1ByZXZpZXdWaWV3Q29udHJvbGxl
cjooVUlWaWV3Q29udHJvbGxlciAqKXZpZXdDb250cm9sbGVyIGNvbW1pdHRpbmc6KEJPT0wpY29t
bWl0dGluZwpAQCAtMzMyNiw2ICszMzUzLDkgQEAgc3RhdGljIGJvb2wgaXNBc3Npc3RhYmxlSW5w
dXRUeXBlKElucHV0VHlwZSB0eXBlKQogICAgIGlkPFdLVUlEZWxlZ2F0ZVByaXZhdGU+IHVpRGVs
ZWdhdGUgPSBzdGF0aWNfY2FzdDxpZCA8V0tVSURlbGVnYXRlUHJpdmF0ZT4+KFtfd2ViVmlldyBV
SURlbGVnYXRlXSk7CiAgICAgaWYgKFt1aURlbGVnYXRlIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2Vs
ZWN0b3IoX3dlYlZpZXc6ZGlkRGlzbWlzc1ByZXZpZXdWaWV3Q29udHJvbGxlcjopXSkKICAgICAg
ICAgW3VpRGVsZWdhdGUgX3dlYlZpZXc6X3dlYlZpZXcgZGlkRGlzbWlzc1ByZXZpZXdWaWV3Q29u
dHJvbGxlcjp2aWV3Q29udHJvbGxlcl07CisKKyAgICBbX3ByZXZpZXdJbmRpY2F0b3JWaWV3IHJl
bW92ZUZyb21TdXBlcnZpZXddOworICAgIF9wcmV2aWV3SW5kaWNhdG9yVmlldyA9IG5pbDsKIH0K
IAogQGVuZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2lv
cy9XZWJQYWdlSU9TLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9X
ZWJQYWdlSU9TLm1tCmluZGV4IDBiNTZlZGZmNWJlY2M1MTdkMjM2OGFlZTc4MzI5ZTdmOGQ1YTIw
OWQuLmFiZTA1MTcwNGRhZThhZjQzMTc5N2RhMjdhNjk3YjhhNDg3YTBjODQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KQEAg
LTg4LDYgKzg4LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvUmVuZGVyVmlldy5oPgogI2ltcG9ydCA8
V2ViQ29yZS9TaGFyZWRCdWZmZXIuaD4KICNpbXBvcnQgPFdlYkNvcmUvU3R5bGVQcm9wZXJ0aWVz
Lmg+CisjaW1wb3J0IDxXZWJDb3JlL1RleHRJbmRpY2F0b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUv
VGV4dEl0ZXJhdG9yLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Zpc2libGVVbml0cy5oPgogI2ltcG9y
dCA8V2ViQ29yZS9XS0NvbnRlbnRPYnNlcnZhdGlvbi5oPgpAQCAtMjE5Miw2ICsyMTkzLDE1IEBA
IHZvaWQgV2ViUGFnZTo6Z2V0UG9zaXRpb25JbmZvcm1hdGlvbihjb25zdCBJbnRQb2ludCYgcG9p
bnQsIEludGVyYWN0aW9uSW5mb3JtYXRpCiAgICAgICAgICAgICAgICAgICAgIC8vIEVuc3VyZSB0
aGF0IHRoZSBpbWFnZSBjb250YWlucyBhdCBtb3N0IDYwMEsgcGl4ZWxzLCBzbyB0aGF0IGl0IGlz
IG5vdCB0b28gYmlnLgogICAgICAgICAgICAgICAgICAgICBpZiAoUmVmUHRyPFdlYkltYWdlPiBz
bmFwc2hvdCA9IHNuYXBzaG90Tm9kZSgqZWxlbWVudCwgU25hcHNob3RPcHRpb25zU2hhcmVhYmxl
LCA2MDAgKiAxMDI0KSkKICAgICAgICAgICAgICAgICAgICAgICAgIGluZm8uaW1hZ2UgPSBzbmFw
c2hvdC0+Yml0bWFwKCk7CisKKyAgICAgICAgICAgICAgICAgICAgUmVmUHRyPFJhbmdlPiBsaW5r
UmFuZ2UgPSByYW5nZU9mQ29udGVudHMoKmxpbmtFbGVtZW50KTsKKyAgICAgICAgICAgICAgICAg
ICAgaWYgKGxpbmtSYW5nZSkgeworICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQgZGV2aWNl
U2NhbGVGYWN0b3IgPSBjb3JlUGFnZSgpLT5kZXZpY2VTY2FsZUZhY3RvcigpOworICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3QgZmxvYXQgbWFyZ2luSW5Qb2ludHMgPSA0OworICAgICAgICAg
ICAgICAgICAgICAgICAgUmVmUHRyPFRleHRJbmRpY2F0b3I+IHRleHRJbmRpY2F0b3IgPSBUZXh0
SW5kaWNhdG9yOjpjcmVhdGVXaXRoUmFuZ2UoKmxpbmtSYW5nZSwgVGV4dEluZGljYXRvclByZXNl
bnRhdGlvblRyYW5zaXRpb246OkZhZGVJbiwgbWFyZ2luSW5Qb2ludHMgKiBkZXZpY2VTY2FsZUZh
Y3Rvcik7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGV4dEluZGljYXRvcikKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbmZvLmxpbmtJbmRpY2F0b3IgPSB0ZXh0SW5kaWNhdG9y
LT5kYXRhKCk7CisgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9IGVsc2Ug
aWYgKGVsZW1lbnQtPnJlbmRlcmVyKCkgJiYgZWxlbWVudC0+cmVuZGVyZXIoKS0+aXNSZW5kZXJJ
bWFnZSgpKSB7CiAgICAgICAgICAgICAgICAgICAgIGF1dG8mIHJlbmRlckltYWdlID0gZG93bmNh
c3Q8UmVuZGVySW1hZ2U+KCooZWxlbWVudC0+cmVuZGVyZXIoKSkpOwogICAgICAgICAgICAgICAg
ICAgICBpZiAocmVuZGVySW1hZ2UuY2FjaGVkSW1hZ2UoKSAmJiAhcmVuZGVySW1hZ2UuY2FjaGVk
SW1hZ2UoKS0+ZXJyb3JPY2N1cnJlZCgpKSB7Cg==
</data>
<flag name="review"
          id="282042"
          type_id="1"
          status="+"
          setter="enrica"
    />
          </attachment>
      

    </bug>

</bugzilla>