<?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>55184</bug_id>
          
          <creation_ts>2011-02-24 14:19:45 -0800</creation_ts>
          <short_desc>WebKit2: Image-based cursors do not work</short_desc>
          <delta_ts>2011-02-24 18:10: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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>357390</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-02-24 14:19:45 -0800</bug_when>
    <thetext>WebKit2: Image-based cursors do not work</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357401</commentid>
    <comment_count>1</comment_count>
      <attachid>83722</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-02-24 14:35:11 -0800</bug_when>
    <thetext>Created attachment 83722
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357404</commentid>
    <comment_count>2</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-02-24 14:35:58 -0800</bug_when>
    <thetext>&lt;rdar://problem/9015806&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357593</commentid>
    <comment_count>3</comment_count>
      <attachid>83722</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2011-02-24 17:17:24 -0800</bug_when>
    <thetext>Comment on attachment 83722
Patch

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

&gt; Source/WebKit2/Shared/WebCoreArgumentCoders.h:206
&gt; +        if (cursor.type() != WebCore::Cursor::Custom)

This should be type instead of cursor.type().

&gt; Source/WebKit2/Shared/WebCoreArgumentCoders.h:236
&gt; +            return false;

You could check that the hot spot is actually inside the image here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>357615</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-02-24 18:10:23 -0800</bug_when>
    <thetext>Committed r79652: &lt;http://trac.webkit.org/changeset/79652&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>83722</attachid>
            <date>2011-02-24 14:35:11 -0800</date>
            <delta_ts>2011-02-24 17:17:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-55184-20110224143509.patch</filename>
            <type>text/plain</type>
            <size>21572</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDc5NjIwKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTEtMDItMjQgIERhcmluIEFk
bGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFdlYktpdDI6IEltYWdlLWJhc2VkIGN1cnNvcnMgZG8gbm90IHdvcmsK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU1MTg0CisK
KyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjogRXhwb3J0ZWQgbmV3IGVudHJ5IHBvaW50cyBub3cg
dXNlZCBieSBXZWJLaXQyLgorCiAyMDExLTAyLTI0ICBKYW1lcyBSb2JpbnNvbiAgPGphbWVzckBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjc5NjA0LgpJ
bmRleDogU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvV2ViQ29yZS5leHAuaW4JKHJldmlzaW9uIDc5NjEzKQorKysgU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5leHAuaW4JKHdvcmtpbmcgY29weSkKQEAgLTM5NSw2ICszOTUsNyBAQCBfX1pO
N1dlYkNvcmUxNUdyYXBoaWNzQ29udGV4dDdyZXN0b3JlRXYKIF9fWk43V2ViQ29yZTE1R3JhcGhp
Y3NDb250ZXh0OGZpbGxQYXRoRVJLTlNfNFBhdGhFCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzQ29u
dGV4dDhmaWxsUmVjdEVSS05TXzlGbG9hdFJlY3RFCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzQ29u
dGV4dDhmaWxsUmVjdEVSS05TXzlGbG9hdFJlY3RFUktOU181Q29sb3JFTlNfMTBDb2xvclNwYWNl
RQorX19aTjdXZWJDb3JlMTVHcmFwaGljc0NvbnRleHQ5ZHJhd0ltYWdlRVBOU181SW1hZ2VFTlNf
MTBDb2xvclNwYWNlRVJLTlNfOEludFBvaW50RU5TXzE3Q29tcG9zaXRlT3BlcmF0b3JFCiBfX1pO
N1dlYkNvcmUxNUdyYXBoaWNzQ29udGV4dDlzZXRTaGFkb3dFUktOU185RmxvYXRTaXplRWZSS05T
XzVDb2xvckVOU18xMENvbG9yU3BhY2VFCiBfX1pON1dlYkNvcmUxNUdyYXBoaWNzQ29udGV4dDl0
cmFuc2xhdGVFZmYKIF9fWk43V2ViQ29yZTE1R3JhcGhpY3NDb250ZXh0QzFFUDlDR0NvbnRleHQK
QEAgLTQwNCw4ICs0MDUsOCBAQCBfX1pON1dlYkNvcmUxNVByb3RlY3Rpb25TcGFjZUMxRVJLTjNX
VEY2CiBfX1pON1dlYkNvcmUxNVByb3RlY3Rpb25TcGFjZUMxRXYKIF9fWk43V2ViQ29yZTE1U2Ny
b2xsQWxpZ25tZW50MTdhbGlnbkNlbnRlckFsd2F5c0UKIF9fWk43V2ViQ29yZTE1U2Nyb2xsQWxp
Z25tZW50MTlhbGlnblRvRWRnZUlmTmVlZGVkRQotX19aTjdXZWJDb3JlMTVTdHJpbmdUcnVuY2F0
b3IxNGNlbnRlclRydW5jYXRlRVJLTjNXVEY2U3RyaW5nRWZSS05TXzRGb250RQogX19aTjdXZWJD
b3JlMTVTdHJpbmdUcnVuY2F0b3IxM3JpZ2h0VHJ1bmNhdGVFUktOM1dURjZTdHJpbmdFZlJLTlNf
NEZvbnRFCitfX1pON1dlYkNvcmUxNVN0cmluZ1RydW5jYXRvcjE0Y2VudGVyVHJ1bmNhdGVFUktO
M1dURjZTdHJpbmdFZlJLTlNfNEZvbnRFCiBfX1pON1dlYkNvcmUxNVN0cmluZ1RydW5jYXRvcjV3
aWR0aEVSS04zV1RGNlN0cmluZ0VSS05TXzRGb250RQogX19aTjdXZWJDb3JlMTVWaXNpYmxlUG9z
aXRpb25DMUVQTlNfNE5vZGVFaU5TXzlFQWZmaW5pdHlFCiBfX1pON1dlYkNvcmUxNVZpc2libGVQ
b3NpdGlvbkMxRVJLTlNfOFBvc2l0aW9uRU5TXzlFQWZmaW5pdHlFCkBAIC03MDQsNiArNzA1LDcg
QEAgX19aTjdXZWJDb3JlNVJhbmdlOXRleHRSZWN0c0VSTjNXVEY2VmVjdAogX19aTjdXZWJDb3Jl
NVJhbmdlRDFFdgogX19aTjdXZWJDb3JlNkNocm9tZTE2c2V0U3RhdHVzYmFyVGV4dEVQTlNfNUZy
YW1lRVJLTjNXVEY2U3RyaW5nRQogX19aTjdXZWJDb3JlNkN1cnNvcjhmcm9tVHlwZUVOUzBfNFR5
cGVFCitfX1pON1dlYkNvcmU2Q3Vyc29yQzFFUE5TXzVJbWFnZUVSS05TXzhJbnRQb2ludEUKIF9f
Wk43V2ViQ29yZTZDdXJzb3JEMUV2CiBfX1pON1dlYkNvcmU2Q3Vyc29yYVNFUktTMF8KIF9fWk43
V2ViQ29yZTZFZGl0b3IxMGFwcGx5U3R5bGVFUE5TXzE5Q1NTU3R5bGVEZWNsYXJhdGlvbkVOU18x
MEVkaXRBY3Rpb25FCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiA3OTYyMCkKKysrIFNvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM2IEBACisyMDExLTAy
LTI0ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJLaXQyOiBJbWFnZS1iYXNlZCBjdXJzb3Jz
IGRvIG5vdCB3b3JrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD01NTE4NAorCisgICAgICAgICogU2hhcmVkL1NoYXJlYWJsZUJpdG1hcC5oOiBBZGRlZCBy
ZWxlYXNlRGF0YSBmdW5jdGlvbgorICAgICAgICBkZWNsYXJhdGlvbi4gVGhpcyBpcyBvbmx5IGRl
ZmluZWQgZm9yIENHLCBidXQgd2UgY2FuIGRlY2xhcmUKKyAgICAgICAgaXQgd2l0aG91dCBkZWZp
bmluZyBpdCBvbiBub24tQ0cgcGxhdGZvcm1zIHdpdGhvdXQgY2F1c2luZyBwcm9ibGVtcy4KKwor
ICAgICAgICAqIFNoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwOiBBZGRlZC4KKyAgICAg
ICAgKENvcmVJUEM6OmVuY29kZUltYWdlKTogQWRkZWQuIEZvciB1c2UgaW4gdGhlIEN1cnNvciBh
cmd1bWVudCBjb2Rlci4KKyAgICAgICAgKENvcmVJUEM6OmRlY29kZUltYWdlKTogRGl0dG8uCisK
KyAgICAgICAgKiBTaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmg6IEFkZGVkIGNvZGUgdG8g
dGhlIEN1cnNvciBlbmNvZGVyCisgICAgICAgIGFuZCBkZWNvZGVyIHRvIGhhbmRsZSBpbWFnZS1i
YXNlZCBjdXJzb3JzLCB1c2luZyB0aGUgbmV3IGVuY29kZUltYWdlCisgICAgICAgIGFuZCBkZWNv
ZGVJbWFnZSBmdW5jdGlvbnMuCisKKyAgICAgICAgKiBTaGFyZWQvY2cvU2hhcmVhYmxlQml0bWFw
Q0cuY3BwOgorICAgICAgICAoV2ViS2l0OjpTaGFyZWFibGVCaXRtYXA6OnJlbGVhc2VEYXRhKTog
QWRkZWQuCisgICAgICAgIChXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6Y3JlYXRlR3JhcGhpY3ND
b250ZXh0KTogVXNlCisgICAgICAgIENHQml0bWFwQ29udGV4dENyZWF0ZVdpdGhEYXRhIGluc3Rl
YWQgb2YgQ0dCaXRtYXBDb250ZXh0Q3JlYXRlLAorICAgICAgICB0byBndWFyYW50ZWUgd2Ugb3V0
bGFzdCB0aGUgQ0dCaXRtYXBDb250ZXh0IHdlIGNyZWF0ZS4KKyAgICAgICAgKFdlYktpdDo6U2hh
cmVhYmxlQml0bWFwOjpwYWludCk6IEdvdCByaWQgb2YgdW5ubmVlZGVkIGxvY2FsIHZhcmlhYmxl
LgorCisgICAgICAgICogU2hhcmVkL2NnL1dlYkNvcmVBcmd1bWVudENvZGVyc0NHLmNwcDogQWRk
ZWQuCisgICAgICAgIChDb3JlSVBDOjpjcmVhdGVJbWFnZSk6IEFkZGVkLiBGb3IgdXNlIGJ5IENv
cmVJUEM6OmRlY29kZUltYWdlLgorCisgICAgICAgICogV2ViS2l0Mi54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOiBBZGRlZCBXZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwCisgICAgICAgIGFuZCBX
ZWJDb3JlQXJndW1lbnRDb2RlcnNDRy5jcHAuCisgICAgICAgICogd2luL1dlYktpdDIudmNwcm9q
OiBEaXR0by4KKwogMjAxMS0wMi0yNCAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBSb2JlbiBhbmQgbG9va2VkIGF0IGJ5IEJyaWFu
IFdlaW5zdGVpbi4KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9TaGFyZWFibGVCaXRtYXAu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvU2hhcmVhYmxlQml0bWFwLmgJ
KHJldmlzaW9uIDc5NjEzKQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL1NoYXJlYWJsZUJpdG1h
cC5oCSh3b3JraW5nIGNvcHkpCkBAIC03Nyw2ICs3Nyw4IEBAIHByaXZhdGU6CiAKICAgICBzdGF0
aWMgc2l6ZV90IG51bUJ5dGVzRm9yU2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzaXplKSB7
IHJldHVybiBzaXplLndpZHRoKCkgKiBzaXplLmhlaWdodCgpICogNDsgfQogCisgICAgc3RhdGlj
IHZvaWQgcmVsZWFzZURhdGEodm9pZCogdHlwZWxlc3NCaXRtYXAsIHZvaWQqIHR5cGVsZXNzRGF0
YSk7CisgICAgCiAgICAgdm9pZCogZGF0YSgpIGNvbnN0OwogICAgIHNpemVfdCBzaXplSW5CeXRl
cygpIGNvbnN0IHsgcmV0dXJuIG51bUJ5dGVzRm9yU2l6ZShtX3NpemUpOyB9CiAKSW5kZXg6IFNv
dXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwCShyZXZp
c2lvbiAwKQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5j
cHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAi
Y29uZmlnLmgiCisjaW5jbHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCisKK3VzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwordXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKKworbmFtZXNwYWNlIENv
cmVJUEMgeworCisvLyBGb3Igbm93LCB0aGVzZSBhcmUgQ0ctb25seS4gT25jZSBvdGhlciBwbGF0
Zm9ybXMgaGF2ZSBjcmVhdGVJbWFnZSBmdW5jdGlvbnMsCisvLyB3ZSBjYW4gY29tcGlsZSB0aGVz
ZSBmb3Igbm9uLUNHIGJ1aWxkcy4KKyNpZiBQTEFURk9STShDRykKKwordm9pZCBlbmNvZGVJbWFn
ZShBcmd1bWVudEVuY29kZXIqIGVuY29kZXIsIEltYWdlKiBpbWFnZSkKK3sKKyAgICBSZWZQdHI8
U2hhcmVhYmxlQml0bWFwPiBiaXRtYXAgPSBTaGFyZWFibGVCaXRtYXA6OmNyZWF0ZVNoYXJlYWJs
ZShpbWFnZS0+c2l6ZSgpKTsKKyAgICBiaXRtYXAtPmNyZWF0ZUdyYXBoaWNzQ29udGV4dCgpLT5k
cmF3SW1hZ2UoaW1hZ2UsIENvbG9yU3BhY2VEZXZpY2VSR0IsIEludFBvaW50KCkpOworICAgIFNo
YXJlZE1lbW9yeTo6SGFuZGxlIGhhbmRsZTsKKyAgICBiaXRtYXAtPmNyZWF0ZUhhbmRsZShoYW5k
bGUpOworCisgICAgZW5jb2Rlci0+ZW5jb2RlKGltYWdlLT5zaXplKCkpOworICAgIGVuY29kZXIt
PmVuY29kZShoYW5kbGUpOworfQorCitib29sIGRlY29kZUltYWdlKEFyZ3VtZW50RGVjb2Rlciog
ZGVjb2RlciwgUmVmUHRyPEltYWdlPiYgaW1hZ2UpCit7CisgICAgSW50U2l6ZSBpbWFnZVNpemU7
CisgICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUoaW1hZ2VTaXplKSkKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworICAgIFNoYXJlZE1lbW9yeTo6SGFuZGxlIGhhbmRsZTsKKyAgICBpZiAoIWRlY29kZXIt
PmRlY29kZShoYW5kbGUpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgCisgICAgUmVmUHRy
PFNoYXJlYWJsZUJpdG1hcD4gYml0bWFwID0gU2hhcmVhYmxlQml0bWFwOjpjcmVhdGUoaW1hZ2VT
aXplLCBoYW5kbGUpOworICAgIGlmICghYml0bWFwKQorICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgaW1hZ2UgPSBjcmVhdGVJbWFnZShiaXRtYXAuZ2V0KCkpOworICAgIGlmICghaW1hZ2UpCisg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICByZXR1cm4gdHJ1ZTsKK30KKyAgICAKKyNlbmRpZgor
Cit9CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFy
Z3VtZW50Q29kZXJzLmNwcApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZW9sLXN0eWxlCiAgICsgbmF0
aXZlCgpJbmRleDogU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2Rl
cnMuaAkocmV2aXNpb24gNzk2MTMpCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViQ29yZUFy
Z3VtZW50Q29kZXJzLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAxMCwgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTMwLDEzICszMCwxNiBAQAogI2luY2x1ZGUg
IkFyZ3VtZW50RGVjb2Rlci5oIgogI2luY2x1ZGUgIkFyZ3VtZW50RW5jb2Rlci5oIgogI2luY2x1
ZGUgIkFyZ3VtZW50cy5oIgorI2luY2x1ZGUgIlNoYXJlYWJsZUJpdG1hcC5oIgogI2luY2x1ZGUg
PFdlYkNvcmUvQXV0aGVudGljYXRpb25DaGFsbGVuZ2UuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0Jp
dG1hcEltYWdlLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9DcmVkZW50aWFsLmg+CiAjaW5jbHVkZSA8
V2ViQ29yZS9DdXJzb3IuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0RhdGFiYXNlRGV0YWlscy5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvRWRpdG9yLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9FZGl0b3JDbGll
bnQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0Zsb2F0UmVjdC5oPgorI2luY2x1ZGUgPFdlYkNvcmUv
R3JhcGhpY3NDb250ZXh0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9JbnRSZWN0Lmg+CiAjaW5jbHVk
ZSA8V2ViQ29yZS9LZXlib2FyZEV2ZW50Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9QbHVnaW5EYXRh
Lmg+CkBAIC0xODIsMTQgKzE4NSwzMCBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVy
PFdlYkNvcmU6CiB9OwogCiAjaWYgVVNFKExBWllfTkFUSVZFX0NVUlNPUikKKwordm9pZCBlbmNv
ZGVJbWFnZShBcmd1bWVudEVuY29kZXIqLCBXZWJDb3JlOjpJbWFnZSopOworYm9vbCBkZWNvZGVJ
bWFnZShBcmd1bWVudERlY29kZXIqLCBSZWZQdHI8V2ViQ29yZTo6SW1hZ2U+Jik7CitSZWZQdHI8
V2ViQ29yZTo6SW1hZ2U+IGNyZWF0ZUltYWdlKFdlYktpdDo6U2hhcmVhYmxlQml0bWFwKik7CisK
IHRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6Q3Vyc29yPiB7CiAgICAg
c3RhdGljIHZvaWQgZW5jb2RlKEFyZ3VtZW50RW5jb2RlciogZW5jb2RlciwgY29uc3QgV2ViQ29y
ZTo6Q3Vyc29yJiBjdXJzb3IpCiAgICAgewotICAgICAgICAvLyBGSVhNRTogU3VwcG9ydCBjdXN0
b20gY3Vyc29ycy4KLSAgICAgICAgaWYgKGN1cnNvci50eXBlKCkgPT0gV2ViQ29yZTo6Q3Vyc29y
OjpDdXN0b20pCi0gICAgICAgICAgICBlbmNvZGVyLT5lbmNvZGUoc3RhdGljX2Nhc3Q8dWludDMy
X3Q+KFdlYkNvcmU6OkN1cnNvcjo6UG9pbnRlcikpOwotICAgICAgICBlbHNlCi0gICAgICAgICAg
ICBlbmNvZGVyLT5lbmNvZGUoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KGN1cnNvci50eXBlKCkpKTsK
KyAgICAgICAgV2ViQ29yZTo6Q3Vyc29yOjpUeXBlIHR5cGUgPSBjdXJzb3IudHlwZSgpOworI2lm
ICFQTEFURk9STShDRykKKyAgICAgICAgLy8gRklYTUU6IEN1cnJlbnRseSB3ZSBvbmx5IGhhdmUg
dGhlIGNyZWF0ZUltYWdlIGZ1bmN0aW9uIGltcGxlbWVudGVkIGZvciBDRy4KKyAgICAgICAgLy8g
T25jZSB3ZSBpbXBsZW1lbnQgaXQgZm9yIG90aGVyIHBsYXRmb3JtcyB3ZSBjYW4gcmVtb3ZlIHRo
aXMgY29uZGl0aW9uYWwsCisgICAgICAgIC8vIGFuZCB0aGUgb3RoZXIgY29uZGl0aW9uYWxzIGJl
bG93IGFuZCBpbiBXZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwLgorICAgICAgICBpZiAodHlwZSA9
PSBXZWJDb3JlOjpDdXJzb3I6OkN1c3RvbSkKKyAgICAgICAgICAgIHR5cGUgPSBXZWJDb3JlOjpD
dXJzb3I6OlBvaW50ZXI7CisjZW5kaWYKKyAgICAgICAgZW5jb2Rlci0+ZW5jb2RlKHN0YXRpY19j
YXN0PHVpbnQzMl90Pih0eXBlKSk7CisjaWYgUExBVEZPUk0oQ0cpCisgICAgICAgIGlmIChjdXJz
b3IudHlwZSgpICE9IFdlYkNvcmU6OkN1cnNvcjo6Q3VzdG9tKQorICAgICAgICAgICAgcmV0dXJu
OworCisgICAgICAgIGVuY29kZUltYWdlKGVuY29kZXIsIGN1cnNvci5pbWFnZSgpKTsKKyAgICAg
ICAgZW5jb2Rlci0+ZW5jb2RlKGN1cnNvci5ob3RTcG90KCkpOworI2VuZGlmCiAgICAgfQogICAg
IAogICAgIHN0YXRpYyBib29sIGRlY29kZShBcmd1bWVudERlY29kZXIqIGRlY29kZXIsIFdlYkNv
cmU6OkN1cnNvciYgY3Vyc29yKQpAQCAtMTk3LDE0ICsyMTYsMzEgQEAgdGVtcGxhdGU8PiBzdHJ1
Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOgogICAgICAgICB1aW50MzJfdCB0eXBlSW50OwogICAg
ICAgICBpZiAoIWRlY29kZXItPmRlY29kZSh0eXBlSW50KSkKICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKLQorICAgICAgICBpZiAodHlwZUludCA+IFdlYkNvcmU6OkN1cnNvcjo6Q3VzdG9tKQor
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICBXZWJDb3JlOjpDdXJzb3I6OlR5cGUg
dHlwZSA9IHN0YXRpY19jYXN0PFdlYkNvcmU6OkN1cnNvcjo6VHlwZT4odHlwZUludCk7Ci0gICAg
ICAgIEFTU0VSVCh0eXBlICE9IFdlYkNvcmU6OkN1cnNvcjo6Q3VzdG9tKTsKIAotICAgICAgICBj
dXJzb3IgPSBXZWJDb3JlOjpDdXJzb3I6OmZyb21UeXBlKHR5cGUpOworICAgICAgICBpZiAodHlw
ZSAhPSBXZWJDb3JlOjpDdXJzb3I6OkN1c3RvbSkgeworICAgICAgICAgICAgY3Vyc29yID0gV2Vi
Q29yZTo6Q3Vyc29yOjpmcm9tVHlwZSh0eXBlKTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwor
ICAgICAgICB9CisgICAgICAgIAorI2lmICFQTEFURk9STShDRykKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworI2Vsc2UKKyAgICAgICAgUmVmUHRyPFdlYkNvcmU6OkltYWdlPiBpbWFnZTsKKyAgICAg
ICAgaWYgKCFkZWNvZGVJbWFnZShkZWNvZGVyLCBpbWFnZSkpCisgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgIFdlYkNvcmU6OkludFBvaW50IGhvdFNwb3Q7CisgICAgICAgIGlmICgh
ZGVjb2Rlci0+ZGVjb2RlKGhvdFNwb3QpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisg
ICAgICAgIGN1cnNvciA9IFdlYkNvcmU6OkN1cnNvcihpbWFnZS5nZXQoKSwgaG90U3BvdCk7CiAg
ICAgICAgIHJldHVybiB0cnVlOworI2VuZGlmCiAgICAgfQogfTsKKwogI2VuZGlmCiAKIC8vIFRo
ZXNlIHR3byBmdW5jdGlvbnMgYXJlIGltcGxlbWVudGVkIGluIGEgcGxhdGZvcm0gc3BlY2lmaWMg
bWFubmVyLgpJbmRleDogU291cmNlL1dlYktpdDIvU2hhcmVkL2NnL1NoYXJlYWJsZUJpdG1hcENH
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvY2cvU2hhcmVhYmxlQml0
bWFwQ0cuY3BwCShyZXZpc2lvbiA3OTYxMykKKysrIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9jZy9T
aGFyZWFibGVCaXRtYXBDRy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiAvKgot
ICogQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAxMCwgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM0LDEzICszNCwyMyBAQCB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKK3ZvaWQgU2hhcmVh
YmxlQml0bWFwOjpyZWxlYXNlRGF0YSh2b2lkKiB0eXBlbGVzc0JpdG1hcCwgdm9pZCogdHlwZWxl
c3NEYXRhKQoreworICAgIFNoYXJlYWJsZUJpdG1hcCogYml0bWFwID0gc3RhdGljX2Nhc3Q8U2hh
cmVhYmxlQml0bWFwKj4odHlwZWxlc3NCaXRtYXApOworICAgIEFTU0VSVF9VTlVTRUQodHlwZWxl
c3NEYXRhLCBiaXRtYXAtPmRhdGEoKSA9PSB0eXBlbGVzc0RhdGEpOworICAgIGJpdG1hcC0+ZGVy
ZWYoKTsKK30KKwogUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQ+IFNoYXJlYWJsZUJpdG1hcDo6
Y3JlYXRlR3JhcGhpY3NDb250ZXh0KCkKIHsKICAgICBSZXRhaW5QdHI8Q0dDb2xvclNwYWNlUmVm
PiBjb2xvclNwYWNlKEFkb3B0Q0YsIENHQ29sb3JTcGFjZUNyZWF0ZURldmljZVJHQigpKTsKLSAg
ICBSZXRhaW5QdHI8Q0dDb250ZXh0UmVmPiBiaXRtYXBDb250ZXh0KEFkb3B0Q0YsIENHQml0bWFw
Q29udGV4dENyZWF0ZShkYXRhKCksIG1fc2l6ZS53aWR0aCgpLCBtX3NpemUuaGVpZ2h0KCksIDgs
ICBtX3NpemUud2lkdGgoKSAqIDQsIGNvbG9yU3BhY2UuZ2V0KCksIAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGtDR0ltYWdlQWxwaGFQcmVtdWx0aXBsaWVkRmlyc3QgfCBrQ0dCaXRtYXBCeXRlT3JkZXIzMkhv
c3QpKTsKIAotICAgIC8vIFdlIHdhbnQgdGhlIG9yaWdpbiB0byBiZSBpbiB0aGUgdG9wIGxlZnQg
Y29ybmVyIHNvIGZsaXAgdGhlIGJhY2tpbmcgc3RvcmUgY29udGV4dC4KKyAgICByZWYoKTsgLy8g
QmFsYW5jZWQgYnkgZGVyZWYgaW4gcmVsZWFzZURhdGEuCisgICAgUmV0YWluUHRyPENHQ29udGV4
dFJlZj4gYml0bWFwQ29udGV4dChBZG9wdENGLCBDR0JpdG1hcENvbnRleHRDcmVhdGVXaXRoRGF0
YShkYXRhKCksCisgICAgICAgIG1fc2l6ZS53aWR0aCgpLCBtX3NpemUuaGVpZ2h0KCksIDgsIG1f
c2l6ZS53aWR0aCgpICogNCwgY29sb3JTcGFjZS5nZXQoKSwKKyAgICAgICAga0NHSW1hZ2VBbHBo
YVByZW11bHRpcGxpZWRGaXJzdCB8IGtDR0JpdG1hcEJ5dGVPcmRlcjMySG9zdCwgcmVsZWFzZURh
dGEsIHRoaXMpKTsKKworICAgIC8vIFdlIHdhbnQgdGhlIG9yaWdpbiB0byBiZSBpbiB0aGUgdG9w
IGxlZnQgY29ybmVyIHNvIHdlIGZsaXAgdGhlIGJhY2tpbmcgc3RvcmUgY29udGV4dC4KICAgICBD
R0NvbnRleHRUcmFuc2xhdGVDVE0oYml0bWFwQ29udGV4dC5nZXQoKSwgMCwgbV9zaXplLmhlaWdo
dCgpKTsKICAgICBDR0NvbnRleHRTY2FsZUNUTShiaXRtYXBDb250ZXh0LmdldCgpLCAxLCAtMSk7
CiAKQEAgLTQ5LDkgKzU5LDcgQEAgUGFzc093blB0cjxHcmFwaGljc0NvbnRleHQ+IFNoYXJlYWJs
ZUJpdAogCiB2b2lkIFNoYXJlYWJsZUJpdG1hcDo6cGFpbnQoV2ViQ29yZTo6R3JhcGhpY3NDb250
ZXh0JiBjb250ZXh0LCBjb25zdCBJbnRQb2ludCYgZHN0UG9pbnQsIGNvbnN0IEludFJlY3QmIHNy
Y1JlY3QpCiB7Ci0gICAgT3duUHRyPEdyYXBoaWNzQ29udGV4dD4gc291cmNlQ29udGV4dChjcmVh
dGVHcmFwaGljc0NvbnRleHQoKSk7Ci0KLSAgICBwYWludEJpdG1hcENvbnRleHQoY29udGV4dC5w
bGF0Zm9ybUNvbnRleHQoKSwgc291cmNlQ29udGV4dC0+cGxhdGZvcm1Db250ZXh0KCksIGRzdFBv
aW50LCBzcmNSZWN0KTsKKyAgICBwYWludEJpdG1hcENvbnRleHQoY29udGV4dC5wbGF0Zm9ybUNv
bnRleHQoKSwgY3JlYXRlR3JhcGhpY3NDb250ZXh0KCktPnBsYXRmb3JtQ29udGV4dCgpLCBkc3RQ
b2ludCwgc3JjUmVjdCk7CiB9CiAgICAgICAgIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CkluZGV4
OiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvY2cvV2ViQ29yZUFyZ3VtZW50Q29kZXJzQ0cuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9jZy9XZWJDb3JlQXJndW1lbnRDb2Rl
cnNDRy5jcHAJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvY2cvV2ViQ29y
ZUFyZ3VtZW50Q29kZXJzQ0cuY3BwCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQ2IEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIldlYkNvcmVBcmd1bWVudENv
ZGVycy5oIgorCisjaW5jbHVkZSAiU2hhcmVhYmxlQml0bWFwLmgiCisjaW5jbHVkZSA8V2ViQ29y
ZS9CaXRtYXBJbWFnZS5oPgorCit1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKK3VzaW5nIG5hbWVz
cGFjZSBXZWJLaXQ7CisKK25hbWVzcGFjZSBDb3JlSVBDIHsKKworUmVmUHRyPEltYWdlPiBjcmVh
dGVJbWFnZShTaGFyZWFibGVCaXRtYXAqIGJpdG1hcCkKK3sKKyAgICBSZXRhaW5QdHI8Q0dJbWFn
ZVJlZj4gcGxhdGZvcm1JbWFnZShBZG9wdENGLCBDR0JpdG1hcENvbnRleHRDcmVhdGVJbWFnZShi
aXRtYXAtPmNyZWF0ZUdyYXBoaWNzQ29udGV4dCgpLT5wbGF0Zm9ybUNvbnRleHQoKSkpOworICAg
IGlmICghcGxhdGZvcm1JbWFnZSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgLy8gQml0bWFwSW1h
Z2U6OmNyZWF0ZSBhZG9wdHMgdGhlIENHSW1hZ2VSZWYgdGhhdCdzIHBhc3NlZCBpbiwgd2hpY2gg
aXMgd2h5IHdlIG5lZWQgdG8gbGVha1JlZiBoZXJlLgorICAgIHJldHVybiBCaXRtYXBJbWFnZTo6
Y3JlYXRlKHBsYXRmb3JtSW1hZ2UubGVha1JlZigpKTsKK30KKyAgICAKK30KClByb3BlcnR5IGNo
YW5nZXMgb246IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9jZy9XZWJDb3JlQXJndW1lbnRDb2RlcnND
Ry5jcHAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQogICArIG5hdGl2ZQoKSW5kZXg6
IFNvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJ
KHJldmlzaW9uIDc5NjEzKQorKysgU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0zNTMsNiArMzUzLDggQEAKIAkJOTM1RUVC
QTQxMjc3NjFENjAwMzMyMkI4IC8qIEluamVjdGVkQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM1RUVCOTIx
Mjc3NjE1RDAwMzMyMkI4IC8qIEluamVjdGVkQnVuZGxlQmFja0ZvcndhcmRMaXN0SXRlbS5oICov
OyB9OwogCQk5MzkxRjJDQTEyMUI2NzlBMDBFQkY3RTggLyogV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dC5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkz
OTFGMjg0MTIxQjM4RjUwMEVCRjdFOCAvKiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tICov
OyB9OwogCQk5MzkxRjJDQjEyMUI2N0FEMDBFQkY3RTggLyogV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTM5
MUYyODMxMjFCMzhGNTAwRUJGN0U4IC8qIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaCAqLzsg
fTsKKwkJOTM5QUU3NjYxMzE2RTk5QzAwQUUwNkE2IC8qIFdlYkNvcmVBcmd1bWVudENvZGVycy5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5MzlBRTc2
NTEzMTZFOTlDMDBBRTA2QTYgLyogV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcCAqLzsgfTsKKwkJ
OTM5QUU3NjgxMzE2RTlBRDAwQUUwNkE2IC8qIFdlYkNvcmVBcmd1bWVudENvZGVyc0NHLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDkzOUFFNzY3MTMx
NkU5QUQwMEFFMDZBNiAvKiBXZWJDb3JlQXJndW1lbnRDb2RlcnNDRy5jcHAgKi87IH07CiAJCTkz
RkM2N0JEMTJEM0NDRjIwMEE2MDYxMCAvKiBEZWNvZGVyQWRhcHRlci5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5M0ZDNjc5RDEyRDNDQzc0MDBBNjA2
MTAgLyogRGVjb2RlckFkYXB0ZXIuY3BwICovOyB9OwogCQk5M0ZDNjdCRTEyRDNDQ0YyMDBBNjA2
MTAgLyogRGVjb2RlckFkYXB0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDkzRkM2NzlFMTJEM0NDNzQwMEE2MDYxMCAvKiBEZWNvZGVyQWRhcHRlci5o
ICovOyB9OwogCQk5M0ZDNjdCRjEyRDNDQ0YyMDBBNjA2MTAgLyogRW5jb2RlckFkYXB0ZXIuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTNGQzY3OUYx
MkQzQ0M3NDAwQTYwNjEwIC8qIEVuY29kZXJBZGFwdGVyLmNwcCAqLzsgfTsKQEAgLTExNzEsNiAr
MTE3Myw4IEBACiAJCTkzNUVFQjk4MTI3NzYxNkQwMDMzMjJCOCAvKiBXS0J1bmRsZUJhY2tGb3J3
YXJkTGlzdEl0ZW0uaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tCdW5kbGVC
YWNrRm9yd2FyZExpc3RJdGVtLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzOTFG
MjgzMTIxQjM4RjUwMEVCRjdFOCAvKiBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTM5MUYyODQxMjFCMzhGNTAwRUJGN0U4IC8q
IFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0Lm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk5MzlBRTc2NTEzMTZFOTlDMDBBRTA2QTYgLyogV2ViQ29yZUFyZ3Vt
ZW50Q29kZXJzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkNv
cmVBcmd1bWVudENvZGVycy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTkzOUFF
NzY3MTMxNkU5QUQwMEFFMDZBNiAvKiBXZWJDb3JlQXJndW1lbnRDb2RlcnNDRy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJDb3JlQXJndW1lbnRDb2RlcnNDRy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkzRkM2NzlEMTJEM0NDNzQwMEE2MDYx
MCAvKiBEZWNvZGVyQWRhcHRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBEZWNvZGVyQWRhcHRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTkz
RkM2NzlFMTJEM0NDNzQwMEE2MDYxMCAvKiBEZWNvZGVyQWRhcHRlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBEZWNvZGVyQWRhcHRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk5M0ZDNjc5RjEyRDNDQzc0MDBBNjA2MTAgLyogRW5jb2RlckFkYXB0ZXIuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRW5jb2RlckFkYXB0ZXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTk0MSw2ICsxOTQ1LDcgQEAKIAkJCQk1
MTI5MzVENjEyODhEMTk0MDBBNEI2OTUgLyogV2ViQ29udGV4dE1lbnVJdGVtLmggKi8sCiAJCQkJ
NTEwRkJCOTgxMjg4Qzk1RTAwQUZGREY0IC8qIFdlYkNvbnRleHRNZW51SXRlbURhdGEuY3BwICov
LAogCQkJCTUxMEZCQjk5MTI4OEM5NUUwMEFGRkRGNCAvKiBXZWJDb250ZXh0TWVudUl0ZW1EYXRh
LmggKi8sCisJCQkJOTM5QUU3NjUxMzE2RTk5QzAwQUUwNkE2IC8qIFdlYkNvcmVBcmd1bWVudENv
ZGVycy5jcHAgKi8sCiAJCQkJQkMxREQ3QjExMTREQzM5NjAwNUFEQUYzIC8qIFdlYkNvcmVBcmd1
bWVudENvZGVycy5oICovLAogCQkJCTUxNTc4QjgyMTIwOUVDRUYwMEEzN0M0QSAvKiBXZWJEYXRh
LmggKi8sCiAJCQkJQkM1NzU2MTIxMjZFMDEzODAwNkYwRjEyIC8qIFdlYkVycm9yLmNwcCAqLywK
QEAgLTI4ODEsNiArMjg4Niw3IEBACiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0g
KAogCQkJCUMwMUEyNjAwMTI2NjJGMjEwMEM5RUQ1NSAvKiBTaGFyZWFibGVCaXRtYXBDRy5jcHAg
Ki8sCisJCQkJOTM5QUU3NjcxMzE2RTlBRDAwQUUwNkE2IC8qIFdlYkNvcmVBcmd1bWVudENvZGVy
c0NHLmNwcCAqLywKIAkJCSk7CiAJCQlwYXRoID0gY2c7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91
cD4iOwpAQCAtMzgzOSw2ICszODQ1LDggQEAKIAkJCQkzMzM2NzY1NzEzMEM5RUNBMDA2QzlERTIg
LyogV2ViUmVzb3VyY2VDYWNoZU1hbmFnZXJQcm94eU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQkzMzE1Mjk3NTEzMEQwQ0IyMDBFRDI0ODMgLyogU2VjdXJpdHlPcmlnaW5E
YXRhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMzRjlENUI5MTMxMkYxRUUwMDBENjgzRiAvKiBX
ZWJSZXNvdXJjZUNhY2hlTWFuYWdlckNGTmV0LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTkzOUFF
NzY2MTMxNkU5OUMwMEFFMDZBNiAvKiBXZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJOTM5QUU3NjgxMzE2RTlBRDAwQUUwNkE2IC8qIFdlYkNvcmVBcmd1bWVudENv
ZGVyc0NHLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMzMDkzNDQ3MTMxNUI5MjIwMDk3QTdCQyAv
KiBXZWJDb29raWVNYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMzMDkzNDQ5MTMxNUI5MjIwMDk3QTdCQyAvKiBXZWJDb29raWVNYW5hZ2VyUHJveHlNZXNzYWdl
UmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzMwOTM0NEYxMzE1Qjk0RDAwOTdBN0JD
IC8qIFdlYkNvb2tpZU1hbmFnZXIuY3BwIGluIFNvdXJjZXMgKi8sCkluZGV4OiBTb3VyY2UvV2Vi
S2l0Mi93aW4vV2ViS2l0Mi52Y3Byb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvd2lu
L1dlYktpdDIudmNwcm9qCShyZXZpc2lvbiA3OTYxMykKKysrIFNvdXJjZS9XZWJLaXQyL3dpbi9X
ZWJLaXQyLnZjcHJvagkod29ya2luZyBjb3B5KQpAQCAtNTg3LDYgKzU4NywxMCBAQAogCQkJCT4K
IAkJCTwvRmlsZT4KIAkJCTxGaWxlCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxTaGFyZWRcV2ViQ29y
ZUFyZ3VtZW50Q29kZXJzLmNwcCIKKwkJCQk+CisJCQk8L0ZpbGU+CisJCQk8RmlsZQogCQkJCVJl
bGF0aXZlUGF0aD0iLi5cU2hhcmVkXFdlYkNvcmVBcmd1bWVudENvZGVycy5oIgogCQkJCT4KIAkJ
CTwvRmlsZT4KQEAgLTEyMjUsNiArMTIyOSwyNiBAQAogCQkJCQkJLz4KIAkJCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4KIAkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQYXRoPSIu
LlxTaGFyZWRcY2dcV2ViQ29yZUFyZ3VtZW50Q29kZXJzQ0cuY3BwIgorCQkJCQk+CisJCQkJCTxG
aWxlQ29uZmlndXJhdGlvbgorCQkJCQkJTmFtZT0iRGVidWdfQ2Fpcm9fQ0ZMaXRlfFdpbjMyIgor
CQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCisJCQkJCQk+CisJCQkJCQk8VG9vbAorCQkJ
CQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCisJCQkJCQkvPgorCQkJCQk8L0ZpbGVDb25maWd1
cmF0aW9uPgorCQkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KKwkJCQkJCU5hbWU9IlJlbGVhc2VfQ2Fp
cm9fQ0ZMaXRlfFdpbjMyIgorCQkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiCisJCQkJCQk+
CisJCQkJCQk8VG9vbAorCQkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiCisJCQkJCQkvPgor
CQkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPgorCQkJCTwvRmlsZT4KIAkJCTwvRmlsdGVyPgogCQkJ
PEZpbHRlcgogCQkJCU5hbWU9ImNhaXJvIgo=
</data>
<flag name="review"
          id="75591"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>