<?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>27816</bug_id>
          
          <creation_ts>2009-07-29 14:02:42 -0700</creation_ts>
          <short_desc>WINCE PORT: some files modified for WINCE build</short_desc>
          <delta_ts>2009-07-30 11:26:03 -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>Platform</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Other</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>
          
          <blocked>23154</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Yong Li">yong.li.webkit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>manyoso</cc>
    
    <cc>staikos</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>135680</commentid>
    <comment_count>0</comment_count>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2009-07-29 14:02:42 -0700</bug_when>
    <thetext>WebCore/accessibility/AccessibilityObject.h
WebCore/page/win/EventHandlerWin.cpp
WebCore/platform/win/BitmapInfo.h
WebCore/platform/win/PlatformMouseEventWin.cpp
WebCore/platform/win/PlatformScreenWin.cpp
WebCore/platform/win/PopupMenuWin.cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135683</commentid>
    <comment_count>1</comment_count>
      <attachid>33741</attachid>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2009-07-29 14:14:47 -0700</bug_when>
    <thetext>Created attachment 33741
the patch

About BitmapInfo: We started using class BitmapInfo in WINCE port at least 1 year ago. Later, we found that webkit upstream added BitmapInfo.h for win32 port. However, the usage is different. Probably we should restructure it to make WINCE and WIN32 share a same BitmapInfo class? I&apos;m not sure if it&apos;s good for win32 port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135685</commentid>
    <comment_count>2</comment_count>
      <attachid>33743</attachid>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2009-07-29 14:25:16 -0700</bug_when>
    <thetext>Created attachment 33743
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135686</commentid>
    <comment_count>3</comment_count>
      <attachid>33741</attachid>
    <who name="George Staikos">staikos</who>
    <bug_when>2009-07-29 14:28:58 -0700</bug_when>
    <thetext>Comment on attachment 33741
the patch

Let&apos;s remove the bitmapinfo stuff, and also Torch Mobile is spelled wrong in at least one place.


&gt;  class BitmapInfo: public BITMAPINFO

   Space missing


The changes in ~PopupMenu should probably be submitted separately.  They look generic.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135687</commentid>
    <comment_count>4</comment_count>
      <attachid>33743</attachid>
    <who name="George Staikos">staikos</who>
    <bug_when>2009-07-29 14:29:39 -0700</bug_when>
    <thetext>Comment on attachment 33743
updated patch

See previous comments</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135688</commentid>
    <comment_count>5</comment_count>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2009-07-29 14:33:46 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 33741 [details])
&gt; Let&apos;s remove the bitmapinfo stuff, and also Torch Mobile is spelled wrong in at
&gt; least one place.
&gt; 
&gt; 
&gt; &gt;  class BitmapInfo: public BITMAPINFO
&gt; 
&gt;    Space missing
&gt;
o.k.

&gt; 
&gt; The changes in ~PopupMenu should probably be submitted separately.  They look
&gt; generic.

there&apos;s another generic one (ReleaseDC) :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135844</commentid>
    <comment_count>6</comment_count>
      <attachid>33780</attachid>
    <who name="Yong Li">yong.li.webkit</who>
    <bug_when>2009-07-30 07:56:53 -0700</bug_when>
    <thetext>Created attachment 33780
updatd (PopupMenuWin.cpp)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135893</commentid>
    <comment_count>7</comment_count>
    <who name="George Staikos">staikos</who>
    <bug_when>2009-07-30 11:26:03 -0700</bug_when>
    <thetext>Committed, r46591</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33741</attachid>
            <date>2009-07-29 14:14:47 -0700</date>
            <delta_ts>2009-07-29 14:28:58 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>27816.patch</filename>
            <type>text/plain</type>
            <size>12965</size>
            <attacher name="Yong Li">yong.li.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZDNjNzc0YS4uYzkwODBiZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTIsNiArMiwzMSBAQAogCiAgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgogCisgICAgICAgIFdJTkNFIFBPUlQ6IG1vZGlmaWVkIHRvIGJ1aWxkIGZv
ciB3aW5jZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
Mjc4MTYKKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5oOgor
ICAgICAgICAqIHBhZ2Uvd2luL0V2ZW50SGFuZGxlcldpbi5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpFdmVudEhhbmRsZXI6OmNyZWF0ZURyYWdnaW5nQ2xpcGJvYXJkKToKKyAgICAgICAgKiBwbGF0
Zm9ybS93aW4vQml0bWFwSW5mby5oOgorICAgICAgICAoV2ViQ29yZTo6KToKKyAgICAgICAgKiBw
bGF0Zm9ybS93aW4vUGxhdGZvcm1Nb3VzZUV2ZW50V2luLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
Om1lc3NhZ2VUb0V2ZW50VHlwZSk6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybU1vdXNlRXZl
bnQ6OlBsYXRmb3JtTW91c2VFdmVudCk6CisgICAgICAgICogcGxhdGZvcm0vd2luL1BsYXRmb3Jt
U2NyZWVuV2luLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmRldmljZUluZm9Gb3JXaWRnZXQpOgor
ICAgICAgICAoV2ViQ29yZTo6c2NyZWVuSXNNb25vY2hyb21lKToKKyAgICAgICAgKiBwbGF0Zm9y
bS93aW4vUG9wdXBNZW51V2luLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBvcHVwTWVudTo6flBv
cHVwTWVudSk6CisgICAgICAgIChXZWJDb3JlOjpQb3B1cE1lbnU6OnNob3cpOgorICAgICAgICAo
V2ViQ29yZTo6UG9wdXBNZW51OjpwYWludCk6CisgICAgICAgIChXZWJDb3JlOjpyZWdpc3RlclBv
cHVwKToKKyAgICAgICAgKFdlYkNvcmU6OlBvcHVwV25kUHJvYyk6CisKKzIwMDktMDctMjkgIFlv
bmcgTGkgIDx5b25nLmxpQHRvcmNobW9iaWxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKwogICAgICAgICBXSU5DRSBQT1JUOiBtb2RpZmllZCBncmFwaGljcyBm
aWxlcwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc3
NzkKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmpl
Y3QuaCBiL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmgKaW5kZXgg
MzE5YWNlOS4uNDY4YTdhYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vz
c2liaWxpdHlPYmplY3QuaAorKysgYi9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0
eU9iamVjdC5oCkBAIC00MCw3ICs0MCw3IEBACiAKICNpZiBQTEFURk9STShNQUMpCiAjaW5jbHVk
ZSA8d3RmL1JldGFpblB0ci5oPgotI2VsaWYgUExBVEZPUk0oV0lOKQorI2VsaWYgUExBVEZPUk0o
V0lOKSAmJiAhUExBVEZPUk0oV0lOQ0UpCiAjaW5jbHVkZSAiQWNjZXNzaWJpbGl0eU9iamVjdFdy
YXBwZXJXaW4uaCIKICNpbmNsdWRlICJDT01QdHIuaCIKICNlbGlmIFBMQVRGT1JNKENIUk9NSVVN
KQpAQCAtNDI4LDcgKzQyOCw3IEBAIHByb3RlY3RlZDoKIAogI2lmIFBMQVRGT1JNKE1BQykKICAg
ICBSZXRhaW5QdHI8QWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXI+IG1fd3JhcHBlcjsKLSNlbGlm
IFBMQVRGT1JNKFdJTikKKyNlbGlmIFBMQVRGT1JNKFdJTikgJiYgIVBMQVRGT1JNKFdJTkNFKQog
ICAgIENPTVB0cjxBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcj4gbV93cmFwcGVyOwogI2VsaWYg
UExBVEZPUk0oR1RLKQogICAgIEF0a09iamVjdCogbV93cmFwcGVyOwpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9wYWdlL3dpbi9FdmVudEhhbmRsZXJXaW4uY3BwIGIvV2ViQ29yZS9wYWdlL3dpbi9FdmVu
dEhhbmRsZXJXaW4uY3BwCmluZGV4IDg4YmMzNzMuLjEyNWJmYWYgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvcGFnZS93aW4vRXZlbnRIYW5kbGVyV2luLmNwcAorKysgYi9XZWJDb3JlL3BhZ2Uvd2luL0V2
ZW50SGFuZGxlcldpbi5jcHAKQEAgLTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAy
MDA2LCAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAwNy0yMDA5IFRvcmNoIE1vYmlsZSwgSW5jLg0KICAqCiAgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
ICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwpAQCAtODcsOSArODgsMTMgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmV2ZW50
QWN0aXZhdGVkVmlldyhjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIGV2ZW50KSBjb25zdAogCiBQ
YXNzUmVmUHRyPENsaXBib2FyZD4gRXZlbnRIYW5kbGVyOjpjcmVhdGVEcmFnZ2luZ0NsaXBib2Fy
ZCgpIGNvbnN0CiB7CisjaWYgUExBVEZPUk0oV0lOQ0UpCisJcmV0dXJuIDA7CisjZWxzZQogICAg
IENPTVB0cjxXQ0RhdGFPYmplY3Q+IGRhdGFPYmplY3Q7CiAgICAgV0NEYXRhT2JqZWN0OjpjcmVh
dGVJbnN0YW5jZSgmZGF0YU9iamVjdCk7CiAgICAgcmV0dXJuIENsaXBib2FyZFdpbjo6Y3JlYXRl
KHRydWUsIGRhdGFPYmplY3QuZ2V0KCksIENsaXBib2FyZFdyaXRhYmxlKTsKKyNlbmRpZgogfQog
CiB2b2lkIEV2ZW50SGFuZGxlcjo6Zm9jdXNEb2N1bWVudFZpZXcoKQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9wbGF0Zm9ybS93aW4vQml0bWFwSW5mby5oIGIvV2ViQ29yZS9wbGF0Zm9ybS93aW4vQml0
bWFwSW5mby5oCmluZGV4IDAxMjdmZGIuLjNiYzFlN2EgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxh
dGZvcm0vd2luL0JpdG1hcEluZm8uaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL3dpbi9CaXRtYXBJ
bmZvLmgKQEAgLTEsNiArMSw3IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDA5IEFwcGxlIElu
Yy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwOSBCcmVudCBGdWxn
aGFtCisgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOSBUb3JjaCBNb2libGUsIEluYy4gQWxsIFJp
Z2h0cyBSZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzIsMTIg
KzMzLDU1IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmIFBMQVRGT1JNKFdJTkNFKQor
CisgICAgY2xhc3MgQml0bWFwSW5mbzogcHVibGljIEJJVE1BUElORk8KKyAgICB7CisgICAgcHVi
bGljOgorICAgICAgICBCaXRtYXBJbmZvKCkKKyAgICAgICAgeworICAgICAgICB9CisgICAgICAg
IEJpdG1hcEluZm8oYm9vbCBpczE2Yml0LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpCisgICAgICAg
IHsKKyAgICAgICAgICAgIG1lbXNldCh0aGlzLCAwLCBzaXplb2YoQml0bWFwSW5mbykpOworICAg
ICAgICAgICAgYm1pSGVhZGVyLmJpU2l6ZSAgICAgICAgICA9IHNpemVvZihCSVRNQVBJTkZPSEVB
REVSKTsKKyAgICAgICAgICAgIGJtaUhlYWRlci5iaVdpZHRoICAgICAgICAgPSB3aWR0aDsgCisg
ICAgICAgICAgICBibWlIZWFkZXIuYmlIZWlnaHQgICAgICAgID0gLWhlaWdodDsKKyAgICAgICAg
ICAgIGJtaUhlYWRlci5iaVBsYW5lcyAgICAgICAgPSAxOworICAgICAgICAgICAgYm1pSGVhZGVy
LmJpQml0Q291bnQgICAgICA9IGlzMTZiaXQgPyAxNiA6IDMyOworICAgICNpZiBJTUFHRV9OT19B
TFBIQV9VU0VfUkdCNTU1CisgICAgICAgICAgICBibWlIZWFkZXIuYmlDb21wcmVzc2lvbiAgID0g
QklfUkdCOworICAgICNlbHNlCisgICAgICAgICAgICBibWlIZWFkZXIuYmlDb21wcmVzc2lvbiAg
ID0gaXMxNmJpdCA/IEJJX0JJVEZJRUxEUyA6IEJJX1JHQjsKKyAgICAgICAgICAgIGlmIChpczE2
Yml0KSB7CisgICAgICAgICAgICAgICAgKChEV09SRCopYm1pQ29sb3JzKVswXSA9IDB4MDAwMEY4
MDA7CisgICAgICAgICAgICAgICAgKChEV09SRCopYm1pQ29sb3JzKVsxXSA9IDB4MDAwMDA3RTA7
CisgICAgICAgICAgICAgICAgKChEV09SRCopYm1pQ29sb3JzKVsyXSA9IDB4MDAwMDAwMUY7Cisg
ICAgICAgICAgICB9CisgICAgI2VuZGlmCisgICAgICAgIH0KKyAgICAgICAgYm9vbCBpczE2Yml0
KCkgY29uc3QgeyByZXR1cm4gYm1pSGVhZGVyLmJpQml0Q291bnQgPT0gMTY7IH0KKyAgICAgICAg
Ym9vbCBpczMyYml0KCkgY29uc3QgeyByZXR1cm4gYm1pSGVhZGVyLmJpQml0Q291bnQgPT0gMzI7
IH0KKyAgICAgICAgdW5zaWduZWQgd2lkdGgoKSBjb25zdCB7IHJldHVybiBhYnMoYm1pSGVhZGVy
LmJpV2lkdGgpOyB9CisgICAgICAgIHVuc2lnbmVkIGhlaWdodCgpIGNvbnN0IHsgcmV0dXJuIGFi
cyhibWlIZWFkZXIuYmlIZWlnaHQpOyB9CisgICAgICAgIHVuc2lnbmVkIHBhZGRlZFdpZHRoKCkg
Y29uc3QgeyByZXR1cm4gaXMxNmJpdCgpID8gKHdpZHRoKCkgKyAxKSA+PiAxIDw8IDEgOiB3aWR0
aCgpOyB9CisgICAgICAgIHVuc2lnbmVkIG51bVBpeGVscygpIGNvbnN0IHsgcmV0dXJuIHBhZGRl
ZFdpZHRoKCkgKiBoZWlnaHQoKTsgfQorICAgICAgICB1bnNpZ25lZCBwYWRkZWRCeXRlc1Blckxp
bmUoKSBjb25zdCB7IHJldHVybiBpczE2Yml0KCkgPyBwYWRkZWRXaWR0aCgpICogMiA6IHdpZHRo
KCkgKiA0OyB9CisgICAgICAgIHVuc2lnbmVkIGJ5dGVzUGVyTGluZSgpIGNvbnN0IHsgcmV0dXJu
IHdpZHRoKCkgKiAoaXMxNmJpdCgpID8gMiA6IDQpOyB9CisgICAgcHJpdmF0ZToKKyAgICAgICAg
RFdPUkQgY29sb3JzWzNdOworICAgIH07CisKKyNlbHNlCisKIHN0cnVjdCBCaXRtYXBJbmZvIDog
cHVibGljIEJJVE1BUElORk8gewogICAgIEJpdG1hcEluZm8gKCk7CiAgICAgc3RhdGljIEJpdG1h
cEluZm8gY3JlYXRlKGNvbnN0IEludFNpemUmKTsKICAgICBzdGF0aWMgQml0bWFwSW5mbyBjcmVh
dGVCb3R0b21VcChjb25zdCBJbnRTaXplJik7CiB9OwogCisjZW5kaWYKKwogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gQml0bWFwSW5mb19oCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L3BsYXRmb3JtL3dpbi9QbGF0Zm9ybU1vdXNlRXZlbnRXaW4uY3BwIGIvV2ViQ29yZS9wbGF0Zm9y
bS93aW4vUGxhdGZvcm1Nb3VzZUV2ZW50V2luLmNwcAppbmRleCA3MTEwYjM5Li5lOWMwZTNlIDEw
MDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9QbGF0Zm9ybU1vdXNlRXZlbnRXaW4uY3Bw
CisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BsYXRmb3JtTW91c2VFdmVudFdpbi5jcHAKQEAg
LTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3IEFwcGxlIEluYy4g
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3JjaCBN
b2JpbGUgSW5jLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC02Myw3ICs2NCw5
IEBAIHN0YXRpYyBNb3VzZUV2ZW50VHlwZSBtZXNzYWdlVG9FdmVudFR5cGUoVUlOVCBtZXNzYWdl
KQogICAgICAgICBjYXNlIFdNX01CVVRUT05VUDoKICAgICAgICAgICAgIHJldHVybiBNb3VzZUV2
ZW50UmVsZWFzZWQ7CiAKKyNpZiAhUExBVEZPUk0oV0lOQ0UpCiAgICAgICAgIGNhc2UgV01fTU9V
U0VMRUFWRToKKyNlbmRpZgogICAgICAgICBjYXNlIFdNX01PVVNFTU9WRToKICAgICAgICAgICAg
IHJldHVybiBNb3VzZUV2ZW50TW92ZWQ7CiAKQEAgLTEwNCw3ICsxMDcsOSBAQCBQbGF0Zm9ybU1v
dXNlRXZlbnQ6OlBsYXRmb3JtTW91c2VFdmVudChIV05EIGhXbmQsIFVJTlQgbWVzc2FnZSwgV1BB
UkFNIHdQYXJhbSwgTAogICAgICAgICAgICAgbV9idXR0b24gPSBNaWRkbGVCdXR0b247CiAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBXTV9NT1VTRU1PVkU6CisjaWYgIVBMQVRGT1JN
KFdJTkNFKQogICAgICAgICBjYXNlIFdNX01PVVNFTEVBVkU6CisjZW5kaWYKICAgICAgICAgICAg
IGlmICh3UGFyYW0gJiBNS19MQlVUVE9OKQogICAgICAgICAgICAgICAgIG1fYnV0dG9uID0gTGVm
dEJ1dHRvbjsKICAgICAgICAgICAgIGVsc2UgaWYgKHdQYXJhbSAmIE1LX01CVVRUT04pCmRpZmYg
LS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9QbGF0Zm9ybVNjcmVlbldpbi5jcHAgYi9XZWJD
b3JlL3BsYXRmb3JtL3dpbi9QbGF0Zm9ybVNjcmVlbldpbi5jcHAKaW5kZXggNTZjODEzOS4uN2Fj
NDcwNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUGxhdGZvcm1TY3JlZW5XaW4u
Y3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BsYXRmb3JtU2NyZWVuV2luLmNwcApAQCAt
MSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcgQXBwbGUgSW5jLiAg
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOSBUb3JjaCBNb2JpbGUs
IEluYy4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDksMTIgKzUwLDE2IEBA
IHN0YXRpYyBNT05JVE9SSU5GT0VYIG1vbml0b3JJbmZvRm9yV2lkZ2V0KFdpZGdldCogd2lkZ2V0
KQogCiBzdGF0aWMgREVWTU9ERSBkZXZpY2VJbmZvRm9yV2lkZ2V0KFdpZGdldCogd2lkZ2V0KQog
ewotICAgIE1PTklUT1JJTkZPRVggbW9uaXRvckluZm8gPSBtb25pdG9ySW5mb0ZvcldpZGdldCh3
aWRnZXQpOwotCiAgICAgREVWTU9ERSBkZXZpY2VJbmZvOwogICAgIGRldmljZUluZm8uZG1TaXpl
ID0gc2l6ZW9mKERFVk1PREUpOwogICAgIGRldmljZUluZm8uZG1Ecml2ZXJFeHRyYSA9IDA7Cisj
aWYgUExBVEZPUk0oV0lOQ0UpCisgICAgaWYgKCFFbnVtRGlzcGxheVNldHRpbmdzKDAsIEVOVU1f
Q1VSUkVOVF9TRVRUSU5HUywgJmRldmljZUluZm8pKQorICAgICAgICBkZXZpY2VJbmZvLmRtQml0
c1BlclBlbCA9IDE2OworI2Vsc2UKKyAgICBNT05JVE9SSU5GT0VYIG1vbml0b3JJbmZvID0gbW9u
aXRvckluZm9Gb3JXaWRnZXQod2lkZ2V0KTsKICAgICBFbnVtRGlzcGxheVNldHRpbmdzKG1vbml0
b3JJbmZvLnN6RGV2aWNlLCBFTlVNX0NVUlJFTlRfU0VUVElOR1MsICZkZXZpY2VJbmZvKTsKKyNl
bmRpZgogCiAgICAgcmV0dXJuIGRldmljZUluZm87CiB9CkBAIC03NCw4ICs3OSwxMyBAQCBpbnQg
c2NyZWVuRGVwdGhQZXJDb21wb25lbnQoV2lkZ2V0KiB3aWRnZXQpCiAKIGJvb2wgc2NyZWVuSXNN
b25vY2hyb21lKFdpZGdldCogd2lkZ2V0KQogeworI2lmIFBMQVRGT1JNKFdJTkNFKQorICAgIC8v
IEVudW1EaXNwbGF5U2V0dGluZ3MgZG9lc24ndCBzZXQgZG1Db2xvciBpbiBERVZNT0RFLgorICAg
IHJldHVybiBmYWxzZTsKKyNlbHNlCiAgICAgREVWTU9ERSBkZXZpY2VJbmZvID0gZGV2aWNlSW5m
b0ZvcldpZGdldCh3aWRnZXQpOwogICAgIHJldHVybiBkZXZpY2VJbmZvLmRtQ29sb3IgPT0gRE1D
T0xPUl9NT05PQ0hST01FOworI2VuZGlmCiB9CiAKIEZsb2F0UmVjdCBzY3JlZW5SZWN0KFdpZGdl
dCogd2lkZ2V0KQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUG9wdXBNZW51V2lu
LmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BvcHVwTWVudVdpbi5jcHAKaW5kZXggZGQwOTE3
My4uMzZlNGMwOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUG9wdXBNZW51V2lu
LmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Qb3B1cE1lbnVXaW4uY3BwCkBAIC0xLDUg
KzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwNywgMjAwOCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOSBUb3JjaCBN
b2JpbGUgSW5jLgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2Fu
IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2Yg
dGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC0zOSw2ICs0MCwxMyBAQAogI2luY2x1
ZGUgIlNpbXBsZUZvbnREYXRhLmgiCiAjaW5jbHVkZSA8dGNoYXIuaD4KICNpbmNsdWRlIDx3aW5k
b3dzLmg+CisjaWYgUExBVEZPUk0oV0lOQ0UpCisjaW5jbHVkZSA8UmVzRGVmQ0UuaD4KKyNkZWZp
bmUgTUFLRVBPSU5UUyhsKSAoKigoUE9JTlRTIEZBUiAqKSYobCkpKQorbmFtZXNwYWNlIEpTQyB7
CisgICAgZXh0ZXJuIHZvaWQgKmdfc3RhY2tCYXNlOworfQorI2VuZGlmCiAKIHVzaW5nIHN0ZDo6
bWluOwogCkBAIC04NCw3ICs5Miw3IEBAIFBvcHVwTWVudTo6flBvcHVwTWVudSgpCiAgICAgaWYg
KG1fYm1wKQogICAgICAgICA6OkRlbGV0ZU9iamVjdChtX2JtcCk7CiAgICAgaWYgKG1fREMpCi0g
ICAgICAgIDo6RGVsZXRlT2JqZWN0KG1fREMpOworICAgICAgICA6OkRlbGV0ZURDKG1fREMpOwog
ICAgIGlmIChtX3BvcHVwKQogICAgICAgICA6OkRlc3Ryb3lXaW5kb3cobV9wb3B1cCk7CiB9CkBA
IC0xMTAsNyArMTE4LDExIEBAIHZvaWQgUG9wdXBNZW51OjpzaG93KGNvbnN0IEludFJlY3QmIHIs
IEZyYW1lVmlldyogdiwgaW50IGluZGV4KQogICAgICAgICBpZiAoIW1fcG9wdXApCiAgICAgICAg
ICAgICByZXR1cm47CiAKKyNpZiBQTEFURk9STShXSU5DRSkKKyAgICAgICAgOjpTZXRXaW5kb3dM
b25nKG1fcG9wdXAsIDAsIChMT05HKXRoaXMpOworI2Vsc2UKICAgICAgICAgOjpTZXRXaW5kb3dM
b25nUHRyKG1fcG9wdXAsIDAsIChMT05HX1BUUil0aGlzKTsKKyNlbmRpZgogICAgIH0KIAogICAg
IGlmICghbV9zY3JvbGxiYXIpCkBAIC0xMjQsNiArMTM2LDcgQEAgdm9pZCBQb3B1cE1lbnU6OnNo
b3coY29uc3QgSW50UmVjdCYgciwgRnJhbWVWaWV3KiB2LCBpbnQgaW5kZXgpCiAgICAgLy8gRGV0
ZXJtaW5lIHdoZXRoZXIgd2Ugc2hvdWxkIGFuaW1hdGUgb3VyIHBvcHVwcwogICAgIC8vIE5vdGU6
IE11c3QgdXNlICdCT09MJyBhbmQgJ0ZBTFNFJyBpbnN0ZWFkIG9mICdib29sJyBhbmQgJ2ZhbHNl
JyB0byBhdm9pZCBzdGFjayBjb3JydXB0aW9uIHdpdGggU3lzdGVtUGFyYW1ldGVyc0luZm8KICAg
ICBCT09MIHNob3VsZEFuaW1hdGUgPSBGQUxTRTsKKyNpZiAhUExBVEZPUk0oV0lOQ0UpCiAgICAg
OjpTeXN0ZW1QYXJhbWV0ZXJzSW5mbyhTUElfR0VUQ09NQk9CT1hBTklNQVRJT04sIDAsICZzaG91
bGRBbmltYXRlLCAwKTsKIAogICAgIGlmIChzaG91bGRBbmltYXRlKSB7CkBAIC0xMzgsNiArMTUx
LDcgQEAgdm9pZCBQb3B1cE1lbnU6OnNob3coY29uc3QgSW50UmVjdCYgciwgRnJhbWVWaWV3KiB2
LCBpbnQgaW5kZXgpCiAgICAgICAgICAgICA6OkFuaW1hdGVXaW5kb3cobV9wb3B1cCwgZGVmYXVs
dEFuaW1hdGlvbkR1cmF0aW9uLCBBV19TTElERSB8IHNsaWRlRGlyZWN0aW9uIHwgQVdfQUNUSVZB
VEUpOwogICAgICAgICB9CiAgICAgfSBlbHNlCisjZW5kaWYKICAgICAgICAgOjpTaG93V2luZG93
KG1fcG9wdXAsIFNXX1NIT1dOT1JNQUwpOwogICAgIDo6U2V0Q2FwdHVyZShtX3BvcHVwKTsKIApA
QCAtNDUyLDggKzQ2NiwxMSBAQCB2b2lkIFBvcHVwTWVudTo6cGFpbnQoY29uc3QgSW50UmVjdCYg
ZGFtYWdlUmVjdCwgSERDIGhkYykKICAgICAgICAgfQogICAgIH0KICAgICBpZiAoIW1fYm1wKSB7
CisjaWYgUExBVEZPUk0oV0lOQ0UpCisgICAgICAgIEJpdG1hcEluZm8gYml0bWFwSW5mbyh0cnVl
LCBjbGllbnRSZWN0KCkud2lkdGgoKSwgY2xpZW50UmVjdCgpLmhlaWdodCgpKTsKKyNlbHNlCiAg
ICAgICAgIEJpdG1hcEluZm8gYml0bWFwSW5mbyA9IEJpdG1hcEluZm86OmNyZWF0ZUJvdHRvbVVw
KGNsaWVudFJlY3QoKS5zaXplKCkpOwotCisjZW5kaWYKICAgICAgICAgdm9pZCogcGl4ZWxzID0g
MDsKICAgICAgICAgbV9ibXAgPSA6OkNyZWF0ZURJQlNlY3Rpb24obV9EQywgJmJpdG1hcEluZm8s
IERJQl9SR0JfQ09MT1JTLCAmcGl4ZWxzLCAwLCAwKTsKICAgICAgICAgaWYgKCFtX2JtcCkKQEAg
LTUyNSwxMCArNTQyLDEyIEBAIHZvaWQgUG9wdXBNZW51OjpwYWludChjb25zdCBJbnRSZWN0JiBk
YW1hZ2VSZWN0LCBIREMgaGRjKQogICAgIGlmIChtX3Njcm9sbGJhcikKICAgICAgICAgbV9zY3Jv
bGxiYXItPnBhaW50KCZjb250ZXh0LCBkYW1hZ2VSZWN0KTsKIAotICAgIGlmICghaGRjKQotICAg
ICAgICBoZGMgPSA6OkdldERDKG1fcG9wdXApOworICAgIEhEQyBsb2NhbERDID0gaGRjID8gaGRj
IDogOjpHZXREQyhtX3BvcHVwKTsKKworICAgIDo6Qml0Qmx0KGxvY2FsREMsIGRhbWFnZVJlY3Qu
eCgpLCBkYW1hZ2VSZWN0LnkoKSwgZGFtYWdlUmVjdC53aWR0aCgpLCBkYW1hZ2VSZWN0LmhlaWdo
dCgpLCBtX0RDLCBkYW1hZ2VSZWN0LngoKSwgZGFtYWdlUmVjdC55KCksIFNSQ0NPUFkpOwogCi0g
ICAgOjpCaXRCbHQoaGRjLCBkYW1hZ2VSZWN0LngoKSwgZGFtYWdlUmVjdC55KCksIGRhbWFnZVJl
Y3Qud2lkdGgoKSwgZGFtYWdlUmVjdC5oZWlnaHQoKSwgbV9EQywgZGFtYWdlUmVjdC54KCksIGRh
bWFnZVJlY3QueSgpLCBTUkNDT1BZKTsKKyAgICBpZiAoIWhkYykKKyAgICAgICAgOjpSZWxlYXNl
REMobV9wb3B1cCwgbG9jYWxEQyk7CiB9CiAKIHZvaWQgUG9wdXBNZW51Ojp2YWx1ZUNoYW5nZWQo
U2Nyb2xsYmFyKiBzY3JvbGxCYXIpCkBAIC01ODIsMTEgKzYwMSwxNSBAQCBzdGF0aWMgQVRPTSBy
ZWdpc3RlclBvcHVwKCkKICAgICBpZiAoaGF2ZVJlZ2lzdGVyZWRXaW5kb3dDbGFzcykKICAgICAg
ICAgcmV0dXJuIHRydWU7CiAKKyNpZiBQTEFURk9STShXSU5DRSkKKyAgICBXTkRDTEFTUyB3Y2V4
OworI2Vsc2UKICAgICBXTkRDTEFTU0VYIHdjZXg7Ci0KICAgICB3Y2V4LmNiU2l6ZSA9IHNpemVv
ZihXTkRDTEFTU0VYKTsKLQorICAgIHdjZXguaEljb25TbSAgICAgICAgPSAwOwogICAgIHdjZXgu
c3R5bGUgICAgICAgICAgPSBDU19EUk9QU0hBRE9XOworI2VuZGlmCisKICAgICB3Y2V4LmxwZm5X
bmRQcm9jICAgID0gUG9wdXBXbmRQcm9jOwogICAgIHdjZXguY2JDbHNFeHRyYSAgICAgPSAwOwog
ICAgIHdjZXguY2JXbmRFeHRyYSAgICAgPSBzaXplb2YoUG9wdXBNZW51Kik7IC8vIEZvciB0aGUg
UG9wdXBNZW51IHBvaW50ZXIKQEAgLTU5NiwxOCArNjE5LDI1IEBAIHN0YXRpYyBBVE9NIHJlZ2lz
dGVyUG9wdXAoKQogICAgIHdjZXguaGJyQmFja2dyb3VuZCAgPSAwOwogICAgIHdjZXgubHBzek1l
bnVOYW1lICAgPSAwOwogICAgIHdjZXgubHBzekNsYXNzTmFtZSAgPSBrUG9wdXBXaW5kb3dDbGFz
c05hbWU7Ci0gICAgd2NleC5oSWNvblNtICAgICAgICA9IDA7CiAKICAgICBoYXZlUmVnaXN0ZXJl
ZFdpbmRvd0NsYXNzID0gdHJ1ZTsKIAorI2lmIFBMQVRGT1JNKFdJTkNFKQorICAgIHJldHVybiA6
OlJlZ2lzdGVyQ2xhc3MoJndjZXgpOworI2Vsc2UKICAgICByZXR1cm4gOjpSZWdpc3RlckNsYXNz
RXgoJndjZXgpOworI2VuZGlmCiB9CiAKIGNvbnN0IGludCBzbW9vdGhTY3JvbGxBbmltYXRpb25E
dXJhdGlvbiA9IDUwMDA7CiBzdGF0aWMgTFJFU1VMVCBDQUxMQkFDSyBQb3B1cFduZFByb2MoSFdO
RCBoV25kLCBVSU5UIG1lc3NhZ2UsIFdQQVJBTSB3UGFyYW0sIExQQVJBTSBsUGFyYW0pCiB7CiAg
ICAgTFJFU1VMVCBsUmVzdWx0ID0gMDsKKyNpZiBQTEFURk9STShXSU5DRSkKKyAgICBMT05HIGxv
bmdQdHIgPSBHZXRXaW5kb3dMb25nKGhXbmQsIDApOworI2Vsc2UKICAgICBMT05HX1BUUiBsb25n
UHRyID0gR2V0V2luZG93TG9uZ1B0cihoV25kLCAwKTsKKyNlbmRpZgogICAgIFBvcHVwTWVudSog
cG9wdXAgPSByZWludGVycHJldF9jYXN0PFBvcHVwTWVudSo+KGxvbmdQdHIpOwogCiAgICAgc3dp
dGNoIChtZXNzYWdlKSB7CkBAIC03MjQsNyArNzU0LDkgQEAgc3RhdGljIExSRVNVTFQgQ0FMTEJB
Q0sgUG9wdXBXbmRQcm9jKEhXTkQgaFduZCwgVUlOVCBtZXNzYWdlLCBXUEFSQU0gd1BhcmFtLCBM
UEEKICAgICAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgICAgICBCT09MIHNob3VsZEhvdFRy
YWNrID0gRkFMU0U7CisjaWYgIVBMQVRGT1JNKFdJTkNFKQogICAgICAgICAgICAgICAgIDo6U3lz
dGVtUGFyYW1ldGVyc0luZm8oU1BJX0dFVEhPVFRSQUNLSU5HLCAwLCAmc2hvdWxkSG90VHJhY2ss
IDApOworI2VuZGlmCiAKICAgICAgICAgICAgICAgICBSRUNUIGJvdW5kczsKICAgICAgICAgICAg
ICAgICBHZXRDbGllbnRSZWN0KHBvcHVwLT5wb3B1cEhhbmRsZSgpLCAmYm91bmRzKTsKQEAgLTgw
OSwxMCArODQxLDEyIEBAIHN0YXRpYyBMUkVTVUxUIENBTExCQUNLIFBvcHVwV25kUHJvYyhIV05E
IGhXbmQsIFVJTlQgbWVzc2FnZSwgV1BBUkFNIHdQYXJhbSwgTFBBCiAgICAgICAgICAgICAgICAg
bFJlc3VsdCA9IDA7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKKyNpZiAhUExB
VEZPUk0oV0lOQ0UpCiAgICAgICAgIGNhc2UgV01fUFJJTlRDTElFTlQ6CiAgICAgICAgICAgICBp
ZiAocG9wdXApCiAgICAgICAgICAgICAgICAgcG9wdXAtPnBhaW50KHBvcHVwLT5jbGllbnRSZWN0
KCksIChIREMpd1BhcmFtKTsKICAgICAgICAgICAgIGJyZWFrOworI2VuZGlmCiAgICAgICAgIGRl
ZmF1bHQ6CiAgICAgICAgICAgICBsUmVzdWx0ID0gRGVmV2luZG93UHJvYyhoV25kLCBtZXNzYWdl
LCB3UGFyYW0sIGxQYXJhbSk7CiAgICAgfQo=
</data>
<flag name="review"
          id="17951"
          type_id="1"
          status="-"
          setter="staikos"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33743</attachid>
            <date>2009-07-29 14:25:16 -0700</date>
            <delta_ts>2009-07-30 07:56:53 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>27816.patch</filename>
            <type>text/plain</type>
            <size>12919</size>
            <attacher name="Yong Li">yong.li.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZDNjNzc0YS4uMjI4M2Q5YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTIsNiArMiwzMSBAQAogCiAgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgogCisgICAgICAgIFdJTkNFIFBPUlQ6IG1vZGlmaWVkIHRvIGJ1aWxkIGZv
ciBXSU5DRSBwb3J0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yNzgxNgorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0
Lmg6CisgICAgICAgICogcGFnZS93aW4vRXZlbnRIYW5kbGVyV2luLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkV2ZW50SGFuZGxlcjo6Y3JlYXRlRHJhZ2dpbmdDbGlwYm9hcmQpOgorICAgICAgICAq
IHBsYXRmb3JtL3dpbi9CaXRtYXBJbmZvLmg6CisgICAgICAgIChXZWJDb3JlOjopOgorICAgICAg
ICAqIHBsYXRmb3JtL3dpbi9QbGF0Zm9ybU1vdXNlRXZlbnRXaW4uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6bWVzc2FnZVRvRXZlbnRUeXBlKToKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTW91
c2VFdmVudDo6UGxhdGZvcm1Nb3VzZUV2ZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vUGxh
dGZvcm1TY3JlZW5XaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6ZGV2aWNlSW5mb0ZvcldpZGdl
dCk6CisgICAgICAgIChXZWJDb3JlOjpzY3JlZW5Jc01vbm9jaHJvbWUpOgorICAgICAgICAqIHBs
YXRmb3JtL3dpbi9Qb3B1cE1lbnVXaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UG9wdXBNZW51
Ojp+UG9wdXBNZW51KToKKyAgICAgICAgKFdlYkNvcmU6OlBvcHVwTWVudTo6c2hvdyk6CisgICAg
ICAgIChXZWJDb3JlOjpQb3B1cE1lbnU6OnBhaW50KToKKyAgICAgICAgKFdlYkNvcmU6OnJlZ2lz
dGVyUG9wdXApOgorICAgICAgICAoV2ViQ29yZTo6UG9wdXBXbmRQcm9jKToKKworMjAwOS0wNy0y
OSAgWW9uZyBMaSAgPHlvbmcubGlAdG9yY2htb2JpbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCiAgICAgICAgIFdJTkNFIFBPUlQ6IG1vZGlmaWVkIGdyYXBo
aWNzIGZpbGVzCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yNzc3OQogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0
eU9iamVjdC5oIGIvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaApp
bmRleCAzMTlhY2U5Li40NjhhN2FhIDEwMDY0NAotLS0gYS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
QWNjZXNzaWJpbGl0eU9iamVjdC5oCisrKyBiL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5T2JqZWN0LmgKQEAgLTQwLDcgKzQwLDcgQEAKIAogI2lmIFBMQVRGT1JNKE1BQykKICNp
bmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+Ci0jZWxpZiBQTEFURk9STShXSU4pCisjZWxpZiBQTEFU
Rk9STShXSU4pICYmICFQTEFURk9STShXSU5DRSkKICNpbmNsdWRlICJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlcldpbi5oIgogI2luY2x1ZGUgIkNPTVB0ci5oIgogI2VsaWYgUExBVEZPUk0oQ0hS
T01JVU0pCkBAIC00MjgsNyArNDI4LDcgQEAgcHJvdGVjdGVkOgogCiAjaWYgUExBVEZPUk0oTUFD
KQogICAgIFJldGFpblB0cjxBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcj4gbV93cmFwcGVyOwot
I2VsaWYgUExBVEZPUk0oV0lOKQorI2VsaWYgUExBVEZPUk0oV0lOKSAmJiAhUExBVEZPUk0oV0lO
Q0UpCiAgICAgQ09NUHRyPEFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyPiBtX3dyYXBwZXI7CiAj
ZWxpZiBQTEFURk9STShHVEspCiAgICAgQXRrT2JqZWN0KiBtX3dyYXBwZXI7CmRpZmYgLS1naXQg
YS9XZWJDb3JlL3BhZ2Uvd2luL0V2ZW50SGFuZGxlcldpbi5jcHAgYi9XZWJDb3JlL3BhZ2Uvd2lu
L0V2ZW50SGFuZGxlcldpbi5jcHAKaW5kZXggODhiYzM3My4uMTI1YmZhZiAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9wYWdlL3dpbi9FdmVudEhhbmRsZXJXaW4uY3BwCisrKyBiL1dlYkNvcmUvcGFnZS93
aW4vRXZlbnRIYW5kbGVyV2luLmNwcApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQg
KEMpIDIwMDYsIDIwMDcsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDA3LTIwMDkgVG9yY2ggTW9iaWxlLCBJbmMuDQogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCkBAIC04Nyw5ICs4OCwxMyBAQCBib29sIEV2ZW50SGFuZGxlcjo6
ZXZlbnRBY3RpdmF0ZWRWaWV3KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgZXZlbnQpIGNvbnN0
CiAKIFBhc3NSZWZQdHI8Q2xpcGJvYXJkPiBFdmVudEhhbmRsZXI6OmNyZWF0ZURyYWdnaW5nQ2xp
cGJvYXJkKCkgY29uc3QKIHsKKyNpZiBQTEFURk9STShXSU5DRSkKKwlyZXR1cm4gMDsKKyNlbHNl
CiAgICAgQ09NUHRyPFdDRGF0YU9iamVjdD4gZGF0YU9iamVjdDsKICAgICBXQ0RhdGFPYmplY3Q6
OmNyZWF0ZUluc3RhbmNlKCZkYXRhT2JqZWN0KTsKICAgICByZXR1cm4gQ2xpcGJvYXJkV2luOjpj
cmVhdGUodHJ1ZSwgZGF0YU9iamVjdC5nZXQoKSwgQ2xpcGJvYXJkV3JpdGFibGUpOworI2VuZGlm
CiB9CiAKIHZvaWQgRXZlbnRIYW5kbGVyOjpmb2N1c0RvY3VtZW50VmlldygpCmRpZmYgLS1naXQg
YS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9CaXRtYXBJbmZvLmggYi9XZWJDb3JlL3BsYXRmb3JtL3dp
bi9CaXRtYXBJbmZvLmgKaW5kZXggMDEyN2ZkYi4uM2JjMWU3YSAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9wbGF0Zm9ybS93aW4vQml0bWFwSW5mby5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vd2luL0Jp
dG1hcEluZm8uaApAQCAtMSw2ICsxLDcgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDkgQXBw
bGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgogICogQ29weXJpZ2h0IChDKSAyMDA5IEJyZW50
IEZ1bGdoYW0KKyAqIENvcHlyaWdodCAoQykgMjAwNy0yMDA5IFRvcmNoIE1vaWJsZSwgSW5jLiBB
bGwgUmlnaHRzIFJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0z
MiwxMiArMzMsNTUgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCisjaWYgUExBVEZPUk0oV0lO
Q0UpCisKKyAgICBjbGFzcyBCaXRtYXBJbmZvOiBwdWJsaWMgQklUTUFQSU5GTworICAgIHsKKyAg
ICBwdWJsaWM6CisgICAgICAgIEJpdG1hcEluZm8oKQorICAgICAgICB7CisgICAgICAgIH0KKyAg
ICAgICAgQml0bWFwSW5mbyhib29sIGlzMTZiaXQsIGludCB3aWR0aCwgaW50IGhlaWdodCkKKyAg
ICAgICAgeworICAgICAgICAgICAgbWVtc2V0KHRoaXMsIDAsIHNpemVvZihCaXRtYXBJbmZvKSk7
CisgICAgICAgICAgICBibWlIZWFkZXIuYmlTaXplICAgICAgICAgID0gc2l6ZW9mKEJJVE1BUElO
Rk9IRUFERVIpOworICAgICAgICAgICAgYm1pSGVhZGVyLmJpV2lkdGggICAgICAgICA9IHdpZHRo
OyAKKyAgICAgICAgICAgIGJtaUhlYWRlci5iaUhlaWdodCAgICAgICAgPSAtaGVpZ2h0OworICAg
ICAgICAgICAgYm1pSGVhZGVyLmJpUGxhbmVzICAgICAgICA9IDE7CisgICAgICAgICAgICBibWlI
ZWFkZXIuYmlCaXRDb3VudCAgICAgID0gaXMxNmJpdCA/IDE2IDogMzI7CisgICAgI2lmIElNQUdF
X05PX0FMUEhBX1VTRV9SR0I1NTUKKyAgICAgICAgICAgIGJtaUhlYWRlci5iaUNvbXByZXNzaW9u
ICAgPSBCSV9SR0I7CisgICAgI2Vsc2UKKyAgICAgICAgICAgIGJtaUhlYWRlci5iaUNvbXByZXNz
aW9uICAgPSBpczE2Yml0ID8gQklfQklURklFTERTIDogQklfUkdCOworICAgICAgICAgICAgaWYg
KGlzMTZiaXQpIHsKKyAgICAgICAgICAgICAgICAoKERXT1JEKilibWlDb2xvcnMpWzBdID0gMHgw
MDAwRjgwMDsKKyAgICAgICAgICAgICAgICAoKERXT1JEKilibWlDb2xvcnMpWzFdID0gMHgwMDAw
MDdFMDsKKyAgICAgICAgICAgICAgICAoKERXT1JEKilibWlDb2xvcnMpWzJdID0gMHgwMDAwMDAx
RjsKKyAgICAgICAgICAgIH0KKyAgICAjZW5kaWYKKyAgICAgICAgfQorICAgICAgICBib29sIGlz
MTZiaXQoKSBjb25zdCB7IHJldHVybiBibWlIZWFkZXIuYmlCaXRDb3VudCA9PSAxNjsgfQorICAg
ICAgICBib29sIGlzMzJiaXQoKSBjb25zdCB7IHJldHVybiBibWlIZWFkZXIuYmlCaXRDb3VudCA9
PSAzMjsgfQorICAgICAgICB1bnNpZ25lZCB3aWR0aCgpIGNvbnN0IHsgcmV0dXJuIGFicyhibWlI
ZWFkZXIuYmlXaWR0aCk7IH0KKyAgICAgICAgdW5zaWduZWQgaGVpZ2h0KCkgY29uc3QgeyByZXR1
cm4gYWJzKGJtaUhlYWRlci5iaUhlaWdodCk7IH0KKyAgICAgICAgdW5zaWduZWQgcGFkZGVkV2lk
dGgoKSBjb25zdCB7IHJldHVybiBpczE2Yml0KCkgPyAod2lkdGgoKSArIDEpID4+IDEgPDwgMSA6
IHdpZHRoKCk7IH0KKyAgICAgICAgdW5zaWduZWQgbnVtUGl4ZWxzKCkgY29uc3QgeyByZXR1cm4g
cGFkZGVkV2lkdGgoKSAqIGhlaWdodCgpOyB9CisgICAgICAgIHVuc2lnbmVkIHBhZGRlZEJ5dGVz
UGVyTGluZSgpIGNvbnN0IHsgcmV0dXJuIGlzMTZiaXQoKSA/IHBhZGRlZFdpZHRoKCkgKiAyIDog
d2lkdGgoKSAqIDQ7IH0KKyAgICAgICAgdW5zaWduZWQgYnl0ZXNQZXJMaW5lKCkgY29uc3QgeyBy
ZXR1cm4gd2lkdGgoKSAqIChpczE2Yml0KCkgPyAyIDogNCk7IH0KKyAgICBwcml2YXRlOgorICAg
ICAgICBEV09SRCBjb2xvcnNbM107CisgICAgfTsKKworI2Vsc2UKKwogc3RydWN0IEJpdG1hcElu
Zm8gOiBwdWJsaWMgQklUTUFQSU5GTyB7CiAgICAgQml0bWFwSW5mbyAoKTsKICAgICBzdGF0aWMg
Qml0bWFwSW5mbyBjcmVhdGUoY29uc3QgSW50U2l6ZSYpOwogICAgIHN0YXRpYyBCaXRtYXBJbmZv
IGNyZWF0ZUJvdHRvbVVwKGNvbnN0IEludFNpemUmKTsKIH07CiAKKyNlbmRpZgorCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBCaXRtYXBJbmZvX2gKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvcGxhdGZvcm0vd2luL1BsYXRmb3JtTW91c2VFdmVudFdpbi5jcHAgYi9XZWJDb3JlL3Bs
YXRmb3JtL3dpbi9QbGF0Zm9ybU1vdXNlRXZlbnRXaW4uY3BwCmluZGV4IDcxMTBiMzkuLmU5YzBl
M2UgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BsYXRmb3JtTW91c2VFdmVudFdp
bi5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUGxhdGZvcm1Nb3VzZUV2ZW50V2luLmNw
cApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcgQXBwbGUg
SW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNy0yMDA4IFRv
cmNoIE1vYmlsZSBJbmMuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTYzLDcg
KzY0LDkgQEAgc3RhdGljIE1vdXNlRXZlbnRUeXBlIG1lc3NhZ2VUb0V2ZW50VHlwZShVSU5UIG1l
c3NhZ2UpCiAgICAgICAgIGNhc2UgV01fTUJVVFRPTlVQOgogICAgICAgICAgICAgcmV0dXJuIE1v
dXNlRXZlbnRSZWxlYXNlZDsKIAorI2lmICFQTEFURk9STShXSU5DRSkKICAgICAgICAgY2FzZSBX
TV9NT1VTRUxFQVZFOgorI2VuZGlmCiAgICAgICAgIGNhc2UgV01fTU9VU0VNT1ZFOgogICAgICAg
ICAgICAgcmV0dXJuIE1vdXNlRXZlbnRNb3ZlZDsKIApAQCAtMTA0LDcgKzEwNyw5IEBAIFBsYXRm
b3JtTW91c2VFdmVudDo6UGxhdGZvcm1Nb3VzZUV2ZW50KEhXTkQgaFduZCwgVUlOVCBtZXNzYWdl
LCBXUEFSQU0gd1BhcmFtLCBMCiAgICAgICAgICAgICBtX2J1dHRvbiA9IE1pZGRsZUJ1dHRvbjsK
ICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIFdNX01PVVNFTU9WRToKKyNpZiAhUExB
VEZPUk0oV0lOQ0UpCiAgICAgICAgIGNhc2UgV01fTU9VU0VMRUFWRToKKyNlbmRpZgogICAgICAg
ICAgICAgaWYgKHdQYXJhbSAmIE1LX0xCVVRUT04pCiAgICAgICAgICAgICAgICAgbV9idXR0b24g
PSBMZWZ0QnV0dG9uOwogICAgICAgICAgICAgZWxzZSBpZiAod1BhcmFtICYgTUtfTUJVVFRPTikK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BsYXRmb3JtU2NyZWVuV2luLmNwcCBi
L1dlYkNvcmUvcGxhdGZvcm0vd2luL1BsYXRmb3JtU2NyZWVuV2luLmNwcAppbmRleCA1NmM4MTM5
Li43YWM0NzA2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9QbGF0Zm9ybVNjcmVl
bldpbi5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUGxhdGZvcm1TY3JlZW5XaW4uY3Bw
CkBAIC0xLDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwNyBBcHBsZSBJ
bmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA5IFRvcmNoIE1v
YmlsZSwgSW5jLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC00OSwxMiArNTAs
MTYgQEAgc3RhdGljIE1PTklUT1JJTkZPRVggbW9uaXRvckluZm9Gb3JXaWRnZXQoV2lkZ2V0KiB3
aWRnZXQpCiAKIHN0YXRpYyBERVZNT0RFIGRldmljZUluZm9Gb3JXaWRnZXQoV2lkZ2V0KiB3aWRn
ZXQpCiB7Ci0gICAgTU9OSVRPUklORk9FWCBtb25pdG9ySW5mbyA9IG1vbml0b3JJbmZvRm9yV2lk
Z2V0KHdpZGdldCk7Ci0KICAgICBERVZNT0RFIGRldmljZUluZm87CiAgICAgZGV2aWNlSW5mby5k
bVNpemUgPSBzaXplb2YoREVWTU9ERSk7CiAgICAgZGV2aWNlSW5mby5kbURyaXZlckV4dHJhID0g
MDsKKyNpZiBQTEFURk9STShXSU5DRSkKKyAgICBpZiAoIUVudW1EaXNwbGF5U2V0dGluZ3MoMCwg
RU5VTV9DVVJSRU5UX1NFVFRJTkdTLCAmZGV2aWNlSW5mbykpCisgICAgICAgIGRldmljZUluZm8u
ZG1CaXRzUGVyUGVsID0gMTY7CisjZWxzZQorICAgIE1PTklUT1JJTkZPRVggbW9uaXRvckluZm8g
PSBtb25pdG9ySW5mb0ZvcldpZGdldCh3aWRnZXQpOwogICAgIEVudW1EaXNwbGF5U2V0dGluZ3Mo
bW9uaXRvckluZm8uc3pEZXZpY2UsIEVOVU1fQ1VSUkVOVF9TRVRUSU5HUywgJmRldmljZUluZm8p
OworI2VuZGlmCiAKICAgICByZXR1cm4gZGV2aWNlSW5mbzsKIH0KQEAgLTc0LDggKzc5LDEzIEBA
IGludCBzY3JlZW5EZXB0aFBlckNvbXBvbmVudChXaWRnZXQqIHdpZGdldCkKIAogYm9vbCBzY3Jl
ZW5Jc01vbm9jaHJvbWUoV2lkZ2V0KiB3aWRnZXQpCiB7CisjaWYgUExBVEZPUk0oV0lOQ0UpCisg
ICAgLy8gRW51bURpc3BsYXlTZXR0aW5ncyBkb2Vzbid0IHNldCBkbUNvbG9yIGluIERFVk1PREUu
CisgICAgcmV0dXJuIGZhbHNlOworI2Vsc2UKICAgICBERVZNT0RFIGRldmljZUluZm8gPSBkZXZp
Y2VJbmZvRm9yV2lkZ2V0KHdpZGdldCk7CiAgICAgcmV0dXJuIGRldmljZUluZm8uZG1Db2xvciA9
PSBETUNPTE9SX01PTk9DSFJPTUU7CisjZW5kaWYKIH0KIAogRmxvYXRSZWN0IHNjcmVlblJlY3Qo
V2lkZ2V0KiB3aWRnZXQpCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Qb3B1cE1l
bnVXaW4uY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUG9wdXBNZW51V2luLmNwcAppbmRleCBk
ZDA5MTczLi5lNTMwNTNmIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Qb3B1cE1l
bnVXaW4uY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BvcHVwTWVudVdpbi5jcHAKQEAg
LTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3LCAyMDA4IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNy0yMDA5IFRv
cmNoIE1vYmlsZSBJbmMuCiAgKgogICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlv
dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJt
cyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAgLTM5LDYgKzQwLDEwIEBACiAj
aW5jbHVkZSAiU2ltcGxlRm9udERhdGEuaCIKICNpbmNsdWRlIDx0Y2hhci5oPgogI2luY2x1ZGUg
PHdpbmRvd3MuaD4KKyNpZiBQTEFURk9STShXSU5DRSkKKyNpbmNsdWRlIDxSZXNEZWZDRS5oPgor
I2RlZmluZSBNQUtFUE9JTlRTKGwpICgqKChQT0lOVFMgRkFSICopJihsKSkpCisjZW5kaWYKIAog
dXNpbmcgc3RkOjptaW47CiAKQEAgLTg0LDcgKzg5LDcgQEAgUG9wdXBNZW51Ojp+UG9wdXBNZW51
KCkKICAgICBpZiAobV9ibXApCiAgICAgICAgIDo6RGVsZXRlT2JqZWN0KG1fYm1wKTsKICAgICBp
ZiAobV9EQykKLSAgICAgICAgOjpEZWxldGVPYmplY3QobV9EQyk7CisgICAgICAgIDo6RGVsZXRl
REMobV9EQyk7CiAgICAgaWYgKG1fcG9wdXApCiAgICAgICAgIDo6RGVzdHJveVdpbmRvdyhtX3Bv
cHVwKTsKIH0KQEAgLTExMCw3ICsxMTUsMTEgQEAgdm9pZCBQb3B1cE1lbnU6OnNob3coY29uc3Qg
SW50UmVjdCYgciwgRnJhbWVWaWV3KiB2LCBpbnQgaW5kZXgpCiAgICAgICAgIGlmICghbV9wb3B1
cCkKICAgICAgICAgICAgIHJldHVybjsKIAorI2lmIFBMQVRGT1JNKFdJTkNFKQorICAgICAgICA6
OlNldFdpbmRvd0xvbmcobV9wb3B1cCwgMCwgKExPTkcpdGhpcyk7CisjZWxzZQogICAgICAgICA6
OlNldFdpbmRvd0xvbmdQdHIobV9wb3B1cCwgMCwgKExPTkdfUFRSKXRoaXMpOworI2VuZGlmCiAg
ICAgfQogCiAgICAgaWYgKCFtX3Njcm9sbGJhcikKQEAgLTEyNCw2ICsxMzMsNyBAQCB2b2lkIFBv
cHVwTWVudTo6c2hvdyhjb25zdCBJbnRSZWN0JiByLCBGcmFtZVZpZXcqIHYsIGludCBpbmRleCkK
ICAgICAvLyBEZXRlcm1pbmUgd2hldGhlciB3ZSBzaG91bGQgYW5pbWF0ZSBvdXIgcG9wdXBzCiAg
ICAgLy8gTm90ZTogTXVzdCB1c2UgJ0JPT0wnIGFuZCAnRkFMU0UnIGluc3RlYWQgb2YgJ2Jvb2wn
IGFuZCAnZmFsc2UnIHRvIGF2b2lkIHN0YWNrIGNvcnJ1cHRpb24gd2l0aCBTeXN0ZW1QYXJhbWV0
ZXJzSW5mbwogICAgIEJPT0wgc2hvdWxkQW5pbWF0ZSA9IEZBTFNFOworI2lmICFQTEFURk9STShX
SU5DRSkKICAgICA6OlN5c3RlbVBhcmFtZXRlcnNJbmZvKFNQSV9HRVRDT01CT0JPWEFOSU1BVElP
TiwgMCwgJnNob3VsZEFuaW1hdGUsIDApOwogCiAgICAgaWYgKHNob3VsZEFuaW1hdGUpIHsKQEAg
LTEzOCw2ICsxNDgsNyBAQCB2b2lkIFBvcHVwTWVudTo6c2hvdyhjb25zdCBJbnRSZWN0JiByLCBG
cmFtZVZpZXcqIHYsIGludCBpbmRleCkKICAgICAgICAgICAgIDo6QW5pbWF0ZVdpbmRvdyhtX3Bv
cHVwLCBkZWZhdWx0QW5pbWF0aW9uRHVyYXRpb24sIEFXX1NMSURFIHwgc2xpZGVEaXJlY3Rpb24g
fCBBV19BQ1RJVkFURSk7CiAgICAgICAgIH0KICAgICB9IGVsc2UKKyNlbmRpZgogICAgICAgICA6
OlNob3dXaW5kb3cobV9wb3B1cCwgU1dfU0hPV05PUk1BTCk7CiAgICAgOjpTZXRDYXB0dXJlKG1f
cG9wdXApOwogCkBAIC00NTIsOCArNDYzLDExIEBAIHZvaWQgUG9wdXBNZW51OjpwYWludChjb25z
dCBJbnRSZWN0JiBkYW1hZ2VSZWN0LCBIREMgaGRjKQogICAgICAgICB9CiAgICAgfQogICAgIGlm
ICghbV9ibXApIHsKKyNpZiBQTEFURk9STShXSU5DRSkKKyAgICAgICAgQml0bWFwSW5mbyBiaXRt
YXBJbmZvKHRydWUsIGNsaWVudFJlY3QoKS53aWR0aCgpLCBjbGllbnRSZWN0KCkuaGVpZ2h0KCkp
OworI2Vsc2UKICAgICAgICAgQml0bWFwSW5mbyBiaXRtYXBJbmZvID0gQml0bWFwSW5mbzo6Y3Jl
YXRlQm90dG9tVXAoY2xpZW50UmVjdCgpLnNpemUoKSk7Ci0KKyNlbmRpZgogICAgICAgICB2b2lk
KiBwaXhlbHMgPSAwOwogICAgICAgICBtX2JtcCA9IDo6Q3JlYXRlRElCU2VjdGlvbihtX0RDLCAm
Yml0bWFwSW5mbywgRElCX1JHQl9DT0xPUlMsICZwaXhlbHMsIDAsIDApOwogICAgICAgICBpZiAo
IW1fYm1wKQpAQCAtNTI1LDEwICs1MzksMTIgQEAgdm9pZCBQb3B1cE1lbnU6OnBhaW50KGNvbnN0
IEludFJlY3QmIGRhbWFnZVJlY3QsIEhEQyBoZGMpCiAgICAgaWYgKG1fc2Nyb2xsYmFyKQogICAg
ICAgICBtX3Njcm9sbGJhci0+cGFpbnQoJmNvbnRleHQsIGRhbWFnZVJlY3QpOwogCi0gICAgaWYg
KCFoZGMpCi0gICAgICAgIGhkYyA9IDo6R2V0REMobV9wb3B1cCk7CisgICAgSERDIGxvY2FsREMg
PSBoZGMgPyBoZGMgOiA6OkdldERDKG1fcG9wdXApOworCisgICAgOjpCaXRCbHQobG9jYWxEQywg
ZGFtYWdlUmVjdC54KCksIGRhbWFnZVJlY3QueSgpLCBkYW1hZ2VSZWN0LndpZHRoKCksIGRhbWFn
ZVJlY3QuaGVpZ2h0KCksIG1fREMsIGRhbWFnZVJlY3QueCgpLCBkYW1hZ2VSZWN0LnkoKSwgU1JD
Q09QWSk7CiAKLSAgICA6OkJpdEJsdChoZGMsIGRhbWFnZVJlY3QueCgpLCBkYW1hZ2VSZWN0Lnko
KSwgZGFtYWdlUmVjdC53aWR0aCgpLCBkYW1hZ2VSZWN0LmhlaWdodCgpLCBtX0RDLCBkYW1hZ2VS
ZWN0LngoKSwgZGFtYWdlUmVjdC55KCksIFNSQ0NPUFkpOworICAgIGlmICghaGRjKQorICAgICAg
ICA6OlJlbGVhc2VEQyhtX3BvcHVwLCBsb2NhbERDKTsKIH0KIAogdm9pZCBQb3B1cE1lbnU6OnZh
bHVlQ2hhbmdlZChTY3JvbGxiYXIqIHNjcm9sbEJhcikKQEAgLTU4MiwxMSArNTk4LDE1IEBAIHN0
YXRpYyBBVE9NIHJlZ2lzdGVyUG9wdXAoKQogICAgIGlmIChoYXZlUmVnaXN0ZXJlZFdpbmRvd0Ns
YXNzKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAorI2lmIFBMQVRGT1JNKFdJTkNFKQorICAgIFdO
RENMQVNTIHdjZXg7CisjZWxzZQogICAgIFdORENMQVNTRVggd2NleDsKLQogICAgIHdjZXguY2JT
aXplID0gc2l6ZW9mKFdORENMQVNTRVgpOwotCisgICAgd2NleC5oSWNvblNtICAgICAgICA9IDA7
CiAgICAgd2NleC5zdHlsZSAgICAgICAgICA9IENTX0RST1BTSEFET1c7CisjZW5kaWYKKwogICAg
IHdjZXgubHBmblduZFByb2MgICAgPSBQb3B1cFduZFByb2M7CiAgICAgd2NleC5jYkNsc0V4dHJh
ICAgICA9IDA7CiAgICAgd2NleC5jYlduZEV4dHJhICAgICA9IHNpemVvZihQb3B1cE1lbnUqKTsg
Ly8gRm9yIHRoZSBQb3B1cE1lbnUgcG9pbnRlcgpAQCAtNTk2LDE4ICs2MTYsMjUgQEAgc3RhdGlj
IEFUT00gcmVnaXN0ZXJQb3B1cCgpCiAgICAgd2NleC5oYnJCYWNrZ3JvdW5kICA9IDA7CiAgICAg
d2NleC5scHN6TWVudU5hbWUgICA9IDA7CiAgICAgd2NleC5scHN6Q2xhc3NOYW1lICA9IGtQb3B1
cFdpbmRvd0NsYXNzTmFtZTsKLSAgICB3Y2V4LmhJY29uU20gICAgICAgID0gMDsKIAogICAgIGhh
dmVSZWdpc3RlcmVkV2luZG93Q2xhc3MgPSB0cnVlOwogCisjaWYgUExBVEZPUk0oV0lOQ0UpCisg
ICAgcmV0dXJuIDo6UmVnaXN0ZXJDbGFzcygmd2NleCk7CisjZWxzZQogICAgIHJldHVybiA6OlJl
Z2lzdGVyQ2xhc3NFeCgmd2NleCk7CisjZW5kaWYKIH0KIAogY29uc3QgaW50IHNtb290aFNjcm9s
bEFuaW1hdGlvbkR1cmF0aW9uID0gNTAwMDsKIHN0YXRpYyBMUkVTVUxUIENBTExCQUNLIFBvcHVw
V25kUHJvYyhIV05EIGhXbmQsIFVJTlQgbWVzc2FnZSwgV1BBUkFNIHdQYXJhbSwgTFBBUkFNIGxQ
YXJhbSkKIHsKICAgICBMUkVTVUxUIGxSZXN1bHQgPSAwOworI2lmIFBMQVRGT1JNKFdJTkNFKQor
ICAgIExPTkcgbG9uZ1B0ciA9IEdldFdpbmRvd0xvbmcoaFduZCwgMCk7CisjZWxzZQogICAgIExP
TkdfUFRSIGxvbmdQdHIgPSBHZXRXaW5kb3dMb25nUHRyKGhXbmQsIDApOworI2VuZGlmCiAgICAg
UG9wdXBNZW51KiBwb3B1cCA9IHJlaW50ZXJwcmV0X2Nhc3Q8UG9wdXBNZW51Kj4obG9uZ1B0cik7
CiAKICAgICBzd2l0Y2ggKG1lc3NhZ2UpIHsKQEAgLTcyNCw3ICs3NTEsOSBAQCBzdGF0aWMgTFJF
U1VMVCBDQUxMQkFDSyBQb3B1cFduZFByb2MoSFdORCBoV25kLCBVSU5UIG1lc3NhZ2UsIFdQQVJB
TSB3UGFyYW0sIExQQQogICAgICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgICAgIEJPT0wg
c2hvdWxkSG90VHJhY2sgPSBGQUxTRTsKKyNpZiAhUExBVEZPUk0oV0lOQ0UpCiAgICAgICAgICAg
ICAgICAgOjpTeXN0ZW1QYXJhbWV0ZXJzSW5mbyhTUElfR0VUSE9UVFJBQ0tJTkcsIDAsICZzaG91
bGRIb3RUcmFjaywgMCk7CisjZW5kaWYKIAogICAgICAgICAgICAgICAgIFJFQ1QgYm91bmRzOwog
ICAgICAgICAgICAgICAgIEdldENsaWVudFJlY3QocG9wdXAtPnBvcHVwSGFuZGxlKCksICZib3Vu
ZHMpOwpAQCAtODA5LDEwICs4MzgsMTIgQEAgc3RhdGljIExSRVNVTFQgQ0FMTEJBQ0sgUG9wdXBX
bmRQcm9jKEhXTkQgaFduZCwgVUlOVCBtZXNzYWdlLCBXUEFSQU0gd1BhcmFtLCBMUEEKICAgICAg
ICAgICAgICAgICBsUmVzdWx0ID0gMDsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGJyZWFr
OworI2lmICFQTEFURk9STShXSU5DRSkKICAgICAgICAgY2FzZSBXTV9QUklOVENMSUVOVDoKICAg
ICAgICAgICAgIGlmIChwb3B1cCkKICAgICAgICAgICAgICAgICBwb3B1cC0+cGFpbnQocG9wdXAt
PmNsaWVudFJlY3QoKSwgKEhEQyl3UGFyYW0pOwogICAgICAgICAgICAgYnJlYWs7CisjZW5kaWYK
ICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIGxSZXN1bHQgPSBEZWZXaW5kb3dQcm9jKGhX
bmQsIG1lc3NhZ2UsIHdQYXJhbSwgbFBhcmFtKTsKICAgICB9Cg==
</data>
<flag name="review"
          id="17950"
          type_id="1"
          status="-"
          setter="staikos"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33780</attachid>
            <date>2009-07-30 07:56:53 -0700</date>
            <delta_ts>2009-07-30 11:13:39 -0700</delta_ts>
            <desc>updatd (PopupMenuWin.cpp)</desc>
            <filename>27816.patch</filename>
            <type>text/plain</type>
            <size>9538</size>
            <attacher name="Yong Li">yong.li.webkit</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZDNjNzc0YS4uMWI2YTE1ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAwOS0wNy0zMCAgWW9uZyBMaSAgPHlv
bmcubGlAdG9yY2htb2JpbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFdJTkNFIFBPUlQ6IHNvbWUgZmlsZXMgbW9kaWZpZWQgdG8gYnVpbGQg
Zm9yIFdJTkNFCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yNzgxNgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gKE9PUFMhKQorCisgICAgICAgICogYWNj
ZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0Lmg6CisgICAgICAgICogcGFnZS93aW4vRXZl
bnRIYW5kbGVyV2luLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6Y3JlYXRl
RHJhZ2dpbmdDbGlwYm9hcmQpOgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9QbGF0Zm9ybU1vdXNl
RXZlbnRXaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6bWVzc2FnZVRvRXZlbnRUeXBlKToKKyAg
ICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtTW91c2VFdmVudDo6UGxhdGZvcm1Nb3VzZUV2ZW50KToK
KyAgICAgICAgKiBwbGF0Zm9ybS93aW4vUGxhdGZvcm1TY3JlZW5XaW4uY3BwOgorICAgICAgICAo
V2ViQ29yZTo6ZGV2aWNlSW5mb0ZvcldpZGdldCk6CisgICAgICAgIChXZWJDb3JlOjpzY3JlZW5J
c01vbm9jaHJvbWUpOgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9Qb3B1cE1lbnVXaW4uY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UG9wdXBNZW51OjpzaG93KToKKyAgICAgICAgKFdlYkNvcmU6OlBv
cHVwTWVudTo6cGFpbnQpOgorICAgICAgICAoV2ViQ29yZTo6cmVnaXN0ZXJQb3B1cCk6CisgICAg
ICAgIChXZWJDb3JlOjpQb3B1cFduZFByb2MpOgorCiAyMDA5LTA3LTI5ICBZb25nIExpICA8eW9u
Zy5saUB0b3JjaG1vYmlsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eU9iamVj
dC5oIGIvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuaAppbmRleCAz
MTlhY2U5Li40NjhhN2FhIDEwMDY0NAotLS0gYS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNz
aWJpbGl0eU9iamVjdC5oCisrKyBiL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5
T2JqZWN0LmgKQEAgLTQwLDcgKzQwLDcgQEAKIAogI2lmIFBMQVRGT1JNKE1BQykKICNpbmNsdWRl
IDx3dGYvUmV0YWluUHRyLmg+Ci0jZWxpZiBQTEFURk9STShXSU4pCisjZWxpZiBQTEFURk9STShX
SU4pICYmICFQTEFURk9STShXSU5DRSkKICNpbmNsdWRlICJBY2Nlc3NpYmlsaXR5T2JqZWN0V3Jh
cHBlcldpbi5oIgogI2luY2x1ZGUgIkNPTVB0ci5oIgogI2VsaWYgUExBVEZPUk0oQ0hST01JVU0p
CkBAIC00MjgsNyArNDI4LDcgQEAgcHJvdGVjdGVkOgogCiAjaWYgUExBVEZPUk0oTUFDKQogICAg
IFJldGFpblB0cjxBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlcj4gbV93cmFwcGVyOwotI2VsaWYg
UExBVEZPUk0oV0lOKQorI2VsaWYgUExBVEZPUk0oV0lOKSAmJiAhUExBVEZPUk0oV0lOQ0UpCiAg
ICAgQ09NUHRyPEFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyPiBtX3dyYXBwZXI7CiAjZWxpZiBQ
TEFURk9STShHVEspCiAgICAgQXRrT2JqZWN0KiBtX3dyYXBwZXI7CmRpZmYgLS1naXQgYS9XZWJD
b3JlL3BhZ2Uvd2luL0V2ZW50SGFuZGxlcldpbi5jcHAgYi9XZWJDb3JlL3BhZ2Uvd2luL0V2ZW50
SGFuZGxlcldpbi5jcHAKaW5kZXggODhiYzM3My4uMTI1YmZhZiAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9wYWdlL3dpbi9FdmVudEhhbmRsZXJXaW4uY3BwCisrKyBiL1dlYkNvcmUvcGFnZS93aW4vRXZl
bnRIYW5kbGVyV2luLmNwcApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIw
MDYsIDIwMDcsIDIwMDggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJp
Z2h0IChDKSAyMDA3LTIwMDkgVG9yY2ggTW9iaWxlLCBJbmMuDQogICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAog
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCkBAIC04Nyw5ICs4OCwxMyBAQCBib29sIEV2ZW50SGFuZGxlcjo6ZXZlbnRB
Y3RpdmF0ZWRWaWV3KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYgZXZlbnQpIGNvbnN0CiAKIFBh
c3NSZWZQdHI8Q2xpcGJvYXJkPiBFdmVudEhhbmRsZXI6OmNyZWF0ZURyYWdnaW5nQ2xpcGJvYXJk
KCkgY29uc3QKIHsKKyNpZiBQTEFURk9STShXSU5DRSkKKwlyZXR1cm4gMDsKKyNlbHNlCiAgICAg
Q09NUHRyPFdDRGF0YU9iamVjdD4gZGF0YU9iamVjdDsKICAgICBXQ0RhdGFPYmplY3Q6OmNyZWF0
ZUluc3RhbmNlKCZkYXRhT2JqZWN0KTsKICAgICByZXR1cm4gQ2xpcGJvYXJkV2luOjpjcmVhdGUo
dHJ1ZSwgZGF0YU9iamVjdC5nZXQoKSwgQ2xpcGJvYXJkV3JpdGFibGUpOworI2VuZGlmCiB9CiAK
IHZvaWQgRXZlbnRIYW5kbGVyOjpmb2N1c0RvY3VtZW50VmlldygpCmRpZmYgLS1naXQgYS9XZWJD
b3JlL3BsYXRmb3JtL3dpbi9QbGF0Zm9ybU1vdXNlRXZlbnRXaW4uY3BwIGIvV2ViQ29yZS9wbGF0
Zm9ybS93aW4vUGxhdGZvcm1Nb3VzZUV2ZW50V2luLmNwcAppbmRleCA3MTEwYjM5Li5lOWMwZTNl
IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9QbGF0Zm9ybU1vdXNlRXZlbnRXaW4u
Y3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BsYXRmb3JtTW91c2VFdmVudFdpbi5jcHAK
QEAgLTEsNSArMSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3IEFwcGxlIElu
Yy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOCBUb3Jj
aCBNb2JpbGUgSW5jLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC02Myw3ICs2
NCw5IEBAIHN0YXRpYyBNb3VzZUV2ZW50VHlwZSBtZXNzYWdlVG9FdmVudFR5cGUoVUlOVCBtZXNz
YWdlKQogICAgICAgICBjYXNlIFdNX01CVVRUT05VUDoKICAgICAgICAgICAgIHJldHVybiBNb3Vz
ZUV2ZW50UmVsZWFzZWQ7CiAKKyNpZiAhUExBVEZPUk0oV0lOQ0UpCiAgICAgICAgIGNhc2UgV01f
TU9VU0VMRUFWRToKKyNlbmRpZgogICAgICAgICBjYXNlIFdNX01PVVNFTU9WRToKICAgICAgICAg
ICAgIHJldHVybiBNb3VzZUV2ZW50TW92ZWQ7CiAKQEAgLTEwNCw3ICsxMDcsOSBAQCBQbGF0Zm9y
bU1vdXNlRXZlbnQ6OlBsYXRmb3JtTW91c2VFdmVudChIV05EIGhXbmQsIFVJTlQgbWVzc2FnZSwg
V1BBUkFNIHdQYXJhbSwgTAogICAgICAgICAgICAgbV9idXR0b24gPSBNaWRkbGVCdXR0b247CiAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBXTV9NT1VTRU1PVkU6CisjaWYgIVBMQVRG
T1JNKFdJTkNFKQogICAgICAgICBjYXNlIFdNX01PVVNFTEVBVkU6CisjZW5kaWYKICAgICAgICAg
ICAgIGlmICh3UGFyYW0gJiBNS19MQlVUVE9OKQogICAgICAgICAgICAgICAgIG1fYnV0dG9uID0g
TGVmdEJ1dHRvbjsKICAgICAgICAgICAgIGVsc2UgaWYgKHdQYXJhbSAmIE1LX01CVVRUT04pCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9QbGF0Zm9ybVNjcmVlbldpbi5jcHAgYi9X
ZWJDb3JlL3BsYXRmb3JtL3dpbi9QbGF0Zm9ybVNjcmVlbldpbi5jcHAKaW5kZXggNTZjODEzOS4u
N2FjNDcwNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUGxhdGZvcm1TY3JlZW5X
aW4uY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BsYXRmb3JtU2NyZWVuV2luLmNwcApA
QCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcgQXBwbGUgSW5j
LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAwOSBUb3JjaCBNb2Jp
bGUsIEluYy4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNDksMTIgKzUwLDE2
IEBAIHN0YXRpYyBNT05JVE9SSU5GT0VYIG1vbml0b3JJbmZvRm9yV2lkZ2V0KFdpZGdldCogd2lk
Z2V0KQogCiBzdGF0aWMgREVWTU9ERSBkZXZpY2VJbmZvRm9yV2lkZ2V0KFdpZGdldCogd2lkZ2V0
KQogewotICAgIE1PTklUT1JJTkZPRVggbW9uaXRvckluZm8gPSBtb25pdG9ySW5mb0ZvcldpZGdl
dCh3aWRnZXQpOwotCiAgICAgREVWTU9ERSBkZXZpY2VJbmZvOwogICAgIGRldmljZUluZm8uZG1T
aXplID0gc2l6ZW9mKERFVk1PREUpOwogICAgIGRldmljZUluZm8uZG1Ecml2ZXJFeHRyYSA9IDA7
CisjaWYgUExBVEZPUk0oV0lOQ0UpCisgICAgaWYgKCFFbnVtRGlzcGxheVNldHRpbmdzKDAsIEVO
VU1fQ1VSUkVOVF9TRVRUSU5HUywgJmRldmljZUluZm8pKQorICAgICAgICBkZXZpY2VJbmZvLmRt
Qml0c1BlclBlbCA9IDE2OworI2Vsc2UKKyAgICBNT05JVE9SSU5GT0VYIG1vbml0b3JJbmZvID0g
bW9uaXRvckluZm9Gb3JXaWRnZXQod2lkZ2V0KTsKICAgICBFbnVtRGlzcGxheVNldHRpbmdzKG1v
bml0b3JJbmZvLnN6RGV2aWNlLCBFTlVNX0NVUlJFTlRfU0VUVElOR1MsICZkZXZpY2VJbmZvKTsK
KyNlbmRpZgogCiAgICAgcmV0dXJuIGRldmljZUluZm87CiB9CkBAIC03NCw4ICs3OSwxMyBAQCBp
bnQgc2NyZWVuRGVwdGhQZXJDb21wb25lbnQoV2lkZ2V0KiB3aWRnZXQpCiAKIGJvb2wgc2NyZWVu
SXNNb25vY2hyb21lKFdpZGdldCogd2lkZ2V0KQogeworI2lmIFBMQVRGT1JNKFdJTkNFKQorICAg
IC8vIEVudW1EaXNwbGF5U2V0dGluZ3MgZG9lc24ndCBzZXQgZG1Db2xvciBpbiBERVZNT0RFLgor
ICAgIHJldHVybiBmYWxzZTsKKyNlbHNlCiAgICAgREVWTU9ERSBkZXZpY2VJbmZvID0gZGV2aWNl
SW5mb0ZvcldpZGdldCh3aWRnZXQpOwogICAgIHJldHVybiBkZXZpY2VJbmZvLmRtQ29sb3IgPT0g
RE1DT0xPUl9NT05PQ0hST01FOworI2VuZGlmCiB9CiAKIEZsb2F0UmVjdCBzY3JlZW5SZWN0KFdp
ZGdldCogd2lkZ2V0KQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUG9wdXBNZW51
V2luLmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vd2luL1BvcHVwTWVudVdpbi5jcHAKaW5kZXggZGQw
OTE3My4uNGYyODQ3MyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUG9wdXBNZW51
V2luLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Qb3B1cE1lbnVXaW4uY3BwCkBAIC0x
LDUgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwNywgMjAwOCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOSBUb3Jj
aCBNb2JpbGUgSW5jLgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3Ug
Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMg
b2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC0zOSw2ICs0MCwxMCBAQAogI2lu
Y2x1ZGUgIlNpbXBsZUZvbnREYXRhLmgiCiAjaW5jbHVkZSA8dGNoYXIuaD4KICNpbmNsdWRlIDx3
aW5kb3dzLmg+CisjaWYgUExBVEZPUk0oV0lOQ0UpCisjaW5jbHVkZSA8UmVzRGVmQ0UuaD4KKyNk
ZWZpbmUgTUFLRVBPSU5UUyhsKSAoKigoUE9JTlRTIEZBUiAqKSYobCkpKQorI2VuZGlmCiAKIHVz
aW5nIHN0ZDo6bWluOwogCkBAIC0xMTAsNyArMTE1LDExIEBAIHZvaWQgUG9wdXBNZW51OjpzaG93
KGNvbnN0IEludFJlY3QmIHIsIEZyYW1lVmlldyogdiwgaW50IGluZGV4KQogICAgICAgICBpZiAo
IW1fcG9wdXApCiAgICAgICAgICAgICByZXR1cm47CiAKKyNpZiBQTEFURk9STShXSU5DRSkKKyAg
ICAgICAgOjpTZXRXaW5kb3dMb25nKG1fcG9wdXAsIDAsIChMT05HKXRoaXMpOworI2Vsc2UKICAg
ICAgICAgOjpTZXRXaW5kb3dMb25nUHRyKG1fcG9wdXAsIDAsIChMT05HX1BUUil0aGlzKTsKKyNl
bmRpZgogICAgIH0KIAogICAgIGlmICghbV9zY3JvbGxiYXIpCkBAIC0xMjQsNiArMTMzLDcgQEAg
dm9pZCBQb3B1cE1lbnU6OnNob3coY29uc3QgSW50UmVjdCYgciwgRnJhbWVWaWV3KiB2LCBpbnQg
aW5kZXgpCiAgICAgLy8gRGV0ZXJtaW5lIHdoZXRoZXIgd2Ugc2hvdWxkIGFuaW1hdGUgb3VyIHBv
cHVwcwogICAgIC8vIE5vdGU6IE11c3QgdXNlICdCT09MJyBhbmQgJ0ZBTFNFJyBpbnN0ZWFkIG9m
ICdib29sJyBhbmQgJ2ZhbHNlJyB0byBhdm9pZCBzdGFjayBjb3JydXB0aW9uIHdpdGggU3lzdGVt
UGFyYW1ldGVyc0luZm8KICAgICBCT09MIHNob3VsZEFuaW1hdGUgPSBGQUxTRTsKKyNpZiAhUExB
VEZPUk0oV0lOQ0UpCiAgICAgOjpTeXN0ZW1QYXJhbWV0ZXJzSW5mbyhTUElfR0VUQ09NQk9CT1hB
TklNQVRJT04sIDAsICZzaG91bGRBbmltYXRlLCAwKTsKIAogICAgIGlmIChzaG91bGRBbmltYXRl
KSB7CkBAIC0xMzgsNiArMTQ4LDcgQEAgdm9pZCBQb3B1cE1lbnU6OnNob3coY29uc3QgSW50UmVj
dCYgciwgRnJhbWVWaWV3KiB2LCBpbnQgaW5kZXgpCiAgICAgICAgICAgICA6OkFuaW1hdGVXaW5k
b3cobV9wb3B1cCwgZGVmYXVsdEFuaW1hdGlvbkR1cmF0aW9uLCBBV19TTElERSB8IHNsaWRlRGly
ZWN0aW9uIHwgQVdfQUNUSVZBVEUpOwogICAgICAgICB9CiAgICAgfSBlbHNlCisjZW5kaWYKICAg
ICAgICAgOjpTaG93V2luZG93KG1fcG9wdXAsIFNXX1NIT1dOT1JNQUwpOwogICAgIDo6U2V0Q2Fw
dHVyZShtX3BvcHVwKTsKIApAQCAtNDUyLDggKzQ2MywxMSBAQCB2b2lkIFBvcHVwTWVudTo6cGFp
bnQoY29uc3QgSW50UmVjdCYgZGFtYWdlUmVjdCwgSERDIGhkYykKICAgICAgICAgfQogICAgIH0K
ICAgICBpZiAoIW1fYm1wKSB7CisjaWYgUExBVEZPUk0oV0lOQ0UpCisgICAgICAgIEJpdG1hcElu
Zm8gYml0bWFwSW5mbyh0cnVlLCBjbGllbnRSZWN0KCkud2lkdGgoKSwgY2xpZW50UmVjdCgpLmhl
aWdodCgpKTsKKyNlbHNlCiAgICAgICAgIEJpdG1hcEluZm8gYml0bWFwSW5mbyA9IEJpdG1hcElu
Zm86OmNyZWF0ZUJvdHRvbVVwKGNsaWVudFJlY3QoKS5zaXplKCkpOwotCisjZW5kaWYKICAgICAg
ICAgdm9pZCogcGl4ZWxzID0gMDsKICAgICAgICAgbV9ibXAgPSA6OkNyZWF0ZURJQlNlY3Rpb24o
bV9EQywgJmJpdG1hcEluZm8sIERJQl9SR0JfQ09MT1JTLCAmcGl4ZWxzLCAwLCAwKTsKICAgICAg
ICAgaWYgKCFtX2JtcCkKQEAgLTU4MiwxMSArNTk2LDE1IEBAIHN0YXRpYyBBVE9NIHJlZ2lzdGVy
UG9wdXAoKQogICAgIGlmIChoYXZlUmVnaXN0ZXJlZFdpbmRvd0NsYXNzKQogICAgICAgICByZXR1
cm4gdHJ1ZTsKIAorI2lmIFBMQVRGT1JNKFdJTkNFKQorICAgIFdORENMQVNTIHdjZXg7CisjZWxz
ZQogICAgIFdORENMQVNTRVggd2NleDsKLQogICAgIHdjZXguY2JTaXplID0gc2l6ZW9mKFdORENM
QVNTRVgpOwotCisgICAgd2NleC5oSWNvblNtICAgICAgICA9IDA7CiAgICAgd2NleC5zdHlsZSAg
ICAgICAgICA9IENTX0RST1BTSEFET1c7CisjZW5kaWYKKwogICAgIHdjZXgubHBmblduZFByb2Mg
ICAgPSBQb3B1cFduZFByb2M7CiAgICAgd2NleC5jYkNsc0V4dHJhICAgICA9IDA7CiAgICAgd2Nl
eC5jYlduZEV4dHJhICAgICA9IHNpemVvZihQb3B1cE1lbnUqKTsgLy8gRm9yIHRoZSBQb3B1cE1l
bnUgcG9pbnRlcgpAQCAtNTk2LDE4ICs2MTQsMjUgQEAgc3RhdGljIEFUT00gcmVnaXN0ZXJQb3B1
cCgpCiAgICAgd2NleC5oYnJCYWNrZ3JvdW5kICA9IDA7CiAgICAgd2NleC5scHN6TWVudU5hbWUg
ICA9IDA7CiAgICAgd2NleC5scHN6Q2xhc3NOYW1lICA9IGtQb3B1cFdpbmRvd0NsYXNzTmFtZTsK
LSAgICB3Y2V4LmhJY29uU20gICAgICAgID0gMDsKIAogICAgIGhhdmVSZWdpc3RlcmVkV2luZG93
Q2xhc3MgPSB0cnVlOwogCisjaWYgUExBVEZPUk0oV0lOQ0UpCisgICAgcmV0dXJuIDo6UmVnaXN0
ZXJDbGFzcygmd2NleCk7CisjZWxzZQogICAgIHJldHVybiA6OlJlZ2lzdGVyQ2xhc3NFeCgmd2Nl
eCk7CisjZW5kaWYKIH0KIAogY29uc3QgaW50IHNtb290aFNjcm9sbEFuaW1hdGlvbkR1cmF0aW9u
ID0gNTAwMDsKIHN0YXRpYyBMUkVTVUxUIENBTExCQUNLIFBvcHVwV25kUHJvYyhIV05EIGhXbmQs
IFVJTlQgbWVzc2FnZSwgV1BBUkFNIHdQYXJhbSwgTFBBUkFNIGxQYXJhbSkKIHsKICAgICBMUkVT
VUxUIGxSZXN1bHQgPSAwOworI2lmIFBMQVRGT1JNKFdJTkNFKQorICAgIExPTkcgbG9uZ1B0ciA9
IEdldFdpbmRvd0xvbmcoaFduZCwgMCk7CisjZWxzZQogICAgIExPTkdfUFRSIGxvbmdQdHIgPSBH
ZXRXaW5kb3dMb25nUHRyKGhXbmQsIDApOworI2VuZGlmCiAgICAgUG9wdXBNZW51KiBwb3B1cCA9
IHJlaW50ZXJwcmV0X2Nhc3Q8UG9wdXBNZW51Kj4obG9uZ1B0cik7CiAKICAgICBzd2l0Y2ggKG1l
c3NhZ2UpIHsKQEAgLTcyNCw3ICs3NDksOSBAQCBzdGF0aWMgTFJFU1VMVCBDQUxMQkFDSyBQb3B1
cFduZFByb2MoSFdORCBoV25kLCBVSU5UIG1lc3NhZ2UsIFdQQVJBTSB3UGFyYW0sIExQQQogICAg
ICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgICAgIEJPT0wgc2hvdWxkSG90VHJhY2sgPSBG
QUxTRTsKKyNpZiAhUExBVEZPUk0oV0lOQ0UpCiAgICAgICAgICAgICAgICAgOjpTeXN0ZW1QYXJh
bWV0ZXJzSW5mbyhTUElfR0VUSE9UVFJBQ0tJTkcsIDAsICZzaG91bGRIb3RUcmFjaywgMCk7Cisj
ZW5kaWYKIAogICAgICAgICAgICAgICAgIFJFQ1QgYm91bmRzOwogICAgICAgICAgICAgICAgIEdl
dENsaWVudFJlY3QocG9wdXAtPnBvcHVwSGFuZGxlKCksICZib3VuZHMpOwpAQCAtODA5LDEwICs4
MzYsMTIgQEAgc3RhdGljIExSRVNVTFQgQ0FMTEJBQ0sgUG9wdXBXbmRQcm9jKEhXTkQgaFduZCwg
VUlOVCBtZXNzYWdlLCBXUEFSQU0gd1BhcmFtLCBMUEEKICAgICAgICAgICAgICAgICBsUmVzdWx0
ID0gMDsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGJyZWFrOworI2lmICFQTEFURk9STShX
SU5DRSkKICAgICAgICAgY2FzZSBXTV9QUklOVENMSUVOVDoKICAgICAgICAgICAgIGlmIChwb3B1
cCkKICAgICAgICAgICAgICAgICBwb3B1cC0+cGFpbnQocG9wdXAtPmNsaWVudFJlY3QoKSwgKEhE
Qyl3UGFyYW0pOwogICAgICAgICAgICAgYnJlYWs7CisjZW5kaWYKICAgICAgICAgZGVmYXVsdDoK
ICAgICAgICAgICAgIGxSZXN1bHQgPSBEZWZXaW5kb3dQcm9jKGhXbmQsIG1lc3NhZ2UsIHdQYXJh
bSwgbFBhcmFtKTsKICAgICB9Cg==
</data>
<flag name="review"
          id="17982"
          type_id="1"
          status="+"
          setter="staikos"
    />
          </attachment>
      

    </bug>

</bugzilla>