<?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>211073</bug_id>
          
          <creation_ts>2020-04-27 06:00:57 -0700</creation_ts>
          <short_desc>[GTK4] Add support for motion events</short_desc>
          <delta_ts>2020-04-28 05:27:58 -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>WebKitGTK</component>
          <version>WebKit 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>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>211045</dependson>
          <blocked>210100</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aperez</cc>
    
    <cc>berto</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gustavo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1645973</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-04-27 06:00:57 -0700</bug_when>
    <thetext>enter, leave and motion</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1645974</commentid>
    <comment_count>1</comment_count>
      <attachid>397675</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-04-27 06:03:28 -0700</bug_when>
    <thetext>Created attachment 397675
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1646002</commentid>
    <comment_count>2</comment_count>
      <attachid>397675</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2020-04-27 07:59:13 -0700</bug_when>
    <thetext>Comment on attachment 397675
Patch

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

&gt; Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:1136
&gt; +    // FIXME: Forward event to dialog.

Wouldn&apos;t this be “if (priv-&gt;dialog) return GDK_EVENT_PROPAGATE;” like
in the function right above? If so, I think we should do it already for
this patch and remove this FIXME.

&gt; Tools/MiniBrowser/gtk/BrowserTab.c:410
&gt; +#if !GTK_CHECK_VERSION(3, 98, 0)

How about removing the margin also for GTK3 so we don&apos;t need the #if here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1646447</commentid>
    <comment_count>3</comment_count>
      <attachid>397675</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-04-28 04:49:37 -0700</bug_when>
    <thetext>Comment on attachment 397675
Patch

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

&gt;&gt; Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:1136
&gt;&gt; +    // FIXME: Forward event to dialog.
&gt; 
&gt; Wouldn&apos;t this be “if (priv-&gt;dialog) return GDK_EVENT_PROPAGATE;” like
&gt; in the function right above? If so, I think we should do it already for
&gt; this patch and remove this FIXME.

No, in the case of motion events we are not just returning propagate but chaining up. I don&apos;t remember why, so I prefer to wait until we implement the dialogs to see what we need to do here.

&gt;&gt; Tools/MiniBrowser/gtk/BrowserTab.c:410
&gt;&gt; +#if !GTK_CHECK_VERSION(3, 98, 0)
&gt; 
&gt; How about removing the margin also for GTK3 so we don&apos;t need the #if here?

Or adding it in the case of GTK4, but I don&apos;t know how or whether it&apos;s possible. This bug is not about this, that&apos;s why I didn&apos;t change any behavior here, I added back the overlay just to avoid runtime criticals and check that items are properly hovered.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1646452</commentid>
    <comment_count>4</comment_count>
      <attachid>397829</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-04-28 04:57:25 -0700</bug_when>
    <thetext>Created attachment 397829
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1646454</commentid>
    <comment_count>5</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2020-04-28 04:58:12 -0700</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1646460</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-04-28 05:27:58 -0700</bug_when>
    <thetext>Committed r260819: &lt;https://trac.webkit.org/changeset/260819&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397675</attachid>
            <date>2020-04-27 06:03:28 -0700</date>
            <delta_ts>2020-04-28 04:57:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wkgtk4-motion.diff</filename>
            <type>text/plain</type>
            <size>14195</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggM2U3N2VmZjY0ZGY1Li4wNGRkZjE3NTgzM2IgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMjQgQEAKKzIwMjAtMDQtMjcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtHVEs0XSBBZGQgc3VwcG9ydCBmb3IgbW90aW9uIGV2ZW50cwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExMDczCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSGFuZGxlIGVu
dGVyLCBsZWF2ZSBhbmQgbW90aW9uIGV2ZW50cyB1c2luZyBhIEd0a0V2ZW50Q29udHJvbGxlck1v
dGlvbi4KKworICAgICAgICAqIFNoYXJlZC9OYXRpdmVXZWJNb3VzZUV2ZW50Lmg6CisgICAgICAg
ICogU2hhcmVkL2d0ay9OYXRpdmVXZWJNb3VzZUV2ZW50R3RrLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6TmF0aXZlV2ViTW91c2VFdmVudDo6TmF0aXZlV2ViTW91c2VFdmVudCk6CisgICAgICAgICog
U2hhcmVkL2d0ay9XZWJFdmVudEZhY3RvcnkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJFdmVu
dEZhY3Rvcnk6OmNyZWF0ZVdlYk1vdXNlRXZlbnQpOgorICAgICAgICAqIFNoYXJlZC9ndGsvV2Vi
RXZlbnRGYWN0b3J5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmll
d0Jhc2UuY3BwOgorICAgICAgICAod2Via2l0V2ViVmlld0Jhc2VFbnRlcik6CisgICAgICAgICh3
ZWJraXRXZWJWaWV3QmFzZU1vdGlvbik6CisgICAgICAgICh3ZWJraXRXZWJWaWV3QmFzZUxlYXZl
KToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdCYXNlQ29uc3RydWN0ZWQpOgorCiAyMDIwLTA0LTI2
ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBb
R1RLNF0gQWRkIHN1cHBvcnQgZm9yIHNjcm9sbCBldmVudHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL05hdGl2ZVdlYk1vdXNlRXZlbnQuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L05hdGl2ZVdlYk1vdXNlRXZlbnQuaAppbmRleCA0YjhkYWM4ZWI5MzQuLjM1ZmRmYmIzMDk3YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvTmF0aXZlV2ViTW91c2VFdmVudC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL05hdGl2ZVdlYk1vdXNlRXZlbnQuaApAQCAtNjUsNiAr
NjUsOCBAQCBwdWJsaWM6CiAjZWxpZiBQTEFURk9STShHVEspCiAgICAgTmF0aXZlV2ViTW91c2VF
dmVudChjb25zdCBOYXRpdmVXZWJNb3VzZUV2ZW50Jik7CiAgICAgTmF0aXZlV2ViTW91c2VFdmVu
dChHZGtFdmVudCosIGludCwgT3B0aW9uYWw8V2ViQ29yZTo6SW50UG9pbnQ+KTsKKyAgICBOYXRp
dmVXZWJNb3VzZUV2ZW50KEdka0V2ZW50KiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBpbnQs
IE9wdGlvbmFsPFdlYkNvcmU6OkludFBvaW50Pik7CisgICAgZXhwbGljaXQgTmF0aXZlV2ViTW91
c2VFdmVudChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpOwogI2VsaWYgUExBVEZPUk0oSU9TX0ZB
TUlMWSkKICAgICBOYXRpdmVXZWJNb3VzZUV2ZW50KDo6V2ViRXZlbnQgKik7CiAgICAgTmF0aXZl
V2ViTW91c2VFdmVudChUeXBlLCBCdXR0b24sIHVuc2lnbmVkIHNob3J0IGJ1dHRvbnMsIGNvbnN0
IFdlYkNvcmU6OkludFBvaW50JiBwb3NpdGlvbiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIGds
b2JhbFBvc2l0aW9uLCBmbG9hdCBkZWx0YVgsIGZsb2F0IGRlbHRhWSwgZmxvYXQgZGVsdGFaLCBp
bnQgY2xpY2tDb3VudCwgT3B0aW9uU2V0PE1vZGlmaWVyPiwgV2FsbFRpbWUgdGltZXN0YW1wLCBk
b3VibGUgZm9yY2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvZ3RrL05hdGl2
ZVdlYk1vdXNlRXZlbnRHdGsuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvZ3RrL05hdGl2ZVdl
Yk1vdXNlRXZlbnRHdGsuY3BwCmluZGV4IGM3MDcwOTk1Zjg5YS4uN2FjZDk0YmVjNjAxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvTmF0aXZlV2ViTW91c2VFdmVudEd0ay5j
cHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvZ3RrL05hdGl2ZVdlYk1vdXNlRXZlbnRHdGsu
Y3BwCkBAIC0zNyw5ICszNywyMCBAQCBOYXRpdmVXZWJNb3VzZUV2ZW50OjpOYXRpdmVXZWJNb3Vz
ZUV2ZW50KEdka0V2ZW50KiBldmVudCwgaW50IGV2ZW50Q2xpY2tDb3VudCwgTwogewogfQogCitO
YXRpdmVXZWJNb3VzZUV2ZW50OjpOYXRpdmVXZWJNb3VzZUV2ZW50KEdka0V2ZW50KiBldmVudCwg
Y29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvc2l0aW9uLCBpbnQgZXZlbnRDbGlja0NvdW50LCBP
cHRpb25hbDxXZWJDb3JlOjpJbnRQb2ludD4gZGVsdGEpCisgICAgOiBXZWJNb3VzZUV2ZW50KFdl
YkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViTW91c2VFdmVudChldmVudCwgcG9zaXRpb24sIHBvc2l0
aW9uLCBldmVudENsaWNrQ291bnQsIGRlbHRhKSkKKyAgICAsIG1fbmF0aXZlRXZlbnQoZ2RrX2V2
ZW50X2NvcHkoZXZlbnQpKQoreworfQorCitOYXRpdmVXZWJNb3VzZUV2ZW50OjpOYXRpdmVXZWJN
b3VzZUV2ZW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiBwb3NpdGlvbikKKyAgICA6IFdlYk1v
dXNlRXZlbnQoV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJNb3VzZUV2ZW50KHBvc2l0aW9uKSkK
K3sKK30KKwogTmF0aXZlV2ViTW91c2VFdmVudDo6TmF0aXZlV2ViTW91c2VFdmVudChjb25zdCBO
YXRpdmVXZWJNb3VzZUV2ZW50JiBldmVudCkKLSAgICA6IFdlYk1vdXNlRXZlbnQoV2ViRXZlbnRG
YWN0b3J5OjpjcmVhdGVXZWJNb3VzZUV2ZW50KGV2ZW50Lm5hdGl2ZUV2ZW50KCksIGV2ZW50LmNs
aWNrQ291bnQoKSwgV2ViQ29yZTo6SW50UG9pbnQoZXZlbnQuZGVsdGFYKCksIGV2ZW50LmRlbHRh
WSgpKSkpCi0gICAgLCBtX25hdGl2ZUV2ZW50KGdka19ldmVudF9jb3B5KGNvbnN0X2Nhc3Q8R2Rr
RXZlbnQqPihldmVudC5uYXRpdmVFdmVudCgpKSkpCisgICAgOiBXZWJNb3VzZUV2ZW50KFdlYkV2
ZW50RmFjdG9yeTo6Y3JlYXRlV2ViTW91c2VFdmVudChldmVudC5uYXRpdmVFdmVudCgpLCBldmVu
dC5wb3NpdGlvbigpLCBldmVudC5nbG9iYWxQb3NpdGlvbigpLCBldmVudC5jbGlja0NvdW50KCks
IFdlYkNvcmU6OkludFBvaW50KGV2ZW50LmRlbHRhWCgpLCBldmVudC5kZWx0YVkoKSkpKQorICAg
ICwgbV9uYXRpdmVFdmVudChldmVudC5uYXRpdmVFdmVudCgpID8gZ2RrX2V2ZW50X2NvcHkoY29u
c3RfY2FzdDxHZGtFdmVudCo+KGV2ZW50Lm5hdGl2ZUV2ZW50KCkpKSA6IG51bGxwdHIpCiB7CiB9
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2d0ay9XZWJFdmVudEZhY3Rvcnku
Y3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5jcHAKaW5kZXgg
NTc0M2NhZjE4ZmJkLi5mYzQzZDAyOTUxOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hh
cmVkL2d0ay9XZWJFdmVudEZhY3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2d0
ay9XZWJFdmVudEZhY3RvcnkuY3BwCkBAIC0xNDAsMjEgKzE0MCwyOSBAQCBzdGF0aWMgaW5saW5l
IHNob3J0IHByZXNzZWRNb3VzZUJ1dHRvbnMoR2RrTW9kaWZpZXJUeXBlIHN0YXRlKQogCiBXZWJN
b3VzZUV2ZW50IFdlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViTW91c2VFdmVudChjb25zdCBHZGtF
dmVudCogZXZlbnQsIGludCBjdXJyZW50Q2xpY2tDb3VudCwgT3B0aW9uYWw8SW50UG9pbnQ+IGRl
bHRhKQogewotICAgIGRvdWJsZSB4LCB5LCB4Um9vdCwgeVJvb3Q7CisgICAgZG91YmxlIHgsIHk7
CiAgICAgZ2RrX2V2ZW50X2dldF9jb29yZHMoZXZlbnQsICZ4LCAmeSk7CisgICAgZG91YmxlIHhS
b290LCB5Um9vdDsKICAgICBnZGtfZXZlbnRfZ2V0X3Jvb3RfY29vcmRzKGV2ZW50LCAmeFJvb3Qs
ICZ5Um9vdCk7CiAKKyAgICByZXR1cm4gY3JlYXRlV2ViTW91c2VFdmVudChldmVudCwgeyBjbGFt
cFRvSW50ZWdlcih4KSwgY2xhbXBUb0ludGVnZXIoeSkgfSwgeyBjbGFtcFRvSW50ZWdlcih4Um9v
dCksIGNsYW1wVG9JbnRlZ2VyKHlSb290KSB9LCBjdXJyZW50Q2xpY2tDb3VudCwgZGVsdGEpOwor
fQorCitXZWJNb3VzZUV2ZW50IFdlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViTW91c2VFdmVudChj
b25zdCBHZGtFdmVudCogZXZlbnQsIGNvbnN0IEludFBvaW50JiBwb3NpdGlvbiwgY29uc3QgSW50
UG9pbnQmIGdsb2JhbFBvc2l0aW9uLCBpbnQgY3VycmVudENsaWNrQ291bnQsIE9wdGlvbmFsPElu
dFBvaW50PiBkZWx0YSkKK3sKKyNpZiBVU0UoR1RLNCkKKyAgICAvLyBUaGlzIGNhbiBoYXBwZW4g
d2hlbiBhIE5hdGl2ZVdlYk1vdXNlRXZlbnQgcmVwcmVzZW50aW5nIGEgY3Jvc3NpbmcgZXZlbnQg
aXMgY29waWVkLgorICAgIGlmICghZXZlbnQpCisgICAgICAgIHJldHVybiBjcmVhdGVXZWJNb3Vz
ZUV2ZW50KHBvc2l0aW9uKTsKKyNlbmRpZgorCiAgICAgR2RrTW9kaWZpZXJUeXBlIHN0YXRlID0g
c3RhdGljX2Nhc3Q8R2RrTW9kaWZpZXJUeXBlPigwKTsKICAgICBnZGtfZXZlbnRfZ2V0X3N0YXRl
KGV2ZW50LCAmc3RhdGUpOwogCi0gICAgZ3VpbnQgZXZlbnRCdXR0b247Ci0gICAgZ2RrX2V2ZW50
X2dldF9idXR0b24oZXZlbnQsICZldmVudEJ1dHRvbik7Ci0KICAgICBXZWJFdmVudDo6VHlwZSB0
eXBlID0gc3RhdGljX2Nhc3Q8V2ViRXZlbnQ6OlR5cGU+KDApOwogICAgIEludFBvaW50IG1vdmVt
ZW50RGVsdGE7CiAKLSAgICBHZGtFdmVudFR5cGUgZXZlbnRUeXBlID0gZ2RrX2V2ZW50X2dldF9l
dmVudF90eXBlKGNvbnN0X2Nhc3Q8R2RrRXZlbnQqPihldmVudCkpOwotICAgIHN3aXRjaCAoZXZl
bnRUeXBlKSB7CisgICAgc3dpdGNoIChnZGtfZXZlbnRfZ2V0X2V2ZW50X3R5cGUoY29uc3RfY2Fz
dDxHZGtFdmVudCo+KGV2ZW50KSkpIHsKICAgICBjYXNlIEdES19NT1RJT05fTk9USUZZOgogICAg
IGNhc2UgR0RLX0VOVEVSX05PVElGWToKICAgICBjYXNlIEdES19MRUFWRV9OT1RJRlk6CkBAIC0x
NjgsMTIgKzE3NiwxNiBAQCBXZWJNb3VzZUV2ZW50IFdlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2Vi
TW91c2VFdmVudChjb25zdCBHZGtFdmVudCogZXZlbnQsIGludCBjdQogI2VuZGlmCiAgICAgY2Fz
ZSBHREtfQlVUVE9OX1BSRVNTOiB7CiAgICAgICAgIHR5cGUgPSBXZWJFdmVudDo6TW91c2VEb3du
OworICAgICAgICBndWludCBldmVudEJ1dHRvbjsKKyAgICAgICAgZ2RrX2V2ZW50X2dldF9idXR0
b24oZXZlbnQsICZldmVudEJ1dHRvbik7CiAgICAgICAgIGF1dG8gbW9kaWZpZXIgPSBzdGF0ZU1v
ZGlmaWVyRm9yR2RrQnV0dG9uKGV2ZW50QnV0dG9uKTsKICAgICAgICAgc3RhdGUgPSBzdGF0aWNf
Y2FzdDxHZGtNb2RpZmllclR5cGU+KHN0YXRlIHwgbW9kaWZpZXIpOwogICAgICAgICBicmVhazsK
ICAgICB9CiAgICAgY2FzZSBHREtfQlVUVE9OX1JFTEVBU0U6IHsKICAgICAgICAgdHlwZSA9IFdl
YkV2ZW50OjpNb3VzZVVwOworICAgICAgICBndWludCBldmVudEJ1dHRvbjsKKyAgICAgICAgZ2Rr
X2V2ZW50X2dldF9idXR0b24oZXZlbnQsICZldmVudEJ1dHRvbik7CiAgICAgICAgIGF1dG8gbW9k
aWZpZXIgPSBzdGF0ZU1vZGlmaWVyRm9yR2RrQnV0dG9uKGV2ZW50QnV0dG9uKTsKICAgICAgICAg
c3RhdGUgPSBzdGF0aWNfY2FzdDxHZGtNb2RpZmllclR5cGU+KHN0YXRlICYgfm1vZGlmaWVyKTsK
ICAgICAgICAgYnJlYWs7CkBAIC0xODUsOCArMTk3LDggQEAgV2ViTW91c2VFdmVudCBXZWJFdmVu
dEZhY3Rvcnk6OmNyZWF0ZVdlYk1vdXNlRXZlbnQoY29uc3QgR2RrRXZlbnQqIGV2ZW50LCBpbnQg
Y3UKICAgICByZXR1cm4gV2ViTW91c2VFdmVudCh0eXBlLAogICAgICAgICBidXR0b25Gb3JFdmVu
dChldmVudCksCiAgICAgICAgIHByZXNzZWRNb3VzZUJ1dHRvbnMoc3RhdGUpLAotICAgICAgICBJ
bnRQb2ludCh4LCB5KSwKLSAgICAgICAgSW50UG9pbnQoeFJvb3QsIHlSb290KSwKKyAgICAgICAg
cG9zaXRpb24sCisgICAgICAgIGdsb2JhbFBvc2l0aW9uLAogICAgICAgICBtb3ZlbWVudERlbHRh
LngoKSwKICAgICAgICAgbW92ZW1lbnREZWx0YS55KCksCiAgICAgICAgIDAgLyogZGVsdGFaICov
LApAQCAtMTk1LDYgKzIwNywxMiBAQCBXZWJNb3VzZUV2ZW50IFdlYkV2ZW50RmFjdG9yeTo6Y3Jl
YXRlV2ViTW91c2VFdmVudChjb25zdCBHZGtFdmVudCogZXZlbnQsIGludCBjdQogICAgICAgICB3
YWxsVGltZUZvckV2ZW50KGV2ZW50KSk7CiB9CiAKK1dlYk1vdXNlRXZlbnQgV2ViRXZlbnRGYWN0
b3J5OjpjcmVhdGVXZWJNb3VzZUV2ZW50KGNvbnN0IEludFBvaW50JiBwb3NpdGlvbikKK3sKKyAg
ICAvLyBNb3VzZSBldmVudHMgd2l0aG91dCBHZGtFdmVudCBhcmUgY3Jvc3NpbmcgZXZlbnRzLCBo
YW5kbGVkIGFzIGEgbW91c2UgbW92ZS4KKyAgICByZXR1cm4gV2ViTW91c2VFdmVudChXZWJFdmVu
dDo6TW91c2VNb3ZlLCBXZWJNb3VzZUV2ZW50OjpOb0J1dHRvbiwgMCwgcG9zaXRpb24sIHBvc2l0
aW9uLCAwLCAwLCAwLCAwLCB7IH0sIFdhbGxUaW1lOjpub3coKSk7Cit9CisKIFdlYldoZWVsRXZl
bnQgV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJXaGVlbEV2ZW50KGNvbnN0IEdka0V2ZW50KiBl
dmVudCkKIHsKICAgICBXZWJXaGVlbEV2ZW50OjpQaGFzZSBwaGFzZSA9IGdka19ldmVudF9pc19z
Y3JvbGxfc3RvcF9ldmVudChldmVudCkgPwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFy
ZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvZ3RrL1dlYkV2
ZW50RmFjdG9yeS5oCmluZGV4IGIyZGQ0NzgwM2JjOC4uMTRiYmE5ODVlN2FkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvV2ViRXZlbnRGYWN0b3J5LmgKKysrIGIvU291cmNl
L1dlYktpdC9TaGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5oCkBAIC0zOSw2ICszOSw4IEBAIG5h
bWVzcGFjZSBXZWJLaXQgewogY2xhc3MgV2ViRXZlbnRGYWN0b3J5IHsKIHB1YmxpYzoKICAgICBz
dGF0aWMgV2ViTW91c2VFdmVudCBjcmVhdGVXZWJNb3VzZUV2ZW50KGNvbnN0IEdka0V2ZW50Kiwg
aW50LCBPcHRpb25hbDxXZWJDb3JlOjpJbnRQb2ludD4pOworICAgIHN0YXRpYyBXZWJNb3VzZUV2
ZW50IGNyZWF0ZVdlYk1vdXNlRXZlbnQoY29uc3QgR2RrRXZlbnQqLCBjb25zdCBXZWJDb3JlOjpJ
bnRQb2ludCYsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgaW50LCBPcHRpb25hbDxXZWJDb3Jl
OjpJbnRQb2ludD4pOworICAgIHN0YXRpYyBXZWJNb3VzZUV2ZW50IGNyZWF0ZVdlYk1vdXNlRXZl
bnQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmKTsKICAgICBzdGF0aWMgV2ViV2hlZWxFdmVudCBj
cmVhdGVXZWJXaGVlbEV2ZW50KGNvbnN0IEdka0V2ZW50Kik7CiAgICAgc3RhdGljIFdlYldoZWVs
RXZlbnQgY3JlYXRlV2ViV2hlZWxFdmVudChjb25zdCBHZGtFdmVudCosIFdlYldoZWVsRXZlbnQ6
OlBoYXNlLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSBtb21lbnR1bVBoYXNlKTsKICAgICBzdGF0aWMg
V2ViV2hlZWxFdmVudCBjcmVhdGVXZWJXaGVlbEV2ZW50KGNvbnN0IEdka0V2ZW50KiwgY29uc3Qg
V2ViQ29yZTo6SW50UG9pbnQmLCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIFdlYldoZWVsRXZl
bnQ6OlBoYXNlLCBXZWJXaGVlbEV2ZW50OjpQaGFzZSBtb21lbnR1bVBoYXNlKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3Bw
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAK
aW5kZXggMGQzNDVjMmI0MjljLi4wZTliOTQ0YmRlYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCkBAIC0xMTExLDYg
KzExMTEsNTUgQEAgc3RhdGljIGdib29sZWFuIHdlYmtpdFdlYlZpZXdCYXNlQ3Jvc3NpbmdOb3Rp
ZnlFdmVudChHdGtXaWRnZXQqIHdpZGdldCwgR2RrRXZlbnQKIH0KICNlbmRpZgogCisjaWYgVVNF
KEdUSzQpCitzdGF0aWMgZ2Jvb2xlYW4gd2Via2l0V2ViVmlld0Jhc2VFbnRlcihXZWJLaXRXZWJW
aWV3QmFzZSogd2ViVmlld0Jhc2UsIGRvdWJsZSB4LCBkb3VibGUgeSwgR2RrQ3Jvc3NpbmdNb2Rl
LCBHdGtFdmVudENvbnRyb2xsZXIqIGNvbnRyb2xsZXIpCit7CisgICAgV2ViS2l0V2ViVmlld0Jh
c2VQcml2YXRlKiBwcml2ID0gd2ViVmlld0Jhc2UtPnByaXY7CisgICAgaWYgKHByaXYtPmRpYWxv
ZykKKyAgICAgICAgcmV0dXJuIEdES19FVkVOVF9QUk9QQUdBVEU7CisKKyNpZiBFTkFCTEUoREVW
RUxPUEVSX01PREUpCisgICAgLy8gRG8gbm90IHNlbmQgbW91c2UgbW92ZSBldmVudHMgdG8gdGhl
IFdlYlByb2Nlc3MgZm9yIGNyb3NzaW5nIGV2ZW50cyBkdXJpbmcgdGVzdGluZy4KKyAgICAvLyBX
VFIgbmV2ZXIgZ2VuZXJhdGVzIGNyb3NzaW5nIGV2ZW50cyBhbmQgdGhleSBjYW4gY29uZnVzZSB0
ZXN0cy4KKyAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg1
MDcyLgorICAgIGlmIChVTkxJS0VMWShwcml2LT5wYWdlUHJveHktPnByb2Nlc3MoKS5wcm9jZXNz
UG9vbCgpLmNvbmZpZ3VyYXRpb24oKS5mdWxseVN5bmNocm9ub3VzTW9kZUlzQWxsb3dlZEZvclRl
c3RpbmcoKSkpCisgICAgICAgIHJldHVybiBHREtfRVZFTlRfUFJPUEFHQVRFOworI2VuZGlmCisK
KyAgICBwcml2LT5wYWdlUHJveHktPmhhbmRsZU1vdXNlRXZlbnQoTmF0aXZlV2ViTW91c2VFdmVu
dCh7IGNsYW1wVG9JbnRlZ2VyKHgpLCBjbGFtcFRvSW50ZWdlcih5KSB9KSk7CisKKyAgICByZXR1
cm4gR0RLX0VWRU5UX1BST1BBR0FURTsKK30KKworc3RhdGljIGdib29sZWFuIHdlYmtpdFdlYlZp
ZXdCYXNlTW90aW9uKFdlYktpdFdlYlZpZXdCYXNlKiB3ZWJWaWV3QmFzZSwgZG91YmxlIHgsIGRv
dWJsZSB5LCBHdGtFdmVudENvbnRyb2xsZXIqIGNvbnRyb2xsZXIpCit7CisgICAgLy8gRklYTUU6
IEZvcndhcmQgZXZlbnQgdG8gZGlhbG9nLgorICAgIC8vIEZJWE1FOiBQb2ludGVyIGxvY2suCisg
ICAgd2ViVmlld0Jhc2UtPnByaXYtPnBhZ2VQcm94eS0+aGFuZGxlTW91c2VFdmVudChOYXRpdmVX
ZWJNb3VzZUV2ZW50KGd0a19ldmVudF9jb250cm9sbGVyX2dldF9jdXJyZW50X2V2ZW50KGNvbnRy
b2xsZXIpLCB7IGNsYW1wVG9JbnRlZ2VyKHgpLCBjbGFtcFRvSW50ZWdlcih5KSB9LCAwLCBXVEY6
Om51bGxvcHQpKTsKKworICAgIHJldHVybiBHREtfRVZFTlRfUFJPUEFHQVRFOworfQorCitzdGF0
aWMgZ2Jvb2xlYW4gd2Via2l0V2ViVmlld0Jhc2VMZWF2ZShXZWJLaXRXZWJWaWV3QmFzZSogd2Vi
Vmlld0Jhc2UsIEdka0Nyb3NzaW5nTW9kZSwgR3RrRXZlbnRDb250cm9sbGVyKiBjb250cm9sbGVy
KQoreworICAgIFdlYktpdFdlYlZpZXdCYXNlUHJpdmF0ZSogcHJpdiA9IHdlYlZpZXdCYXNlLT5w
cml2OworICAgIGlmIChwcml2LT5kaWFsb2cpCisgICAgICAgIHJldHVybiBHREtfRVZFTlRfUFJP
UEFHQVRFOworCisjaWYgRU5BQkxFKERFVkVMT1BFUl9NT0RFKQorICAgIC8vIERvIG5vdCBzZW5k
IG1vdXNlIG1vdmUgZXZlbnRzIHRvIHRoZSBXZWJQcm9jZXNzIGZvciBjcm9zc2luZyBldmVudHMg
ZHVyaW5nIHRlc3RpbmcuCisgICAgLy8gV1RSIG5ldmVyIGdlbmVyYXRlcyBjcm9zc2luZyBldmVu
dHMgYW5kIHRoZXkgY2FuIGNvbmZ1c2UgdGVzdHMuCisgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NTA3Mi4KKyAgICBpZiAoVU5MSUtFTFkocHJpdi0+cGFn
ZVByb3h5LT5wcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5jb25maWd1cmF0aW9uKCkuZnVsbHlTeW5j
aHJvbm91c01vZGVJc0FsbG93ZWRGb3JUZXN0aW5nKCkpKQorICAgICAgICByZXR1cm4gR0RLX0VW
RU5UX1BST1BBR0FURTsKKyNlbmRpZgorCisgICAgcHJpdi0+cGFnZVByb3h5LT5oYW5kbGVNb3Vz
ZUV2ZW50KE5hdGl2ZVdlYk1vdXNlRXZlbnQoeyAtMSwgLTEgfSkpOworCisgICAgcmV0dXJuIEdE
S19FVkVOVF9QUk9QQUdBVEU7Cit9CisjZW5kaWYKKwogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMp
ICYmICFVU0UoR1RLNCkKIHN0YXRpYyB2b2lkIGFwcGVuZFRvdWNoRXZlbnQoVmVjdG9yPFdlYlBs
YXRmb3JtVG91Y2hQb2ludD4mIHRvdWNoUG9pbnRzLCBjb25zdCBHZGtFdmVudCogZXZlbnQsIFdl
YlBsYXRmb3JtVG91Y2hQb2ludDo6VG91Y2hQb2ludFN0YXRlIHN0YXRlKQogewpAQCAtMTUyMiw2
ICsxNTcxLDEyIEBAIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlQ29uc3RydWN0ZWQoR09i
amVjdCogb2JqZWN0KQogICAgIGF1dG8qIGNvbnRyb2xsZXIgPSBndGtfZXZlbnRfY29udHJvbGxl
cl9zY3JvbGxfbmV3KEdUS19FVkVOVF9DT05UUk9MTEVSX1NDUk9MTF9CT1RIX0FYRVMpOwogICAg
IGdfc2lnbmFsX2Nvbm5lY3Rfb2JqZWN0KGNvbnRyb2xsZXIsICJzY3JvbGwiLCBHX0NBTExCQUNL
KHdlYmtpdFdlYlZpZXdCYXNlU2Nyb2xsKSwgdmlld1dpZGdldCwgR19DT05ORUNUX1NXQVBQRUQp
OwogICAgIGd0a193aWRnZXRfYWRkX2NvbnRyb2xsZXIodmlld1dpZGdldCwgY29udHJvbGxlcik7
CisKKyAgICBjb250cm9sbGVyID0gZ3RrX2V2ZW50X2NvbnRyb2xsZXJfbW90aW9uX25ldygpOwor
ICAgIGdfc2lnbmFsX2Nvbm5lY3Rfb2JqZWN0KGNvbnRyb2xsZXIsICJlbnRlciIsIEdfQ0FMTEJB
Q0sod2Via2l0V2ViVmlld0Jhc2VFbnRlciksIHZpZXdXaWRnZXQsIEdfQ09OTkVDVF9TV0FQUEVE
KTsKKyAgICBnX3NpZ25hbF9jb25uZWN0X29iamVjdChjb250cm9sbGVyLCAibW90aW9uIiwgR19D
QUxMQkFDSyh3ZWJraXRXZWJWaWV3QmFzZU1vdGlvbiksIHZpZXdXaWRnZXQsIEdfQ09OTkVDVF9T
V0FQUEVEKTsKKyAgICBnX3NpZ25hbF9jb25uZWN0X29iamVjdChjb250cm9sbGVyLCAibGVhdmUi
LCBHX0NBTExCQUNLKHdlYmtpdFdlYlZpZXdCYXNlTGVhdmUpLCB2aWV3V2lkZ2V0LCBHX0NPTk5F
Q1RfU1dBUFBFRCk7CisgICAgZ3RrX3dpZGdldF9hZGRfY29udHJvbGxlcih2aWV3V2lkZ2V0LCBj
b250cm9sbGVyKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9U
b29scy9DaGFuZ2VMb2cKaW5kZXggMGZkZWQ0NjBmMDc1Li5kNGYyNjM0M2QwMTAgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBA
QAorMjAyMC0wNC0yNyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+
CisKKyAgICAgICAgW0dUSzRdIEFkZCBzdXBwb3J0IGZvciBtb3Rpb24gZXZlbnRzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTEwNzMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgdGhlIEd0a092ZXJs
YXkgaW4gR1RLNCB0b28gc28gdGhhdCBzdGF0dXMgbGFiZWwgaXMgc2hvd24gd2hlbiBob3Zlcmlu
ZyBlbGVtZW50cy4KKworICAgICAgICAqIE1pbmlCcm93c2VyL2d0ay9Ccm93c2VyVGFiLmM6Cisg
ICAgICAgIChicm93c2VyVGFiQ29uc3RydWN0ZWQpOgorCiAyMDIwLTA0LTI0ICBDYXJsb3MgR2Fy
Y2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLNF0gTWFrZSBp
dCBwb3NzaWJsZSB0byBidWlsZCB3aXRoIEdUSzQgd2l0aG91dCBlcnJvcnMKZGlmZiAtLWdpdCBh
L1Rvb2xzL01pbmlCcm93c2VyL2d0ay9Ccm93c2VyVGFiLmMgYi9Ub29scy9NaW5pQnJvd3Nlci9n
dGsvQnJvd3NlclRhYi5jCmluZGV4IDZjMTc5YzRjOGZhOC4uNGE3ODhhMTdkZTNlIDEwMDY0NAot
LS0gYS9Ub29scy9NaW5pQnJvd3Nlci9ndGsvQnJvd3NlclRhYi5jCisrKyBiL1Rvb2xzL01pbmlC
cm93c2VyL2d0ay9Ccm93c2VyVGFiLmMKQEAgLTM5OCwzNyArMzk4LDQxIEBAIHN0YXRpYyB2b2lk
IGJyb3dzZXJUYWJDb25zdHJ1Y3RlZChHT2JqZWN0ICpnT2JqZWN0KQogI2lmICFHVEtfQ0hFQ0tf
VkVSU0lPTigzLCA5OCwgMCkKICAgICB0YWItPnNlYXJjaEJhciA9IEJST1dTRVJfU0VBUkNIX0JB
Uihicm93c2VyX3NlYXJjaF9iYXJfbmV3KHRhYi0+d2ViVmlldykpOwogICAgIGd0a19ib3hfcGFj
a19zdGFydChHVEtfQk9YKHRhYiksIEdUS19XSURHRVQodGFiLT5zZWFyY2hCYXIpLCBGQUxTRSwg
RkFMU0UsIDApOworI2VuZGlmCiAKICAgICBHdGtXaWRnZXQgKm92ZXJsYXkgPSBndGtfb3Zlcmxh
eV9uZXcoKTsKLSAgICBndGtfYm94X3BhY2tfc3RhcnQoR1RLX0JPWCh0YWIpLCBvdmVybGF5LCBU
UlVFLCBUUlVFLCAwKTsKKyAgICBndGtfY29udGFpbmVyX2FkZChHVEtfQ09OVEFJTkVSKHRhYiks
IG92ZXJsYXkpOwogICAgIGd0a193aWRnZXRfc2hvdyhvdmVybGF5KTsKIAogICAgIHRhYi0+c3Rh
dHVzTGFiZWwgPSBndGtfbGFiZWxfbmV3KE5VTEwpOwogICAgIGd0a193aWRnZXRfc2V0X2hhbGln
bih0YWItPnN0YXR1c0xhYmVsLCBHVEtfQUxJR05fU1RBUlQpOwogICAgIGd0a193aWRnZXRfc2V0
X3ZhbGlnbih0YWItPnN0YXR1c0xhYmVsLCBHVEtfQUxJR05fRU5EKTsKKyNpZiAhR1RLX0NIRUNL
X1ZFUlNJT04oMywgOTgsIDApCiAgICAgZ3RrX3dpZGdldF9zZXRfbWFyZ2luX2xlZnQodGFiLT5z
dGF0dXNMYWJlbCwgMSk7CiAgICAgZ3RrX3dpZGdldF9zZXRfbWFyZ2luX3JpZ2h0KHRhYi0+c3Rh
dHVzTGFiZWwsIDEpOwogICAgIGd0a193aWRnZXRfc2V0X21hcmdpbl90b3AodGFiLT5zdGF0dXNM
YWJlbCwgMSk7CiAgICAgZ3RrX3dpZGdldF9zZXRfbWFyZ2luX2JvdHRvbSh0YWItPnN0YXR1c0xh
YmVsLCAxKTsKKyNlbmRpZgogICAgIGd0a19vdmVybGF5X2FkZF9vdmVybGF5KEdUS19PVkVSTEFZ
KG92ZXJsYXkpLCB0YWItPnN0YXR1c0xhYmVsKTsKIAogICAgIHRhYi0+ZnVsbFNjcmVlbk1lc3Nh
Z2VMYWJlbCA9IGd0a19sYWJlbF9uZXcoTlVMTCk7CiAgICAgZ3RrX3dpZGdldF9zZXRfaGFsaWdu
KHRhYi0+ZnVsbFNjcmVlbk1lc3NhZ2VMYWJlbCwgR1RLX0FMSUdOX0NFTlRFUik7CiAgICAgZ3Rr
X3dpZGdldF9zZXRfdmFsaWduKHRhYi0+ZnVsbFNjcmVlbk1lc3NhZ2VMYWJlbCwgR1RLX0FMSUdO
X0NFTlRFUik7CisjaWYgIUdUS19DSEVDS19WRVJTSU9OKDMsIDk4LCAwKQogICAgIGd0a193aWRn
ZXRfc2V0X25vX3Nob3dfYWxsKHRhYi0+ZnVsbFNjcmVlbk1lc3NhZ2VMYWJlbCwgVFJVRSk7Cisj
ZW5kaWYKICAgICBndGtfb3ZlcmxheV9hZGRfb3ZlcmxheShHVEtfT1ZFUkxBWShvdmVybGF5KSwg
dGFiLT5mdWxsU2NyZWVuTWVzc2FnZUxhYmVsKTsKIAogICAgIHRhYi0+cG9pbnRlckxvY2tNZXNz
YWdlTGFiZWwgPSBndGtfbGFiZWxfbmV3KE5VTEwpOwogICAgIGd0a193aWRnZXRfc2V0X2hhbGln
bih0YWItPnBvaW50ZXJMb2NrTWVzc2FnZUxhYmVsLCBHVEtfQUxJR05fQ0VOVEVSKTsKICAgICBn
dGtfd2lkZ2V0X3NldF92YWxpZ24odGFiLT5wb2ludGVyTG9ja01lc3NhZ2VMYWJlbCwgR1RLX0FM
SUdOX1NUQVJUKTsKKyNpZiAhR1RLX0NIRUNLX1ZFUlNJT04oMywgOTgsIDApCiAgICAgZ3RrX3dp
ZGdldF9zZXRfbm9fc2hvd19hbGwodGFiLT5wb2ludGVyTG9ja01lc3NhZ2VMYWJlbCwgVFJVRSk7
CisjZW5kaWYKICAgICBndGtfb3ZlcmxheV9hZGRfb3ZlcmxheShHVEtfT1ZFUkxBWShvdmVybGF5
KSwgdGFiLT5wb2ludGVyTG9ja01lc3NhZ2VMYWJlbCk7CiAKICAgICBndGtfY29udGFpbmVyX2Fk
ZChHVEtfQ09OVEFJTkVSKG92ZXJsYXkpLCBHVEtfV0lER0VUKHRhYi0+d2ViVmlldykpOwogICAg
IGd0a193aWRnZXRfc2hvdyhHVEtfV0lER0VUKHRhYi0+d2ViVmlldykpOwotI2Vsc2UKLSAgICBn
dGtfY29udGFpbmVyX2FkZChHVEtfQ09OVEFJTkVSKHRhYiksIEdUS19XSURHRVQodGFiLT53ZWJW
aWV3KSk7Ci0jZW5kaWYKIAogI2lmICFHVEtfQ0hFQ0tfVkVSU0lPTigzLCA5OCwgMCkKICAgICB0
YWItPnRpdGxlQm94ID0gZ3RrX2JveF9uZXcoR1RLX09SSUVOVEFUSU9OX0hPUklaT05UQUwsIDQp
Owo=
</data>
<flag name="review"
          id="413067"
          type_id="1"
          status="+"
          setter="aperez"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397829</attachid>
            <date>2020-04-28 04:57:25 -0700</date>
            <delta_ts>2020-04-28 04:57:25 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>wkgtk4-motion.diff</filename>
            <type>text/plain</type>
            <size>14155</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggYmIzNjQ3N2VmNzJmLi5mNjA2NDFhNWVjNmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMjQgQEAKKzIwMjAtMDQtMjcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtHVEs0XSBBZGQgc3VwcG9ydCBmb3IgbW90aW9uIGV2ZW50cwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExMDczCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgQWRyaWFuIFBlcmV6IGRlIENhc3Ryby4KKworICAgICAgICBI
YW5kbGUgZW50ZXIsIGxlYXZlIGFuZCBtb3Rpb24gZXZlbnRzIHVzaW5nIGEgR3RrRXZlbnRDb250
cm9sbGVyTW90aW9uLgorCisgICAgICAgICogU2hhcmVkL05hdGl2ZVdlYk1vdXNlRXZlbnQuaDoK
KyAgICAgICAgKiBTaGFyZWQvZ3RrL05hdGl2ZVdlYk1vdXNlRXZlbnRHdGsuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpOYXRpdmVXZWJNb3VzZUV2ZW50OjpOYXRpdmVXZWJNb3VzZUV2ZW50KToKKyAg
ICAgICAgKiBTaGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViTW91c2VFdmVudCk6CisgICAgICAgICogU2hhcmVk
L2d0ay9XZWJFdmVudEZhY3RvcnkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJL
aXRXZWJWaWV3QmFzZS5jcHA6CisgICAgICAgICh3ZWJraXRXZWJWaWV3QmFzZUVudGVyKToKKyAg
ICAgICAgKHdlYmtpdFdlYlZpZXdCYXNlTW90aW9uKToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdC
YXNlTGVhdmUpOgorICAgICAgICAod2Via2l0V2ViVmlld0Jhc2VDb25zdHJ1Y3RlZCk6CisKIDIw
MjAtMDQtMjYgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFtHVEs0XSBBZGQgc3VwcG9ydCBmb3Igc2Nyb2xsIGV2ZW50cwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvTmF0aXZlV2ViTW91c2VFdmVudC5oIGIvU291cmNlL1dlYktp
dC9TaGFyZWQvTmF0aXZlV2ViTW91c2VFdmVudC5oCmluZGV4IDRiOGRhYzhlYjkzNC4uMzVmZGZi
YjMwOTdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9OYXRpdmVXZWJNb3VzZUV2
ZW50LmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvTmF0aXZlV2ViTW91c2VFdmVudC5oCkBA
IC02NSw2ICs2NSw4IEBAIHB1YmxpYzoKICNlbGlmIFBMQVRGT1JNKEdUSykKICAgICBOYXRpdmVX
ZWJNb3VzZUV2ZW50KGNvbnN0IE5hdGl2ZVdlYk1vdXNlRXZlbnQmKTsKICAgICBOYXRpdmVXZWJN
b3VzZUV2ZW50KEdka0V2ZW50KiwgaW50LCBPcHRpb25hbDxXZWJDb3JlOjpJbnRQb2ludD4pOwor
ICAgIE5hdGl2ZVdlYk1vdXNlRXZlbnQoR2RrRXZlbnQqLCBjb25zdCBXZWJDb3JlOjpJbnRQb2lu
dCYsIGludCwgT3B0aW9uYWw8V2ViQ29yZTo6SW50UG9pbnQ+KTsKKyAgICBleHBsaWNpdCBOYXRp
dmVXZWJNb3VzZUV2ZW50KGNvbnN0IFdlYkNvcmU6OkludFBvaW50Jik7CiAjZWxpZiBQTEFURk9S
TShJT1NfRkFNSUxZKQogICAgIE5hdGl2ZVdlYk1vdXNlRXZlbnQoOjpXZWJFdmVudCAqKTsKICAg
ICBOYXRpdmVXZWJNb3VzZUV2ZW50KFR5cGUsIEJ1dHRvbiwgdW5zaWduZWQgc2hvcnQgYnV0dG9u
cywgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvc2l0aW9uLCBjb25zdCBXZWJDb3JlOjpJbnRQ
b2ludCYgZ2xvYmFsUG9zaXRpb24sIGZsb2F0IGRlbHRhWCwgZmxvYXQgZGVsdGFZLCBmbG9hdCBk
ZWx0YVosIGludCBjbGlja0NvdW50LCBPcHRpb25TZXQ8TW9kaWZpZXI+LCBXYWxsVGltZSB0aW1l
c3RhbXAsIGRvdWJsZSBmb3JjZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9n
dGsvTmF0aXZlV2ViTW91c2VFdmVudEd0ay5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsv
TmF0aXZlV2ViTW91c2VFdmVudEd0ay5jcHAKaW5kZXggYzcwNzA5OTVmODlhLi43YWNkOTRiZWM2
MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2d0ay9OYXRpdmVXZWJNb3VzZUV2
ZW50R3RrLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvTmF0aXZlV2ViTW91c2VF
dmVudEd0ay5jcHAKQEAgLTM3LDkgKzM3LDIwIEBAIE5hdGl2ZVdlYk1vdXNlRXZlbnQ6Ok5hdGl2
ZVdlYk1vdXNlRXZlbnQoR2RrRXZlbnQqIGV2ZW50LCBpbnQgZXZlbnRDbGlja0NvdW50LCBPCiB7
CiB9CiAKK05hdGl2ZVdlYk1vdXNlRXZlbnQ6Ok5hdGl2ZVdlYk1vdXNlRXZlbnQoR2RrRXZlbnQq
IGV2ZW50LCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYgcG9zaXRpb24sIGludCBldmVudENsaWNr
Q291bnQsIE9wdGlvbmFsPFdlYkNvcmU6OkludFBvaW50PiBkZWx0YSkKKyAgICA6IFdlYk1vdXNl
RXZlbnQoV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJNb3VzZUV2ZW50KGV2ZW50LCBwb3NpdGlv
biwgcG9zaXRpb24sIGV2ZW50Q2xpY2tDb3VudCwgZGVsdGEpKQorICAgICwgbV9uYXRpdmVFdmVu
dChnZGtfZXZlbnRfY29weShldmVudCkpCit7Cit9CisKK05hdGl2ZVdlYk1vdXNlRXZlbnQ6Ok5h
dGl2ZVdlYk1vdXNlRXZlbnQoY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmIHBvc2l0aW9uKQorICAg
IDogV2ViTW91c2VFdmVudChXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYk1vdXNlRXZlbnQocG9z
aXRpb24pKQoreworfQorCiBOYXRpdmVXZWJNb3VzZUV2ZW50OjpOYXRpdmVXZWJNb3VzZUV2ZW50
KGNvbnN0IE5hdGl2ZVdlYk1vdXNlRXZlbnQmIGV2ZW50KQotICAgIDogV2ViTW91c2VFdmVudChX
ZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYk1vdXNlRXZlbnQoZXZlbnQubmF0aXZlRXZlbnQoKSwg
ZXZlbnQuY2xpY2tDb3VudCgpLCBXZWJDb3JlOjpJbnRQb2ludChldmVudC5kZWx0YVgoKSwgZXZl
bnQuZGVsdGFZKCkpKSkKLSAgICAsIG1fbmF0aXZlRXZlbnQoZ2RrX2V2ZW50X2NvcHkoY29uc3Rf
Y2FzdDxHZGtFdmVudCo+KGV2ZW50Lm5hdGl2ZUV2ZW50KCkpKSkKKyAgICA6IFdlYk1vdXNlRXZl
bnQoV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJNb3VzZUV2ZW50KGV2ZW50Lm5hdGl2ZUV2ZW50
KCksIGV2ZW50LnBvc2l0aW9uKCksIGV2ZW50Lmdsb2JhbFBvc2l0aW9uKCksIGV2ZW50LmNsaWNr
Q291bnQoKSwgV2ViQ29yZTo6SW50UG9pbnQoZXZlbnQuZGVsdGFYKCksIGV2ZW50LmRlbHRhWSgp
KSkpCisgICAgLCBtX25hdGl2ZUV2ZW50KGV2ZW50Lm5hdGl2ZUV2ZW50KCkgPyBnZGtfZXZlbnRf
Y29weShjb25zdF9jYXN0PEdka0V2ZW50Kj4oZXZlbnQubmF0aXZlRXZlbnQoKSkpIDogbnVsbHB0
cikKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvZ3RrL1dlYkV2ZW50
RmFjdG9yeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvV2ViRXZlbnRGYWN0b3J5LmNw
cAppbmRleCA1NzQzY2FmMThmYmQuLmZjNDNkMDI5NTE5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9TaGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9T
aGFyZWQvZ3RrL1dlYkV2ZW50RmFjdG9yeS5jcHAKQEAgLTE0MCwyMSArMTQwLDI5IEBAIHN0YXRp
YyBpbmxpbmUgc2hvcnQgcHJlc3NlZE1vdXNlQnV0dG9ucyhHZGtNb2RpZmllclR5cGUgc3RhdGUp
CiAKIFdlYk1vdXNlRXZlbnQgV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJNb3VzZUV2ZW50KGNv
bnN0IEdka0V2ZW50KiBldmVudCwgaW50IGN1cnJlbnRDbGlja0NvdW50LCBPcHRpb25hbDxJbnRQ
b2ludD4gZGVsdGEpCiB7Ci0gICAgZG91YmxlIHgsIHksIHhSb290LCB5Um9vdDsKKyAgICBkb3Vi
bGUgeCwgeTsKICAgICBnZGtfZXZlbnRfZ2V0X2Nvb3JkcyhldmVudCwgJngsICZ5KTsKKyAgICBk
b3VibGUgeFJvb3QsIHlSb290OwogICAgIGdka19ldmVudF9nZXRfcm9vdF9jb29yZHMoZXZlbnQs
ICZ4Um9vdCwgJnlSb290KTsKIAorICAgIHJldHVybiBjcmVhdGVXZWJNb3VzZUV2ZW50KGV2ZW50
LCB7IGNsYW1wVG9JbnRlZ2VyKHgpLCBjbGFtcFRvSW50ZWdlcih5KSB9LCB7IGNsYW1wVG9JbnRl
Z2VyKHhSb290KSwgY2xhbXBUb0ludGVnZXIoeVJvb3QpIH0sIGN1cnJlbnRDbGlja0NvdW50LCBk
ZWx0YSk7Cit9CisKK1dlYk1vdXNlRXZlbnQgV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJNb3Vz
ZUV2ZW50KGNvbnN0IEdka0V2ZW50KiBldmVudCwgY29uc3QgSW50UG9pbnQmIHBvc2l0aW9uLCBj
b25zdCBJbnRQb2ludCYgZ2xvYmFsUG9zaXRpb24sIGludCBjdXJyZW50Q2xpY2tDb3VudCwgT3B0
aW9uYWw8SW50UG9pbnQ+IGRlbHRhKQoreworI2lmIFVTRShHVEs0KQorICAgIC8vIFRoaXMgY2Fu
IGhhcHBlbiB3aGVuIGEgTmF0aXZlV2ViTW91c2VFdmVudCByZXByZXNlbnRpbmcgYSBjcm9zc2lu
ZyBldmVudCBpcyBjb3BpZWQuCisgICAgaWYgKCFldmVudCkKKyAgICAgICAgcmV0dXJuIGNyZWF0
ZVdlYk1vdXNlRXZlbnQocG9zaXRpb24pOworI2VuZGlmCisKICAgICBHZGtNb2RpZmllclR5cGUg
c3RhdGUgPSBzdGF0aWNfY2FzdDxHZGtNb2RpZmllclR5cGU+KDApOwogICAgIGdka19ldmVudF9n
ZXRfc3RhdGUoZXZlbnQsICZzdGF0ZSk7CiAKLSAgICBndWludCBldmVudEJ1dHRvbjsKLSAgICBn
ZGtfZXZlbnRfZ2V0X2J1dHRvbihldmVudCwgJmV2ZW50QnV0dG9uKTsKLQogICAgIFdlYkV2ZW50
OjpUeXBlIHR5cGUgPSBzdGF0aWNfY2FzdDxXZWJFdmVudDo6VHlwZT4oMCk7CiAgICAgSW50UG9p
bnQgbW92ZW1lbnREZWx0YTsKIAotICAgIEdka0V2ZW50VHlwZSBldmVudFR5cGUgPSBnZGtfZXZl
bnRfZ2V0X2V2ZW50X3R5cGUoY29uc3RfY2FzdDxHZGtFdmVudCo+KGV2ZW50KSk7Ci0gICAgc3dp
dGNoIChldmVudFR5cGUpIHsKKyAgICBzd2l0Y2ggKGdka19ldmVudF9nZXRfZXZlbnRfdHlwZShj
b25zdF9jYXN0PEdka0V2ZW50Kj4oZXZlbnQpKSkgewogICAgIGNhc2UgR0RLX01PVElPTl9OT1RJ
Rlk6CiAgICAgY2FzZSBHREtfRU5URVJfTk9USUZZOgogICAgIGNhc2UgR0RLX0xFQVZFX05PVElG
WToKQEAgLTE2OCwxMiArMTc2LDE2IEBAIFdlYk1vdXNlRXZlbnQgV2ViRXZlbnRGYWN0b3J5Ojpj
cmVhdGVXZWJNb3VzZUV2ZW50KGNvbnN0IEdka0V2ZW50KiBldmVudCwgaW50IGN1CiAjZW5kaWYK
ICAgICBjYXNlIEdES19CVVRUT05fUFJFU1M6IHsKICAgICAgICAgdHlwZSA9IFdlYkV2ZW50OjpN
b3VzZURvd247CisgICAgICAgIGd1aW50IGV2ZW50QnV0dG9uOworICAgICAgICBnZGtfZXZlbnRf
Z2V0X2J1dHRvbihldmVudCwgJmV2ZW50QnV0dG9uKTsKICAgICAgICAgYXV0byBtb2RpZmllciA9
IHN0YXRlTW9kaWZpZXJGb3JHZGtCdXR0b24oZXZlbnRCdXR0b24pOwogICAgICAgICBzdGF0ZSA9
IHN0YXRpY19jYXN0PEdka01vZGlmaWVyVHlwZT4oc3RhdGUgfCBtb2RpZmllcik7CiAgICAgICAg
IGJyZWFrOwogICAgIH0KICAgICBjYXNlIEdES19CVVRUT05fUkVMRUFTRTogewogICAgICAgICB0
eXBlID0gV2ViRXZlbnQ6Ok1vdXNlVXA7CisgICAgICAgIGd1aW50IGV2ZW50QnV0dG9uOworICAg
ICAgICBnZGtfZXZlbnRfZ2V0X2J1dHRvbihldmVudCwgJmV2ZW50QnV0dG9uKTsKICAgICAgICAg
YXV0byBtb2RpZmllciA9IHN0YXRlTW9kaWZpZXJGb3JHZGtCdXR0b24oZXZlbnRCdXR0b24pOwog
ICAgICAgICBzdGF0ZSA9IHN0YXRpY19jYXN0PEdka01vZGlmaWVyVHlwZT4oc3RhdGUgJiB+bW9k
aWZpZXIpOwogICAgICAgICBicmVhazsKQEAgLTE4NSw4ICsxOTcsOCBAQCBXZWJNb3VzZUV2ZW50
IFdlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViTW91c2VFdmVudChjb25zdCBHZGtFdmVudCogZXZl
bnQsIGludCBjdQogICAgIHJldHVybiBXZWJNb3VzZUV2ZW50KHR5cGUsCiAgICAgICAgIGJ1dHRv
bkZvckV2ZW50KGV2ZW50KSwKICAgICAgICAgcHJlc3NlZE1vdXNlQnV0dG9ucyhzdGF0ZSksCi0g
ICAgICAgIEludFBvaW50KHgsIHkpLAotICAgICAgICBJbnRQb2ludCh4Um9vdCwgeVJvb3QpLAor
ICAgICAgICBwb3NpdGlvbiwKKyAgICAgICAgZ2xvYmFsUG9zaXRpb24sCiAgICAgICAgIG1vdmVt
ZW50RGVsdGEueCgpLAogICAgICAgICBtb3ZlbWVudERlbHRhLnkoKSwKICAgICAgICAgMCAvKiBk
ZWx0YVogKi8sCkBAIC0xOTUsNiArMjA3LDEyIEBAIFdlYk1vdXNlRXZlbnQgV2ViRXZlbnRGYWN0
b3J5OjpjcmVhdGVXZWJNb3VzZUV2ZW50KGNvbnN0IEdka0V2ZW50KiBldmVudCwgaW50IGN1CiAg
ICAgICAgIHdhbGxUaW1lRm9yRXZlbnQoZXZlbnQpKTsKIH0KIAorV2ViTW91c2VFdmVudCBXZWJF
dmVudEZhY3Rvcnk6OmNyZWF0ZVdlYk1vdXNlRXZlbnQoY29uc3QgSW50UG9pbnQmIHBvc2l0aW9u
KQoreworICAgIC8vIE1vdXNlIGV2ZW50cyB3aXRob3V0IEdka0V2ZW50IGFyZSBjcm9zc2luZyBl
dmVudHMsIGhhbmRsZWQgYXMgYSBtb3VzZSBtb3ZlLgorICAgIHJldHVybiBXZWJNb3VzZUV2ZW50
KFdlYkV2ZW50OjpNb3VzZU1vdmUsIFdlYk1vdXNlRXZlbnQ6Ok5vQnV0dG9uLCAwLCBwb3NpdGlv
biwgcG9zaXRpb24sIDAsIDAsIDAsIDAsIHsgfSwgV2FsbFRpbWU6Om5vdygpKTsKK30KKwogV2Vi
V2hlZWxFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYldoZWVsRXZlbnQoY29uc3QgR2Rr
RXZlbnQqIGV2ZW50KQogewogICAgIFdlYldoZWVsRXZlbnQ6OlBoYXNlIHBoYXNlID0gZ2RrX2V2
ZW50X2lzX3Njcm9sbF9zdG9wX2V2ZW50KGV2ZW50KSA/CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1NoYXJlZC9ndGsvV2ViRXZlbnRGYWN0b3J5LmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9n
dGsvV2ViRXZlbnRGYWN0b3J5LmgKaW5kZXggYjJkZDQ3ODAzYmM4Li4xNGJiYTk4NWU3YWQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL2d0ay9XZWJFdmVudEZhY3RvcnkuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9ndGsvV2ViRXZlbnRGYWN0b3J5LmgKQEAgLTM5LDYgKzM5
LDggQEAgbmFtZXNwYWNlIFdlYktpdCB7CiBjbGFzcyBXZWJFdmVudEZhY3RvcnkgewogcHVibGlj
OgogICAgIHN0YXRpYyBXZWJNb3VzZUV2ZW50IGNyZWF0ZVdlYk1vdXNlRXZlbnQoY29uc3QgR2Rr
RXZlbnQqLCBpbnQsIE9wdGlvbmFsPFdlYkNvcmU6OkludFBvaW50Pik7CisgICAgc3RhdGljIFdl
Yk1vdXNlRXZlbnQgY3JlYXRlV2ViTW91c2VFdmVudChjb25zdCBHZGtFdmVudCosIGNvbnN0IFdl
YkNvcmU6OkludFBvaW50JiwgY29uc3QgV2ViQ29yZTo6SW50UG9pbnQmLCBpbnQsIE9wdGlvbmFs
PFdlYkNvcmU6OkludFBvaW50Pik7CisgICAgc3RhdGljIFdlYk1vdXNlRXZlbnQgY3JlYXRlV2Vi
TW91c2VFdmVudChjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYpOwogICAgIHN0YXRpYyBXZWJXaGVl
bEV2ZW50IGNyZWF0ZVdlYldoZWVsRXZlbnQoY29uc3QgR2RrRXZlbnQqKTsKICAgICBzdGF0aWMg
V2ViV2hlZWxFdmVudCBjcmVhdGVXZWJXaGVlbEV2ZW50KGNvbnN0IEdka0V2ZW50KiwgV2ViV2hl
ZWxFdmVudDo6UGhhc2UsIFdlYldoZWVsRXZlbnQ6OlBoYXNlIG1vbWVudHVtUGhhc2UpOwogICAg
IHN0YXRpYyBXZWJXaGVlbEV2ZW50IGNyZWF0ZVdlYldoZWVsRXZlbnQoY29uc3QgR2RrRXZlbnQq
LCBjb25zdCBXZWJDb3JlOjpJbnRQb2ludCYsIGNvbnN0IFdlYkNvcmU6OkludFBvaW50JiwgV2Vi
V2hlZWxFdmVudDo6UGhhc2UsIFdlYldoZWVsRXZlbnQ6OlBoYXNlIG1vbWVudHVtUGhhc2UpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3
QmFzZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdC
YXNlLmNwcAppbmRleCA4ZGE5Mjg0OTM1N2EuLjMyMTJjZDcwNTQwNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKQEAg
LTExMTEsNiArMTExMSw1MSBAQCBzdGF0aWMgZ2Jvb2xlYW4gd2Via2l0V2ViVmlld0Jhc2VDcm9z
c2luZ05vdGlmeUV2ZW50KEd0a1dpZGdldCogd2lkZ2V0LCBHZGtFdmVudAogfQogI2VuZGlmCiAK
KyNpZiBVU0UoR1RLNCkKK3N0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlRW50ZXIoV2ViS2l0
V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBkb3VibGUgeCwgZG91YmxlIHksIEdka0Nyb3NzaW5n
TW9kZSwgR3RrRXZlbnRDb250cm9sbGVyKikKK3sKKyAgICBXZWJLaXRXZWJWaWV3QmFzZVByaXZh
dGUqIHByaXYgPSB3ZWJWaWV3QmFzZS0+cHJpdjsKKyAgICBpZiAocHJpdi0+ZGlhbG9nKQorICAg
ICAgICByZXR1cm47CisKKyNpZiBFTkFCTEUoREVWRUxPUEVSX01PREUpCisgICAgLy8gRG8gbm90
IHNlbmQgbW91c2UgbW92ZSBldmVudHMgdG8gdGhlIFdlYlByb2Nlc3MgZm9yIGNyb3NzaW5nIGV2
ZW50cyBkdXJpbmcgdGVzdGluZy4KKyAgICAvLyBXVFIgbmV2ZXIgZ2VuZXJhdGVzIGNyb3NzaW5n
IGV2ZW50cyBhbmQgdGhleSBjYW4gY29uZnVzZSB0ZXN0cy4KKyAgICAvLyBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg1MDcyLgorICAgIGlmIChVTkxJS0VMWShwcml2
LT5wYWdlUHJveHktPnByb2Nlc3MoKS5wcm9jZXNzUG9vbCgpLmNvbmZpZ3VyYXRpb24oKS5mdWxs
eVN5bmNocm9ub3VzTW9kZUlzQWxsb3dlZEZvclRlc3RpbmcoKSkpCisgICAgICAgIHJldHVybjsK
KyNlbmRpZgorCisgICAgcHJpdi0+cGFnZVByb3h5LT5oYW5kbGVNb3VzZUV2ZW50KE5hdGl2ZVdl
Yk1vdXNlRXZlbnQoeyBjbGFtcFRvSW50ZWdlcih4KSwgY2xhbXBUb0ludGVnZXIoeSkgfSkpOwor
fQorCitzdGF0aWMgZ2Jvb2xlYW4gd2Via2l0V2ViVmlld0Jhc2VNb3Rpb24oV2ViS2l0V2ViVmll
d0Jhc2UqIHdlYlZpZXdCYXNlLCBkb3VibGUgeCwgZG91YmxlIHksIEd0a0V2ZW50Q29udHJvbGxl
ciogY29udHJvbGxlcikKK3sKKyAgICAvLyBGSVhNRTogRm9yd2FyZCBldmVudCB0byBkaWFsb2cu
CisgICAgLy8gRklYTUU6IFBvaW50ZXIgbG9jay4KKyAgICB3ZWJWaWV3QmFzZS0+cHJpdi0+cGFn
ZVByb3h5LT5oYW5kbGVNb3VzZUV2ZW50KE5hdGl2ZVdlYk1vdXNlRXZlbnQoZ3RrX2V2ZW50X2Nv
bnRyb2xsZXJfZ2V0X2N1cnJlbnRfZXZlbnQoY29udHJvbGxlciksIHsgY2xhbXBUb0ludGVnZXIo
eCksIGNsYW1wVG9JbnRlZ2VyKHkpIH0sIDAsIFdURjo6bnVsbG9wdCkpOworCisgICAgcmV0dXJu
IEdES19FVkVOVF9QUk9QQUdBVEU7Cit9CisKK3N0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdCYXNl
TGVhdmUoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBHZGtDcm9zc2luZ01vZGUsIEd0
a0V2ZW50Q29udHJvbGxlciopCit7CisgICAgV2ViS2l0V2ViVmlld0Jhc2VQcml2YXRlKiBwcml2
ID0gd2ViVmlld0Jhc2UtPnByaXY7CisgICAgaWYgKHByaXYtPmRpYWxvZykKKyAgICAgICAgcmV0
dXJuOworCisjaWYgRU5BQkxFKERFVkVMT1BFUl9NT0RFKQorICAgIC8vIERvIG5vdCBzZW5kIG1v
dXNlIG1vdmUgZXZlbnRzIHRvIHRoZSBXZWJQcm9jZXNzIGZvciBjcm9zc2luZyBldmVudHMgZHVy
aW5nIHRlc3RpbmcuCisgICAgLy8gV1RSIG5ldmVyIGdlbmVyYXRlcyBjcm9zc2luZyBldmVudHMg
YW5kIHRoZXkgY2FuIGNvbmZ1c2UgdGVzdHMuCisgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE4NTA3Mi4KKyAgICBpZiAoVU5MSUtFTFkocHJpdi0+cGFnZVBy
b3h5LT5wcm9jZXNzKCkucHJvY2Vzc1Bvb2woKS5jb25maWd1cmF0aW9uKCkuZnVsbHlTeW5jaHJv
bm91c01vZGVJc0FsbG93ZWRGb3JUZXN0aW5nKCkpKQorICAgICAgICByZXR1cm47CisjZW5kaWYK
KworICAgIHByaXYtPnBhZ2VQcm94eS0+aGFuZGxlTW91c2VFdmVudChOYXRpdmVXZWJNb3VzZUV2
ZW50KHsgLTEsIC0xIH0pKTsKK30KKyNlbmRpZgorCiAjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykg
JiYgIVVTRShHVEs0KQogc3RhdGljIHZvaWQgYXBwZW5kVG91Y2hFdmVudChWZWN0b3I8V2ViUGxh
dGZvcm1Ub3VjaFBvaW50PiYgdG91Y2hQb2ludHMsIGNvbnN0IEdka0V2ZW50KiBldmVudCwgV2Vi
UGxhdGZvcm1Ub3VjaFBvaW50OjpUb3VjaFBvaW50U3RhdGUgc3RhdGUpCiB7CkBAIC0xNTIxLDYg
KzE1NjYsMTIgQEAgc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Jhc2VDb25zdHJ1Y3RlZChHT2Jq
ZWN0KiBvYmplY3QpCiAgICAgYXV0byogY29udHJvbGxlciA9IGd0a19ldmVudF9jb250cm9sbGVy
X3Njcm9sbF9uZXcoR1RLX0VWRU5UX0NPTlRST0xMRVJfU0NST0xMX0JPVEhfQVhFUyk7CiAgICAg
Z19zaWduYWxfY29ubmVjdF9vYmplY3QoY29udHJvbGxlciwgInNjcm9sbCIsIEdfQ0FMTEJBQ0so
d2Via2l0V2ViVmlld0Jhc2VTY3JvbGwpLCB2aWV3V2lkZ2V0LCBHX0NPTk5FQ1RfU1dBUFBFRCk7
CiAgICAgZ3RrX3dpZGdldF9hZGRfY29udHJvbGxlcih2aWV3V2lkZ2V0LCBjb250cm9sbGVyKTsK
KworICAgIGNvbnRyb2xsZXIgPSBndGtfZXZlbnRfY29udHJvbGxlcl9tb3Rpb25fbmV3KCk7Cisg
ICAgZ19zaWduYWxfY29ubmVjdF9vYmplY3QoY29udHJvbGxlciwgImVudGVyIiwgR19DQUxMQkFD
Syh3ZWJraXRXZWJWaWV3QmFzZUVudGVyKSwgdmlld1dpZGdldCwgR19DT05ORUNUX1NXQVBQRUQp
OworICAgIGdfc2lnbmFsX2Nvbm5lY3Rfb2JqZWN0KGNvbnRyb2xsZXIsICJtb3Rpb24iLCBHX0NB
TExCQUNLKHdlYmtpdFdlYlZpZXdCYXNlTW90aW9uKSwgdmlld1dpZGdldCwgR19DT05ORUNUX1NX
QVBQRUQpOworICAgIGdfc2lnbmFsX2Nvbm5lY3Rfb2JqZWN0KGNvbnRyb2xsZXIsICJsZWF2ZSIs
IEdfQ0FMTEJBQ0sod2Via2l0V2ViVmlld0Jhc2VMZWF2ZSksIHZpZXdXaWRnZXQsIEdfQ09OTkVD
VF9TV0FQUEVEKTsKKyAgICBndGtfd2lkZ2V0X2FkZF9jb250cm9sbGVyKHZpZXdXaWRnZXQsIGNv
bnRyb2xsZXIpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rv
b2xzL0NoYW5nZUxvZwppbmRleCBlOTFiYTYxZTUwMDIuLjJmY2U2YjA4NjNmOSAxMDA2NDQKLS0t
IGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBA
CisyMDIwLTA0LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4K
KworICAgICAgICBbR1RLNF0gQWRkIHN1cHBvcnQgZm9yIG1vdGlvbiBldmVudHMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMTA3MworCisgICAgICAg
IFJldmlld2VkIGJ5IEFkcmlhbiBQZXJleiBkZSBDYXN0cm8uCisKKyAgICAgICAgVXNlIHRoZSBH
dGtPdmVybGF5IGluIEdUSzQgdG9vIHNvIHRoYXQgc3RhdHVzIGxhYmVsIGlzIHNob3duIHdoZW4g
aG92ZXJpbmcgZWxlbWVudHMuCisKKyAgICAgICAgKiBNaW5pQnJvd3Nlci9ndGsvQnJvd3NlclRh
Yi5jOgorICAgICAgICAoYnJvd3NlclRhYkNvbnN0cnVjdGVkKToKKwogMjAyMC0wNC0yOCAgQ2Fy
bG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUSzRd
W1dheWxhbmRdIEFkZCBzdXBwb3J0IGZvciByZW5kZXJpbmcgd2ViIHZpZXcgY29udGVudHMKZGlm
ZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL2d0ay9Ccm93c2VyVGFiLmMgYi9Ub29scy9NaW5p
QnJvd3Nlci9ndGsvQnJvd3NlclRhYi5jCmluZGV4IGE5NzNlNjBlYjJlOC4uOTYyZjMzZDExM2Y2
IDEwMDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9ndGsvQnJvd3NlclRhYi5jCisrKyBiL1Rv
b2xzL01pbmlCcm93c2VyL2d0ay9Ccm93c2VyVGFiLmMKQEAgLTM5OCwzOCArMzk4LDQyIEBAIHN0
YXRpYyB2b2lkIGJyb3dzZXJUYWJDb25zdHJ1Y3RlZChHT2JqZWN0ICpnT2JqZWN0KQogI2lmICFH
VEtfQ0hFQ0tfVkVSU0lPTigzLCA5OCwgMCkKICAgICB0YWItPnNlYXJjaEJhciA9IEJST1dTRVJf
U0VBUkNIX0JBUihicm93c2VyX3NlYXJjaF9iYXJfbmV3KHRhYi0+d2ViVmlldykpOwogICAgIGd0
a19ib3hfcGFja19zdGFydChHVEtfQk9YKHRhYiksIEdUS19XSURHRVQodGFiLT5zZWFyY2hCYXIp
LCBGQUxTRSwgRkFMU0UsIDApOworI2VuZGlmCiAKICAgICBHdGtXaWRnZXQgKm92ZXJsYXkgPSBn
dGtfb3ZlcmxheV9uZXcoKTsKLSAgICBndGtfYm94X3BhY2tfc3RhcnQoR1RLX0JPWCh0YWIpLCBv
dmVybGF5LCBUUlVFLCBUUlVFLCAwKTsKKyAgICBndGtfY29udGFpbmVyX2FkZChHVEtfQ09OVEFJ
TkVSKHRhYiksIG92ZXJsYXkpOwogICAgIGd0a193aWRnZXRfc2hvdyhvdmVybGF5KTsKIAogICAg
IHRhYi0+c3RhdHVzTGFiZWwgPSBndGtfbGFiZWxfbmV3KE5VTEwpOwogICAgIGd0a193aWRnZXRf
c2V0X2hhbGlnbih0YWItPnN0YXR1c0xhYmVsLCBHVEtfQUxJR05fU1RBUlQpOwogICAgIGd0a193
aWRnZXRfc2V0X3ZhbGlnbih0YWItPnN0YXR1c0xhYmVsLCBHVEtfQUxJR05fRU5EKTsKKyNpZiAh
R1RLX0NIRUNLX1ZFUlNJT04oMywgOTgsIDApCiAgICAgZ3RrX3dpZGdldF9zZXRfbWFyZ2luX2xl
ZnQodGFiLT5zdGF0dXNMYWJlbCwgMSk7CiAgICAgZ3RrX3dpZGdldF9zZXRfbWFyZ2luX3JpZ2h0
KHRhYi0+c3RhdHVzTGFiZWwsIDEpOwogICAgIGd0a193aWRnZXRfc2V0X21hcmdpbl90b3AodGFi
LT5zdGF0dXNMYWJlbCwgMSk7CiAgICAgZ3RrX3dpZGdldF9zZXRfbWFyZ2luX2JvdHRvbSh0YWIt
PnN0YXR1c0xhYmVsLCAxKTsKKyNlbmRpZgogICAgIGd0a19vdmVybGF5X2FkZF9vdmVybGF5KEdU
S19PVkVSTEFZKG92ZXJsYXkpLCB0YWItPnN0YXR1c0xhYmVsKTsKIAogICAgIHRhYi0+ZnVsbFNj
cmVlbk1lc3NhZ2VMYWJlbCA9IGd0a19sYWJlbF9uZXcoTlVMTCk7CiAgICAgZ3RrX3dpZGdldF9z
ZXRfaGFsaWduKHRhYi0+ZnVsbFNjcmVlbk1lc3NhZ2VMYWJlbCwgR1RLX0FMSUdOX0NFTlRFUik7
CiAgICAgZ3RrX3dpZGdldF9zZXRfdmFsaWduKHRhYi0+ZnVsbFNjcmVlbk1lc3NhZ2VMYWJlbCwg
R1RLX0FMSUdOX0NFTlRFUik7CisjaWYgIUdUS19DSEVDS19WRVJTSU9OKDMsIDk4LCAwKQogICAg
IGd0a193aWRnZXRfc2V0X25vX3Nob3dfYWxsKHRhYi0+ZnVsbFNjcmVlbk1lc3NhZ2VMYWJlbCwg
VFJVRSk7CisjZW5kaWYKICAgICBndGtfb3ZlcmxheV9hZGRfb3ZlcmxheShHVEtfT1ZFUkxBWShv
dmVybGF5KSwgdGFiLT5mdWxsU2NyZWVuTWVzc2FnZUxhYmVsKTsKIAogICAgIHRhYi0+cG9pbnRl
ckxvY2tNZXNzYWdlTGFiZWwgPSBndGtfbGFiZWxfbmV3KE5VTEwpOwogICAgIGd0a193aWRnZXRf
c2V0X2hhbGlnbih0YWItPnBvaW50ZXJMb2NrTWVzc2FnZUxhYmVsLCBHVEtfQUxJR05fQ0VOVEVS
KTsKICAgICBndGtfd2lkZ2V0X3NldF92YWxpZ24odGFiLT5wb2ludGVyTG9ja01lc3NhZ2VMYWJl
bCwgR1RLX0FMSUdOX1NUQVJUKTsKKyNpZiAhR1RLX0NIRUNLX1ZFUlNJT04oMywgOTgsIDApCiAg
ICAgZ3RrX3dpZGdldF9zZXRfbm9fc2hvd19hbGwodGFiLT5wb2ludGVyTG9ja01lc3NhZ2VMYWJl
bCwgVFJVRSk7CisjZW5kaWYKICAgICBndGtfb3ZlcmxheV9hZGRfb3ZlcmxheShHVEtfT1ZFUkxB
WShvdmVybGF5KSwgdGFiLT5wb2ludGVyTG9ja01lc3NhZ2VMYWJlbCk7CiAKKyAgICBndGtfd2lk
Z2V0X3NldF92ZXhwYW5kKEdUS19XSURHRVQodGFiLT53ZWJWaWV3KSwgVFJVRSk7CiAgICAgZ3Rr
X2NvbnRhaW5lcl9hZGQoR1RLX0NPTlRBSU5FUihvdmVybGF5KSwgR1RLX1dJREdFVCh0YWItPndl
YlZpZXcpKTsKICAgICBndGtfd2lkZ2V0X3Nob3coR1RLX1dJREdFVCh0YWItPndlYlZpZXcpKTsK
LSNlbHNlCi0gICAgZ3RrX3dpZGdldF9zZXRfdmV4cGFuZChHVEtfV0lER0VUKHRhYi0+d2ViVmll
dyksIFRSVUUpOwotICAgIGd0a19jb250YWluZXJfYWRkKEdUS19DT05UQUlORVIodGFiKSwgR1RL
X1dJREdFVCh0YWItPndlYlZpZXcpKTsKLSNlbmRpZgogCiAjaWYgIUdUS19DSEVDS19WRVJTSU9O
KDMsIDk4LCAwKQogICAgIHRhYi0+dGl0bGVCb3ggPSBndGtfYm94X25ldyhHVEtfT1JJRU5UQVRJ
T05fSE9SSVpPTlRBTCwgNCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>