<?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>16346</bug_id>
          
          <creation_ts>2007-12-07 14:04:13 -0800</creation_ts>
          <short_desc>[GTK] Some webview parts must use the focused frame</short_desc>
          <delta_ts>2007-12-08 06:39:58 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</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>Gtk</keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Luca Bruno">lethalman88</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>63626</commentid>
    <comment_count>0</comment_count>
    <who name="Luca Bruno">lethalman88</who>
    <bug_when>2007-12-07 14:04:13 -0800</bug_when>
    <thetext>Hello,
some functions of the webview API is using the main frame instead of the focused frame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>63631</commentid>
    <comment_count>1</comment_count>
      <attachid>17783</attachid>
    <who name="Luca Bruno">lethalman88</who>
    <bug_when>2007-12-07 14:25:42 -0800</bug_when>
    <thetext>Created attachment 17783
patch

- Use focused frame where needed
- Update old code
- Fix page up and page down for editable contents

This is the rest of the previous patch here applied to all the code: http://bugs.webkit.org/show_bug.cgi?id=16333</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>63666</commentid>
    <comment_count>2</comment_count>
      <attachid>17788</attachid>
    <who name="Luca Bruno">lethalman88</who>
    <bug_when>2007-12-08 06:32:34 -0800</bug_when>
    <thetext>Created attachment 17788
keep getViewFromFrame

This patch keeps getViewFromFrame and add missing webkitprivate.h diff.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>63667</commentid>
    <comment_count>3</comment_count>
      <attachid>17788</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-12-08 06:38:18 -0800</bug_when>
    <thetext>Comment on attachment 17788
keep getViewFromFrame

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>63668</commentid>
    <comment_count>4</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-12-08 06:39:58 -0800</bug_when>
    <thetext>Landed in r28564.

It&apos;s good that we didn&apos;t remove getViewFromFrame() since the future of web_frame_get_web_view() is uncertain.

Thanks!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17783</attachid>
            <date>2007-12-07 14:25:42 -0800</date>
            <delta_ts>2007-12-08 06:32:34 -0800</delta_ts>
            <desc>patch</desc>
            <filename>focusedframe.patch</filename>
            <type>text/plain</type>
            <size>15570</size>
            <attacher name="Luca Bruno">lethalman88</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9ndGsvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9ndGsvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyODUyMSkKKysrIFdlYktpdC9ndGsvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDUgKzEsNTEgQEAKIDIwMDctMTItMDcgIEx1Y2EgQnJ1bm8gIDxsZXRoYWxt
YW44OEBnbWFpbC5jb20+CiAKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYzNDYKKyAg
ICAgICAgW0dUS10gU29tZSB3ZWJ2aWV3IHBhcnRzIG11c3QgdXNlIHRoZSBmb2N1c2VkIGZyYW1l
LgorCisgICAgICAgIEFsc28gdXBkYXRlIHNvbWUgb2xkIGNvZGUuCisKKyAgICAgICAgKiBXZWJW
aWV3L3dlYmtpdHByaXZhdGUuY3BwOgorICAgICAgICAoZ2V0RnJhbWVGcm9tVmlldyk6IHJlbW92
ZWQKKyAgICAgICAgKGdldFZpZXdGcm9tRnJhbWUpOiByZW1vdmVkCisgICAgICAgIAorICAgICAg
ICAqIFdlYlZpZXcvd2Via2l0d2Vidmlldy5jcHA6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdf
ZXhwb3NlX2V2ZW50KToKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19rZXlfcHJlc3NfZXZlbnQp
OiB1c2UgZm9jdXNlZCBmcmFtZQorICAgICAgICAod2Via2l0X3dlYl92aWV3X2tleV9yZWxlYXNl
X2V2ZW50KTogdXNlIGZvY3VzZWQgZnJhbWUKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19idXR0
b25fcHJlc3NfZXZlbnQpOgorICAgICAgICAod2Via2l0X3dlYl92aWV3X2J1dHRvbl9yZWxlYXNl
X2V2ZW50KToKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19tb3Rpb25fZXZlbnQpOgorICAgICAg
ICAod2Via2l0X3dlYl92aWV3X3Njcm9sbF9ldmVudCk6CisgICAgICAgICh3ZWJraXRfd2ViX3Zp
ZXdfc2l6ZV9hbGxvY2F0ZSk6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfc2V0X3Njcm9sbF9h
ZGp1c3RtZW50cyk6IHVzZSBmb2N1c2VkIGZyYW1lCisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdf
ZXhlY3V0ZV9zY3JpcHQpOgorICAgICAgICAod2Via2l0X3dlYl92aWV3X3N0b3BfbG9hZGluZyk6
CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfbG9hZF9zdHJpbmcpOgorICAgICAgICAod2Via2l0
X3dlYl92aWV3X3JlbG9hZCk6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfb3Blbik6CisgICAg
ICAgICh3ZWJraXRfd2ViX3ZpZXdfY2FuX2dvX2ZvcndhcmQpOgorICAgICAgICAod2Via2l0X3dl
Yl92aWV3X2Nhbl9nb19iYWNrd2FyZCk6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfZ29fZm9y
d2FyZCk6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfZ29fYmFja3dhcmQpOgorCisgICAgICAg
ICogV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJHdGsuY3BwOgorICAgICAgICAocG9zdFByb2dy
ZXNzU3RhcnRlZE5vdGlmaWNhdGlvbik6CisgICAgICAgIChwb3N0UHJvZ3Jlc3NFc3RpbWF0ZUNo
YW5nZWROb3RpZmljYXRpb24pOgorICAgICAgICAocG9zdFByb2dyZXNzRmluaXNoZWROb3RpZmlj
YXRpb24pOgorICAgICAgICAoZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9u
KToKKyAgICAgICAgKGNyZWF0ZUZyYW1lKToKKyAgICAgICAgKHdpbmRvd09iamVjdENsZWFyZWQp
OgorICAgICAgICAoZGlzcGF0Y2hEaWRSZWNlaXZlSWNvbik6CisgICAgICAgIChzZXRUaXRsZSk6
CisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRHdGsuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpFZGl0b3JDbGllbnQ6OmhhbmRsZUtleXByZXNzKTogZml4IGZvciBwYWdlIHVw
IGFuZCBwYWdlIGRvd24ga2V5cyBmb3IgZWRpdGFibGUgY29udGVudHMKKworMjAwNy0xMi0wNyAg
THVjYSBCcnVubyAgPGxldGhhbG1hbjg4QGdtYWlsLmNvbT4KKwogICAgICAgICBSZXZpZXdlZCBi
eSBBbHAgVG9rZXIuCiAKICAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTYzMzMKSW5kZXg6IFdlYktpdC9ndGsvV2ViVmlldy93ZWJraXR3ZWJ2aWV3LmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJLaXQvZ3RrL1dlYlZpZXcvd2Via2l0d2Vidmlldy5jcHAJKHJldmlz
aW9uIDI4NTIxKQorKysgV2ViS2l0L2d0ay9XZWJWaWV3L3dlYmtpdHdlYnZpZXcuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC04OSw3ICs4OSw3IEBACiAKIHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRfd2Vi
X3ZpZXdfZXhwb3NlX2V2ZW50KEd0a1dpZGdldCogd2lkZ2V0LCBHZGtFdmVudEV4cG9zZSogZXZl
bnQpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gY29yZShnZXRGcmFtZUZyb21WaWV3KFdFQktJVF9X
RUJfVklFVyh3aWRnZXQpKSk7CisgICAgRnJhbWUqIGZyYW1lID0gY29yZSh3ZWJraXRfd2ViX3Zp
ZXdfZ2V0X21haW5fZnJhbWUoV0VCS0lUX1dFQl9WSUVXKHdpZGdldCkpKTsKICAgICBHZGtSZWN0
YW5nbGUgY2xpcDsKICAgICBnZGtfcmVnaW9uX2dldF9jbGlwYm94KGV2ZW50LT5yZWdpb24sICZj
bGlwKTsKICAgICBjYWlyb190KiBjciA9IGdka19jYWlyb19jcmVhdGUoZXZlbnQtPndpbmRvdyk7
CkBAIC0xMDYsNyArMTA2LDcgQEAKIAogc3RhdGljIGdib29sZWFuIHdlYmtpdF93ZWJfdmlld19r
ZXlfcHJlc3NfZXZlbnQoR3RrV2lkZ2V0KiB3aWRnZXQsIEdka0V2ZW50S2V5KiBldmVudCkKIHsK
LSAgICBGcmFtZSogZnJhbWUgPSBjb3JlKGdldEZyYW1lRnJvbVZpZXcoV0VCS0lUX1dFQl9WSUVX
KHdpZGdldCkpKTsKKyAgICBGcmFtZSogZnJhbWUgPSBjb3JlKFdFQktJVF9XRUJfVklFVyh3aWRn
ZXQpKS0+Zm9jdXNDb250cm9sbGVyKCktPmZvY3VzZWRPck1haW5GcmFtZSgpOwogICAgIFBsYXRm
b3JtS2V5Ym9hcmRFdmVudCBrZXlib2FyZEV2ZW50KGV2ZW50KTsKIAogICAgIGlmIChmcmFtZS0+
ZXZlbnRIYW5kbGVyKCktPmtleUV2ZW50KGtleWJvYXJkRXZlbnQpKQpAQCAtMTQ4LDcgKzE0OCw3
IEBACiAKIHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRfd2ViX3ZpZXdfa2V5X3JlbGVhc2VfZXZlbnQo
R3RrV2lkZ2V0KiB3aWRnZXQsIEdka0V2ZW50S2V5KiBldmVudCkKIHsKLSAgICBGcmFtZSogZnJh
bWUgPSBjb3JlKGdldEZyYW1lRnJvbVZpZXcoV0VCS0lUX1dFQl9WSUVXKHdpZGdldCkpKTsKKyAg
ICBGcmFtZSogZnJhbWUgPSBjb3JlKFdFQktJVF9XRUJfVklFVyh3aWRnZXQpKS0+Zm9jdXNDb250
cm9sbGVyKCktPmZvY3VzZWRPck1haW5GcmFtZSgpOwogICAgIFBsYXRmb3JtS2V5Ym9hcmRFdmVu
dCBrZXlib2FyZEV2ZW50KGV2ZW50KTsKIAogICAgIGlmIChmcmFtZS0+ZXZlbnRIYW5kbGVyKCkt
PmtleUV2ZW50KGtleWJvYXJkRXZlbnQpKQpAQCAtMTYwLDcgKzE2MCw3IEBACiAKIHN0YXRpYyBn
Ym9vbGVhbiB3ZWJraXRfd2ViX3ZpZXdfYnV0dG9uX3ByZXNzX2V2ZW50KEd0a1dpZGdldCogd2lk
Z2V0LCBHZGtFdmVudEJ1dHRvbiogZXZlbnQpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gY29yZShn
ZXRGcmFtZUZyb21WaWV3KFdFQktJVF9XRUJfVklFVyh3aWRnZXQpKSk7CisgICAgRnJhbWUqIGZy
YW1lID0gY29yZSh3ZWJraXRfd2ViX3ZpZXdfZ2V0X21haW5fZnJhbWUoV0VCS0lUX1dFQl9WSUVX
KHdpZGdldCkpKTsKIAogICAgIC8vIEZJWE1FOiBuZWVkIHRvIGtlZXAgdHJhY2sgb2Ygc3ViZnJh
bWUgZm9jdXMgZm9yIGtleSBldmVudHMKICAgICBndGtfd2lkZ2V0X2dyYWJfZm9jdXMoR1RLX1dJ
REdFVCh3aWRnZXQpKTsKQEAgLTE2OSwyMCArMTY5LDIwIEBACiAKIHN0YXRpYyBnYm9vbGVhbiB3
ZWJraXRfd2ViX3ZpZXdfYnV0dG9uX3JlbGVhc2VfZXZlbnQoR3RrV2lkZ2V0KiB3aWRnZXQsIEdk
a0V2ZW50QnV0dG9uKiBldmVudCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBjb3JlKGdldEZyYW1l
RnJvbVZpZXcoV0VCS0lUX1dFQl9WSUVXKHdpZGdldCkpKTsKKyAgICBGcmFtZSogZnJhbWUgPSBj
b3JlKHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9mcmFtZShXRUJLSVRfV0VCX1ZJRVcod2lkZ2V0
KSkpOwogCiAgICAgcmV0dXJuIGZyYW1lLT5ldmVudEhhbmRsZXIoKS0+aGFuZGxlTW91c2VSZWxl
YXNlRXZlbnQoUGxhdGZvcm1Nb3VzZUV2ZW50KGV2ZW50KSk7CiB9CiAKIHN0YXRpYyBnYm9vbGVh
biB3ZWJraXRfd2ViX3ZpZXdfbW90aW9uX2V2ZW50KEd0a1dpZGdldCogd2lkZ2V0LCBHZGtFdmVu
dE1vdGlvbiogZXZlbnQpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gY29yZShnZXRGcmFtZUZyb21W
aWV3KFdFQktJVF9XRUJfVklFVyh3aWRnZXQpKSk7CisgICAgRnJhbWUqIGZyYW1lID0gY29yZSh3
ZWJraXRfd2ViX3ZpZXdfZ2V0X21haW5fZnJhbWUoV0VCS0lUX1dFQl9WSUVXKHdpZGdldCkpKTsK
ICAgICByZXR1cm4gZnJhbWUtPmV2ZW50SGFuZGxlcigpLT5tb3VzZU1vdmVkKFBsYXRmb3JtTW91
c2VFdmVudChldmVudCkpOwogfQogCiBzdGF0aWMgZ2Jvb2xlYW4gd2Via2l0X3dlYl92aWV3X3Nj
cm9sbF9ldmVudChHdGtXaWRnZXQqIHdpZGdldCwgR2RrRXZlbnRTY3JvbGwqIGV2ZW50KQogewot
ICAgIEZyYW1lKiBmcmFtZSA9IGNvcmUoZ2V0RnJhbWVGcm9tVmlldyhXRUJLSVRfV0VCX1ZJRVco
d2lkZ2V0KSkpOworICAgIEZyYW1lKiBmcmFtZSA9IGNvcmUod2Via2l0X3dlYl92aWV3X2dldF9t
YWluX2ZyYW1lKFdFQktJVF9XRUJfVklFVyh3aWRnZXQpKSk7CiAgICAgUGxhdGZvcm1XaGVlbEV2
ZW50IHdoZWVsRXZlbnQoZXZlbnQpOwogICAgIHJldHVybiBmcmFtZS0+ZXZlbnRIYW5kbGVyKCkt
PmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7CiB9CkBAIC0xOTEsNyArMTkxLDcgQEAKIHsK
ICAgICBHVEtfV0lER0VUX0NMQVNTKHdlYmtpdF93ZWJfdmlld19wYXJlbnRfY2xhc3MpLT5zaXpl
X2FsbG9jYXRlKHdpZGdldCxhbGxvY2F0aW9uKTsKIAotICAgIEZyYW1lKiBmcmFtZSA9IGNvcmUo
Z2V0RnJhbWVGcm9tVmlldyhXRUJLSVRfV0VCX1ZJRVcod2lkZ2V0KSkpOworICAgIEZyYW1lKiBm
cmFtZSA9IGNvcmUod2Via2l0X3dlYl92aWV3X2dldF9tYWluX2ZyYW1lKFdFQktJVF9XRUJfVklF
Vyh3aWRnZXQpKSk7CiAgICAgZnJhbWUtPnZpZXcoKS0+cmVzaXplKGFsbG9jYXRpb24tPndpZHRo
LCBhbGxvY2F0aW9uLT5oZWlnaHQpOwogICAgIGZyYW1lLT5mb3JjZUxheW91dCgpOwogICAgIGZy
YW1lLT52aWV3KCktPmFkanVzdFZpZXdTaXplKCk7CkBAIC0yMjksNyArMjI5LDcgQEAKIAogc3Rh
dGljIHZvaWQgd2Via2l0X3dlYl92aWV3X3NldF9zY3JvbGxfYWRqdXN0bWVudHMoV2ViS2l0V2Vi
Vmlldyogd2ViVmlldywgR3RrQWRqdXN0bWVudCogaGFkaiwgR3RrQWRqdXN0bWVudCogdmFkaikK
IHsKLSAgICBGcmFtZVZpZXcqIHZpZXcgPSBjb3JlKGdldEZyYW1lRnJvbVZpZXcod2ViVmlldykp
LT52aWV3KCk7CisgICAgRnJhbWVWaWV3KiB2aWV3ID0gY29yZSh3ZWJWaWV3KS0+Zm9jdXNDb250
cm9sbGVyKCktPmZvY3VzZWRPck1haW5GcmFtZSgpLT52aWV3KCk7CiAgICAgdmlldy0+c2V0R3Rr
QWRqdXN0bWVudHMoaGFkaiwgdmFkaik7CiB9CiAKQEAgLTgzNSw3MCArODM1LDYyIEBACiB7CiAg
ICAgZ19yZXR1cm5faWZfZmFpbChXRUJLSVRfSVNfV0VCX1ZJRVcod2ViVmlldykpOwogCi0gICAg
V2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZpZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9Q
UklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktpdFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0g
V0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFURSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKLSAg
ICBmcmFtZURhdGEtPmZyYW1lLT5sb2FkZXIoKS0+Z29CYWNrT3JGb3J3YXJkKC0xKTsKKyAgICBG
cmFtZSogZnJhbWUgPSBjb3JlKHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9mcmFtZSh3ZWJWaWV3
KSk7CisgICAgZnJhbWUtPmxvYWRlcigpLT5nb0JhY2tPckZvcndhcmQoLTEpOwogfQogCiB2b2lk
IHdlYmtpdF93ZWJfdmlld19nb19mb3J3YXJkKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcpCiB7CiAg
ICAgZ19yZXR1cm5faWZfZmFpbChXRUJLSVRfSVNfV0VCX1ZJRVcod2ViVmlldykpOwogCi0gICAg
V2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZpZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9Q
UklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktpdFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0g
V0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFURSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKLSAg
ICBmcmFtZURhdGEtPmZyYW1lLT5sb2FkZXIoKS0+Z29CYWNrT3JGb3J3YXJkKDEpOworICAgIEZy
YW1lKiBmcmFtZSA9IGNvcmUod2Via2l0X3dlYl92aWV3X2dldF9tYWluX2ZyYW1lKHdlYlZpZXcp
KTsKKyAgICBmcmFtZS0+bG9hZGVyKCktPmdvQmFja09yRm9yd2FyZCgxKTsKIH0KIAogZ2Jvb2xl
YW4gd2Via2l0X3dlYl92aWV3X2Nhbl9nb19iYWNrd2FyZChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3
KQogewogICAgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsKFdFQktJVF9JU19XRUJfVklFVyh3ZWJWaWV3
KSwgRkFMU0UpOwogCi0gICAgV2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZpZXdEYXRhID0gV0VC
S0lUX1dFQl9WSUVXX0dFVF9QUklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktpdFdlYkZyYW1lUHJp
dmF0ZSogZnJhbWVEYXRhID0gV0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFURSh3ZWJWaWV3RGF0
YS0+bWFpbkZyYW1lKTsKLSAgICByZXR1cm4gZnJhbWVEYXRhLT5mcmFtZS0+bG9hZGVyKCktPmNh
bkdvQmFja09yRm9yd2FyZCgtMSk7CisgICAgRnJhbWUqIGZyYW1lID0gY29yZSh3ZWJraXRfd2Vi
X3ZpZXdfZ2V0X21haW5fZnJhbWUod2ViVmlldykpOworICAgIHJldHVybiBmcmFtZS0+bG9hZGVy
KCktPmNhbkdvQmFja09yRm9yd2FyZCgtMSk7CiB9CiAKIGdib29sZWFuIHdlYmtpdF93ZWJfdmll
d19jYW5fZ29fZm9yd2FyZChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3KQogewogICAgIGdfcmV0dXJu
X3ZhbF9pZl9mYWlsKFdFQktJVF9JU19XRUJfVklFVyh3ZWJWaWV3KSwgRkFMU0UpOwogCi0gICAg
V2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZpZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9Q
UklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktpdFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0g
V0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFURSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKLSAg
ICByZXR1cm4gZnJhbWVEYXRhLT5mcmFtZS0+bG9hZGVyKCktPmNhbkdvQmFja09yRm9yd2FyZCgx
KTsKKyAgICBGcmFtZSogZnJhbWUgPSBjb3JlKHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9mcmFt
ZSh3ZWJWaWV3KSk7CisgICAgcmV0dXJuIGZyYW1lLT5sb2FkZXIoKS0+Y2FuR29CYWNrT3JGb3J3
YXJkKDEpOwogfQogCiB2b2lkIHdlYmtpdF93ZWJfdmlld19vcGVuKFdlYktpdFdlYlZpZXcqIHdl
YlZpZXcsIGNvbnN0IGdjaGFyKiB1cmkpCiB7CiAgICAgZ19yZXR1cm5faWZfZmFpbChXRUJLSVRf
SVNfV0VCX1ZJRVcod2ViVmlldykpOwogCi0gICAgV2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZp
ZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9QUklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktp
dFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0gV0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFU
RSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKLQorICAgIEZyYW1lKiBmcmFtZSA9IGNvcmUod2Vi
a2l0X3dlYl92aWV3X2dldF9tYWluX2ZyYW1lKHdlYlZpZXcpKTsKICAgICBEZXByZWNhdGVkU3Ry
aW5nIHN0cmluZyA9IERlcHJlY2F0ZWRTdHJpbmc6OmZyb21VdGY4KHVyaSk7Ci0gICAgZnJhbWVE
YXRhLT5mcmFtZS0+bG9hZGVyKCktPmxvYWQoUmVzb3VyY2VSZXF1ZXN0KEtVUkwoc3RyaW5nKSkp
OworICAgIGZyYW1lLT5sb2FkZXIoKS0+bG9hZChSZXNvdXJjZVJlcXVlc3QoS1VSTChzdHJpbmcp
KSk7CiB9CiAKIHZvaWQgd2Via2l0X3dlYl92aWV3X3JlbG9hZChXZWJLaXRXZWJWaWV3KiB3ZWJW
aWV3KQogewogICAgIGdfcmV0dXJuX2lmX2ZhaWwoV0VCS0lUX0lTX1dFQl9WSUVXKHdlYlZpZXcp
KTsKIAotICAgIFdlYktpdFdlYlZpZXdQcml2YXRlKiB3ZWJWaWV3RGF0YSA9IFdFQktJVF9XRUJf
VklFV19HRVRfUFJJVkFURSh3ZWJWaWV3KTsKLSAgICBXZWJLaXRXZWJGcmFtZVByaXZhdGUqIGZy
YW1lRGF0YSA9IFdFQktJVF9XRUJfRlJBTUVfR0VUX1BSSVZBVEUod2ViVmlld0RhdGEtPm1haW5G
cmFtZSk7Ci0gICAgZnJhbWVEYXRhLT5mcmFtZS0+bG9hZGVyKCktPnJlbG9hZCgpOworICAgIEZy
YW1lKiBmcmFtZSA9IGNvcmUod2Via2l0X3dlYl92aWV3X2dldF9tYWluX2ZyYW1lKHdlYlZpZXcp
KTsKKyAgICBmcmFtZS0+bG9hZGVyKCktPnJlbG9hZCgpOwogfQogCiB2b2lkIHdlYmtpdF93ZWJf
dmlld19sb2FkX3N0cmluZyhXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBjb25zdCBnY2hhciogY29u
dGVudCwgY29uc3QgZ2NoYXIqIGNvbnRlbnRNaW1lVHlwZSwgY29uc3QgZ2NoYXIqIGNvbnRlbnRF
bmNvZGluZywgY29uc3QgZ2NoYXIqIGJhc2VVcmkpCiB7CiAgICAgZ19yZXR1cm5faWZfZmFpbChX
RUJLSVRfSVNfV0VCX1ZJRVcod2ViVmlldykpOwogCi0gICAgV2ViS2l0V2ViVmlld1ByaXZhdGUq
IHdlYlZpZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9QUklWQVRFKHdlYlZpZXcpOwotICAg
IFdlYktpdFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0gV0VCS0lUX1dFQl9GUkFNRV9HRVRf
UFJJVkFURSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKKyAgICBGcmFtZSogZnJhbWUgPSBjb3Jl
KHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9mcmFtZSh3ZWJWaWV3KSk7CiAKICAgICBLVVJMIHVy
bChEZXByZWNhdGVkU3RyaW5nOjpmcm9tVXRmOChiYXNlVXJpKSk7CiAgICAgUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4gc2hhcmVkQnVmZmVyID0gbmV3IFNoYXJlZEJ1ZmZlcihzdHJkdXAoY29udGVudCks
IHN0cmxlbihjb250ZW50KSk7CiAgICAgU3Vic3RpdHV0ZURhdGEgc3Vic3RpdHV0ZURhdGEoc2hh
cmVkQnVmZmVyLnJlbGVhc2UoKSwgU3RyaW5nKGNvbnRlbnRNaW1lVHlwZSksIFN0cmluZyhjb250
ZW50RW5jb2RpbmcpLCBLVVJMKCJhYm91dDpibGFuayIpLCB1cmwpOwogCi0gICAgZnJhbWVEYXRh
LT5mcmFtZS0+bG9hZGVyKCktPmxvYWQoUmVzb3VyY2VSZXF1ZXN0KHVybCksIHN1YnN0aXR1dGVE
YXRhKTsKKyAgICBmcmFtZS0+bG9hZGVyKCktPmxvYWQoUmVzb3VyY2VSZXF1ZXN0KHVybCksIHN1
YnN0aXR1dGVEYXRhKTsKIH0KIAogdm9pZCB3ZWJraXRfd2ViX3ZpZXdfbG9hZF9odG1sX3N0cmlu
ZyhXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBjb25zdCBnY2hhciogY29udGVudCwgY29uc3QgZ2No
YXIqIGJhc2VVcmwpCkBAIC05MTIsMTAgKzkwNCw5IEBACiB7CiAgICAgZ19yZXR1cm5faWZfZmFp
bChXRUJLSVRfSVNfV0VCX1ZJRVcod2ViVmlldykpOwogCi0gICAgV2ViS2l0V2ViVmlld1ByaXZh
dGUqIHdlYlZpZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9QUklWQVRFKHdlYlZpZXcpOwot
ICAgIFdlYktpdFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0gV0VCS0lUX1dFQl9GUkFNRV9H
RVRfUFJJVkFURSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKKyAgICBGcmFtZSogZnJhbWUgPSBj
b3JlKHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9mcmFtZSh3ZWJWaWV3KSk7CiAKLSAgICBpZiAo
RnJhbWVMb2FkZXIqIGxvYWRlciA9IGZyYW1lRGF0YS0+ZnJhbWUtPmxvYWRlcigpKQorICAgIGlm
IChGcmFtZUxvYWRlciogbG9hZGVyID0gZnJhbWUtPmxvYWRlcigpKQogICAgICAgICBsb2FkZXIt
PnN0b3BBbGxMb2FkZXJzKCk7CiB9CiAKQEAgLTkzMiwxMCArOTIzLDggQEAKICAgICBnX3JldHVy
bl9pZl9mYWlsKFdFQktJVF9JU19XRUJfVklFVyh3ZWJWaWV3KSk7CiAgICAgZ19yZXR1cm5faWZf
ZmFpbChzY3JpcHQpOwogCi0gICAgV2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZpZXdEYXRhID0g
V0VCS0lUX1dFQl9WSUVXX0dFVF9QUklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktpdFdlYkZyYW1l
UHJpdmF0ZSogZnJhbWVEYXRhID0gV0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFURSh3ZWJWaWV3
RGF0YS0+bWFpbkZyYW1lKTsKLQotICAgIGlmIChGcmFtZUxvYWRlciogbG9hZGVyID0gZnJhbWVE
YXRhLT5mcmFtZS0+bG9hZGVyKCkpCisgICAgRnJhbWUqIGZyYW1lID0gY29yZSh3ZWJraXRfd2Vi
X3ZpZXdfZ2V0X21haW5fZnJhbWUod2ViVmlldykpOworICAgIGlmIChGcmFtZUxvYWRlciogbG9h
ZGVyID0gZnJhbWUtPmxvYWRlcigpKQogICAgICAgICBsb2FkZXItPmV4ZWN1dGVTY3JpcHQoU3Ry
aW5nOjpmcm9tVVRGOChzY3JpcHQpLCB0cnVlKTsKIH0KIApJbmRleDogV2ViS2l0L2d0ay9XZWJW
aWV3L3dlYmtpdHByaXZhdGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9ndGsvV2ViVmlldy93
ZWJraXRwcml2YXRlLmNwcAkocmV2aXNpb24gMjg1MjEpCisrKyBXZWJLaXQvZ3RrL1dlYlZpZXcv
d2Via2l0cHJpdmF0ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5LDE2ICszOSw2IEBACiAgICAg
cmV0dXJuIDA7CiB9CiAKLVdlYktpdFdlYkZyYW1lKiBnZXRGcmFtZUZyb21WaWV3KFdlYktpdFdl
YlZpZXcqIHdlYlZpZXcpCi17Ci0gICAgcmV0dXJuIHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9m
cmFtZSh3ZWJWaWV3KTsKLX0KLQotV2ViS2l0V2ViVmlldyogZ2V0Vmlld0Zyb21GcmFtZShXZWJL
aXRXZWJGcmFtZSogZnJhbWUpCi17Ci0gICAgcmV0dXJuIHdlYmtpdF93ZWJfZnJhbWVfZ2V0X3dl
Yl92aWV3KGZyYW1lKTsKLX0KLQogV2ViQ29yZTo6RnJhbWUqIGNvcmUoV2ViS2l0V2ViRnJhbWUq
IGZyYW1lKQogewogICAgIGlmICghZnJhbWUpCkluZGV4OiBXZWJLaXQvZ3RrL1dlYkNvcmVTdXBw
b3J0L0ZyYW1lTG9hZGVyQ2xpZW50R3RrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvZ3RrL1dl
YkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50R3RrLmNwcAkocmV2aXNpb24gMjg1MjEpCisr
KyBXZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50R3RrLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMTk5LDEzICsxOTksMTMgQEAKIAogdm9pZCBGcmFtZUxvYWRlckNsaWVu
dDo6cG9zdFByb2dyZXNzU3RhcnRlZE5vdGlmaWNhdGlvbigpCiB7Ci0gICAgV2ViS2l0V2ViVmll
dyogcGFnZSA9IGdldFZpZXdGcm9tRnJhbWUobV9mcmFtZSk7CisgICAgV2ViS2l0V2ViVmlldyog
cGFnZSA9IHdlYmtpdF93ZWJfZnJhbWVfZ2V0X3dlYl92aWV3KG1fZnJhbWUpOwogICAgIGdfc2ln
bmFsX2VtaXRfYnlfbmFtZShwYWdlLCAibG9hZC1zdGFydGVkIiwgbV9mcmFtZSk7CiB9CiAKIHZv
aWQgRnJhbWVMb2FkZXJDbGllbnQ6OnBvc3RQcm9ncmVzc0VzdGltYXRlQ2hhbmdlZE5vdGlmaWNh
dGlvbigpCiB7Ci0gICAgV2ViS2l0V2ViVmlldyoga2l0UGFnZSA9IGdldFZpZXdGcm9tRnJhbWUo
bV9mcmFtZSk7CisgICAgV2ViS2l0V2ViVmlldyoga2l0UGFnZSA9IHdlYmtpdF93ZWJfZnJhbWVf
Z2V0X3dlYl92aWV3KG1fZnJhbWUpOwogICAgIFBhZ2UqIGNvcmVQYWdlID0gY29yZShraXRQYWdl
KTsKIAogICAgIGdfc2lnbmFsX2VtaXRfYnlfbmFtZShraXRQYWdlLCAibG9hZC1wcm9ncmVzcy1j
aGFuZ2VkIiwgbHJvdW5kKGNvcmVQYWdlLT5wcm9ncmVzcygpLT5lc3RpbWF0ZWRQcm9ncmVzcygp
KjEwMCkpOwpAQCAtMjEzLDcgKzIxMyw3IEBACiAKIHZvaWQgRnJhbWVMb2FkZXJDbGllbnQ6OnBv
c3RQcm9ncmVzc0ZpbmlzaGVkTm90aWZpY2F0aW9uKCkKIHsKLSAgICBXZWJLaXRXZWJWaWV3KiBw
YWdlID0gZ2V0Vmlld0Zyb21GcmFtZShtX2ZyYW1lKTsKKyAgICBXZWJLaXRXZWJWaWV3KiBwYWdl
ID0gd2Via2l0X3dlYl9mcmFtZV9nZXRfd2ViX3ZpZXcobV9mcmFtZSk7CiAKICAgICBnX3NpZ25h
bF9lbWl0X2J5X25hbWUocGFnZSwgImxvYWQtZmluaXNoZWQiLCBtX2ZyYW1lKTsKIH0KQEAgLTI1
NCw3ICsyNTQsNyBAQAogICAgIGlmICghcG9saWN5RnVuY3Rpb24pCiAgICAgICAgIHJldHVybjsK
IAotICAgIFdlYktpdFdlYlZpZXcqIHBhZ2UgPSBnZXRWaWV3RnJvbUZyYW1lKG1fZnJhbWUpOwor
ICAgIFdlYktpdFdlYlZpZXcqIHBhZ2UgPSB3ZWJraXRfd2ViX2ZyYW1lX2dldF93ZWJfdmlldyht
X2ZyYW1lKTsKICAgICBXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVzdCA9IHdlYmtpdF9uZXR3
b3JrX3JlcXVlc3RfbmV3KHJlc291cmNlUmVxdWVzdC51cmwoKS51cmwoKS51dGY4KCkuZGF0YSgp
KTsKICAgICBXZWJLaXROYXZpZ2F0aW9uUmVzcG9uc2UgcmVzcG9uc2U7CiAKQEAgLTI4MSw4ICsy
ODEsOCBAQAogewogICAgIEZyYW1lKiBjb3JlRnJhbWUgPSBjb3JlKHdlYkZyYW1lKCkpOwogCi0g
ICAgQVNTRVJUKGNvcmUoZ2V0Vmlld0Zyb21GcmFtZSh3ZWJGcmFtZSgpKSkgPT0gY29yZUZyYW1l
LT5wYWdlKCkpOwotICAgIFdlYktpdFdlYkZyYW1lKiBndGtGcmFtZSA9IFdFQktJVF9XRUJfRlJB
TUUod2Via2l0X3dlYl9mcmFtZV9pbml0X3dpdGhfd2ViX3ZpZXcoZ2V0Vmlld0Zyb21GcmFtZSh3
ZWJGcmFtZSgpKSwgb3duZXJFbGVtZW50KSk7CisgICAgQVNTRVJUKGNvcmUod2Via2l0X3dlYl9m
cmFtZV9nZXRfd2ViX3ZpZXcod2ViRnJhbWUoKSkpID09IGNvcmVGcmFtZS0+cGFnZSgpKTsKKyAg
ICBXZWJLaXRXZWJGcmFtZSogZ3RrRnJhbWUgPSBXRUJLSVRfV0VCX0ZSQU1FKHdlYmtpdF93ZWJf
ZnJhbWVfaW5pdF93aXRoX3dlYl92aWV3KHdlYmtpdF93ZWJfZnJhbWVfZ2V0X3dlYl92aWV3KHdl
YkZyYW1lKCkpLCBvd25lckVsZW1lbnQpKTsKICAgICBSZWZQdHI8RnJhbWU+IGNoaWxkRnJhbWUo
YWRvcHRSZWYoY29yZShndGtGcmFtZSkpKTsKIAogICAgIGNvcmVGcmFtZS0+dHJlZSgpLT5hcHBl
bmRDaGlsZChjaGlsZEZyYW1lKTsKQEAgLTM2Niw3ICszNjYsNyBAQAogICAgIEpTT2JqZWN0UmVm
IHdpbmRvd09iamVjdCA9IHRvUmVmKEtKUzo6V2luZG93OjpyZXRyaWV2ZShjb3JlRnJhbWUpLT5n
ZXRPYmplY3QoKSk7CiAgICAgQVNTRVJUKHdpbmRvd09iamVjdCk7CiAKLSAgICBXZWJLaXRXZWJW
aWV3KiBwYWdlID0gZ2V0Vmlld0Zyb21GcmFtZShtX2ZyYW1lKTsKKyAgICBXZWJLaXRXZWJWaWV3
KiBwYWdlID0gd2Via2l0X3dlYl9mcmFtZV9nZXRfd2ViX3ZpZXcobV9mcmFtZSk7CiAgICAgZ19z
aWduYWxfZW1pdF9ieV9uYW1lKHBhZ2UsICJ3aW5kb3ctb2JqZWN0LWNsZWFyZWQiLCBtX2ZyYW1l
LCBjb250ZXh0LCB3aW5kb3dPYmplY3QpOwogCiAgICAgLy8gVE9ETzogUmUtYXR0YWNoIGRlYnVn
IGNsaWVudHMgaWYgcHJlc2VudC4KQEAgLTQ0Niw3ICs0NDYsNyBAQAogCiB2b2lkIEZyYW1lTG9h
ZGVyQ2xpZW50OjpkaXNwYXRjaERpZFJlY2VpdmVJY29uKCkKIHsKLSAgICBXZWJLaXRXZWJWaWV3
KiBwYWdlID0gZ2V0Vmlld0Zyb21GcmFtZShtX2ZyYW1lKTsKKyAgICBXZWJLaXRXZWJWaWV3KiBw
YWdlID0gd2Via2l0X3dlYl9mcmFtZV9nZXRfd2ViX3ZpZXcobV9mcmFtZSk7CiAKICAgICBnX3Np
Z25hbF9lbWl0X2J5X25hbWUocGFnZSwgImljb24tbG9hZGVkIiwgbV9mcmFtZSk7CiB9CkBAIC01
MDYsNyArNTA2LDcgQEAKIAogdm9pZCBGcmFtZUxvYWRlckNsaWVudDo6c2V0VGl0bGUoY29uc3Qg
U3RyaW5nJiB0aXRsZSwgY29uc3QgS1VSTCYgdXJsKQogewotICAgIFdlYktpdFdlYlZpZXcqIHBh
Z2UgPSBnZXRWaWV3RnJvbUZyYW1lKG1fZnJhbWUpOworICAgIFdlYktpdFdlYlZpZXcqIHBhZ2Ug
PSB3ZWJraXRfd2ViX2ZyYW1lX2dldF93ZWJfdmlldyhtX2ZyYW1lKTsKIAogICAgIENTdHJpbmcg
dGl0bGVTdHJpbmcgPSB0aXRsZS51dGY4KCk7CiAgICAgRGVwcmVjYXRlZENTdHJpbmcgdXJsU3Ry
aW5nID0gdXJsLnByZXR0eVVSTCgpLnV0ZjgoKTsKSW5kZXg6IFdlYktpdC9ndGsvV2ViQ29yZVN1
cHBvcnQvRWRpdG9yQ2xpZW50R3RrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvZ3RrL1dlYkNv
cmVTdXBwb3J0L0VkaXRvckNsaWVudEd0ay5jcHAJKHJldmlzaW9uIDI4NTIxKQorKysgV2ViS2l0
L2d0ay9XZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRHdGsuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNzAsNyArMjcwLDkgQEAKICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCktPmV4ZWND
b21tYW5kKCJNb3ZlRG93bkJ5UGFnZUFuZE1vZGlmeUNhcmV0Iik7CiAgICAgICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgICAgICBjYXNlIFZLX0hPTUU6Ci0gICAgICAgICAgICAgICAgaWYgKGtl
dmVudC0+Y3RybEtleSgpKQorICAgICAgICAgICAgICAgIGlmIChrZXZlbnQtPmN0cmxLZXkoKSAm
JiBrZXZlbnQtPnNoaWZ0S2V5KCkpCisgICAgICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0b3Io
KS0+ZXhlY0NvbW1hbmQoIk1vdmVUb0JlZ2lubmluZ09mRG9jdW1lbnRBbmRNb2RpZnlTZWxlY3Rp
b24iKTsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChrZXZlbnQtPmN0cmxLZXkoKSkKICAgICAg
ICAgICAgICAgICAgICAgZnJhbWUtPmVkaXRvcigpLT5leGVjQ29tbWFuZCgiTW92ZVRvQmVnaW5u
aW5nT2ZEb2N1bWVudCIpOwogICAgICAgICAgICAgICAgIGVsc2UgaWYgKGtldmVudC0+c2hpZnRL
ZXkoKSkKICAgICAgICAgICAgICAgICAgICAgZnJhbWUtPmVkaXRvcigpLT5leGVjQ29tbWFuZCgi
TW92ZVRvQmVnaW5uaW5nT2ZMaW5lQW5kTW9kaWZ5U2VsZWN0aW9uIik7CkBAIC0yNzgsNyArMjgw
LDkgQEAKICAgICAgICAgICAgICAgICAgICAgZnJhbWUtPmVkaXRvcigpLT5leGVjQ29tbWFuZCgi
TW92ZVRvQmVnaW5uaW5nT2ZMaW5lIik7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
ICAgICBjYXNlIFZLX0VORDoKLSAgICAgICAgICAgICAgICBpZiAoa2V2ZW50LT5jdHJsS2V5KCkp
CisgICAgICAgICAgICAgICAgaWYgKGtldmVudC0+Y3RybEtleSgpICYmIGtldmVudC0+c2hpZnRL
ZXkoKSkKKyAgICAgICAgICAgICAgICAgICAgZnJhbWUtPmVkaXRvcigpLT5leGVjQ29tbWFuZCgi
TW92ZVRvRW5kT2ZEb2N1bWVudEFuZE1vZGlmeVNlbGVjdGlvbiIpOworICAgICAgICAgICAgICAg
IGVsc2UgaWYgKGtldmVudC0+Y3RybEtleSgpKQogICAgICAgICAgICAgICAgICAgICBmcmFtZS0+
ZWRpdG9yKCktPmV4ZWNDb21tYW5kKCJNb3ZlVG9FbmRPZkRvY3VtZW50Iik7CiAgICAgICAgICAg
ICAgICAgZWxzZSBpZiAoa2V2ZW50LT5zaGlmdEtleSgpKQogICAgICAgICAgICAgICAgICAgICBm
cmFtZS0+ZWRpdG9yKCktPmV4ZWNDb21tYW5kKCJNb3ZlVG9FbmRPZkxpbmVBbmRNb2RpZnlTZWxl
Y3Rpb24iKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17788</attachid>
            <date>2007-12-08 06:32:34 -0800</date>
            <delta_ts>2007-12-08 06:38:18 -0800</delta_ts>
            <desc>keep getViewFromFrame</desc>
            <filename>focusedframe.patch</filename>
            <type>text/plain</type>
            <size>12595</size>
            <attacher name="Luca Bruno">lethalman88</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9ndGsvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9ndGsvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyODU2MSkKKysrIFdlYktpdC9ndGsvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDUgKzEsNDMgQEAKIDIwMDctMTItMDcgIEx1Y2EgQnJ1bm8gIDxsZXRoYWxt
YW44OEBnbWFpbC5jb20+CiAKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYzNDYKKyAg
ICAgICAgW0dUS10gU29tZSB3ZWJ2aWV3IHBhcnRzIG11c3QgdXNlIHRoZSBmb2N1c2VkIGZyYW1l
LgorCisgICAgICAgIEFsc28gdXBkYXRlIHNvbWUgb2xkIGNvZGUuCisKKyAgICAgICAgKiBXZWJW
aWV3L3dlYmtpdHByaXZhdGUuY3BwOgorICAgICAgICAoZ2V0RnJhbWVGcm9tVmlldyk6IHJlbW92
ZWQKKworICAgICAgICAqIFdlYlZpZXcvd2Via2l0cHJpdmF0ZS5oOgorICAgICAgICAoZ2V0RnJh
bWVGcm9tVmlldyk6IHJlbW92ZWQKKyAgICAgICAgCisgICAgICAgICogV2ViVmlldy93ZWJraXR3
ZWJ2aWV3LmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19leHBvc2VfZXZlbnQpOgorICAg
ICAgICAod2Via2l0X3dlYl92aWV3X2tleV9wcmVzc19ldmVudCk6IHVzZSBmb2N1c2VkIGZyYW1l
CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfa2V5X3JlbGVhc2VfZXZlbnQpOiB1c2UgZm9jdXNl
ZCBmcmFtZQorICAgICAgICAod2Via2l0X3dlYl92aWV3X2J1dHRvbl9wcmVzc19ldmVudCk6Cisg
ICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfYnV0dG9uX3JlbGVhc2VfZXZlbnQpOgorICAgICAgICAo
d2Via2l0X3dlYl92aWV3X21vdGlvbl9ldmVudCk6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdf
c2Nyb2xsX2V2ZW50KToKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19zaXplX2FsbG9jYXRlKToK
KyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19zZXRfc2Nyb2xsX2FkanVzdG1lbnRzKToKKyAgICAg
ICAgKHdlYmtpdF93ZWJfdmlld19leGVjdXRlX3NjcmlwdCk6CisgICAgICAgICh3ZWJraXRfd2Vi
X3ZpZXdfc3RvcF9sb2FkaW5nKToKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19sb2FkX3N0cmlu
Zyk6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfcmVsb2FkKToKKyAgICAgICAgKHdlYmtpdF93
ZWJfdmlld19vcGVuKToKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19jYW5fZ29fZm9yd2FyZCk6
CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfY2FuX2dvX2JhY2t3YXJkKToKKyAgICAgICAgKHdl
YmtpdF93ZWJfdmlld19nb19mb3J3YXJkKToKKyAgICAgICAgKHdlYmtpdF93ZWJfdmlld19nb19i
YWNrd2FyZCk6CisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9FZGl0b3JDbGllbnRHdGsuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpFZGl0b3JDbGllbnQ6OmhhbmRsZUtleXByZXNzKTogZml4IGZv
ciBwYWdlIHVwIGFuZCBwYWdlIGRvd24ga2V5cyBmb3IgZWRpdGFibGUgY29udGVudHMKKworMjAw
Ny0xMi0wNyAgTHVjYSBCcnVubyAgPGxldGhhbG1hbjg4QGdtYWlsLmNvbT4KKwogICAgICAgICBS
ZXZpZXdlZCBieSBBbHAgVG9rZXIuCiAKICAgICAgICAgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTYzMzMKSW5kZXg6IFdlYktpdC9ndGsvV2ViVmlldy93ZWJraXR3ZWJ2
aWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvZ3RrL1dlYlZpZXcvd2Via2l0d2Vidmlldy5j
cHAJKHJldmlzaW9uIDI4NTYxKQorKysgV2ViS2l0L2d0ay9XZWJWaWV3L3dlYmtpdHdlYnZpZXcu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC04OSw3ICs4OSw3IEBACiAKIHN0YXRpYyBnYm9vbGVhbiB3
ZWJraXRfd2ViX3ZpZXdfZXhwb3NlX2V2ZW50KEd0a1dpZGdldCogd2lkZ2V0LCBHZGtFdmVudEV4
cG9zZSogZXZlbnQpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gY29yZShnZXRGcmFtZUZyb21WaWV3
KFdFQktJVF9XRUJfVklFVyh3aWRnZXQpKSk7CisgICAgRnJhbWUqIGZyYW1lID0gY29yZSh3ZWJr
aXRfd2ViX3ZpZXdfZ2V0X21haW5fZnJhbWUoV0VCS0lUX1dFQl9WSUVXKHdpZGdldCkpKTsKICAg
ICBHZGtSZWN0YW5nbGUgY2xpcDsKICAgICBnZGtfcmVnaW9uX2dldF9jbGlwYm94KGV2ZW50LT5y
ZWdpb24sICZjbGlwKTsKICAgICBjYWlyb190KiBjciA9IGdka19jYWlyb19jcmVhdGUoZXZlbnQt
PndpbmRvdyk7CkBAIC0xMDYsNyArMTA2LDcgQEAKIAogc3RhdGljIGdib29sZWFuIHdlYmtpdF93
ZWJfdmlld19rZXlfcHJlc3NfZXZlbnQoR3RrV2lkZ2V0KiB3aWRnZXQsIEdka0V2ZW50S2V5KiBl
dmVudCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBjb3JlKGdldEZyYW1lRnJvbVZpZXcoV0VCS0lU
X1dFQl9WSUVXKHdpZGdldCkpKTsKKyAgICBGcmFtZSogZnJhbWUgPSBjb3JlKFdFQktJVF9XRUJf
VklFVyh3aWRnZXQpKS0+Zm9jdXNDb250cm9sbGVyKCktPmZvY3VzZWRPck1haW5GcmFtZSgpOwog
ICAgIFBsYXRmb3JtS2V5Ym9hcmRFdmVudCBrZXlib2FyZEV2ZW50KGV2ZW50KTsKIAogICAgIGlm
IChmcmFtZS0+ZXZlbnRIYW5kbGVyKCktPmtleUV2ZW50KGtleWJvYXJkRXZlbnQpKQpAQCAtMTQ4
LDcgKzE0OCw3IEBACiAKIHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRfd2ViX3ZpZXdfa2V5X3JlbGVh
c2VfZXZlbnQoR3RrV2lkZ2V0KiB3aWRnZXQsIEdka0V2ZW50S2V5KiBldmVudCkKIHsKLSAgICBG
cmFtZSogZnJhbWUgPSBjb3JlKGdldEZyYW1lRnJvbVZpZXcoV0VCS0lUX1dFQl9WSUVXKHdpZGdl
dCkpKTsKKyAgICBGcmFtZSogZnJhbWUgPSBjb3JlKFdFQktJVF9XRUJfVklFVyh3aWRnZXQpKS0+
Zm9jdXNDb250cm9sbGVyKCktPmZvY3VzZWRPck1haW5GcmFtZSgpOwogICAgIFBsYXRmb3JtS2V5
Ym9hcmRFdmVudCBrZXlib2FyZEV2ZW50KGV2ZW50KTsKIAogICAgIGlmIChmcmFtZS0+ZXZlbnRI
YW5kbGVyKCktPmtleUV2ZW50KGtleWJvYXJkRXZlbnQpKQpAQCAtMTYwLDcgKzE2MCw3IEBACiAK
IHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRfd2ViX3ZpZXdfYnV0dG9uX3ByZXNzX2V2ZW50KEd0a1dp
ZGdldCogd2lkZ2V0LCBHZGtFdmVudEJ1dHRvbiogZXZlbnQpCiB7Ci0gICAgRnJhbWUqIGZyYW1l
ID0gY29yZShnZXRGcmFtZUZyb21WaWV3KFdFQktJVF9XRUJfVklFVyh3aWRnZXQpKSk7CisgICAg
RnJhbWUqIGZyYW1lID0gY29yZSh3ZWJraXRfd2ViX3ZpZXdfZ2V0X21haW5fZnJhbWUoV0VCS0lU
X1dFQl9WSUVXKHdpZGdldCkpKTsKIAogICAgIC8vIEZJWE1FOiBuZWVkIHRvIGtlZXAgdHJhY2sg
b2Ygc3ViZnJhbWUgZm9jdXMgZm9yIGtleSBldmVudHMKICAgICBndGtfd2lkZ2V0X2dyYWJfZm9j
dXMoR1RLX1dJREdFVCh3aWRnZXQpKTsKQEAgLTE2OSwyMCArMTY5LDIwIEBACiAKIHN0YXRpYyBn
Ym9vbGVhbiB3ZWJraXRfd2ViX3ZpZXdfYnV0dG9uX3JlbGVhc2VfZXZlbnQoR3RrV2lkZ2V0KiB3
aWRnZXQsIEdka0V2ZW50QnV0dG9uKiBldmVudCkKIHsKLSAgICBGcmFtZSogZnJhbWUgPSBjb3Jl
KGdldEZyYW1lRnJvbVZpZXcoV0VCS0lUX1dFQl9WSUVXKHdpZGdldCkpKTsKKyAgICBGcmFtZSog
ZnJhbWUgPSBjb3JlKHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9mcmFtZShXRUJLSVRfV0VCX1ZJ
RVcod2lkZ2V0KSkpOwogCiAgICAgcmV0dXJuIGZyYW1lLT5ldmVudEhhbmRsZXIoKS0+aGFuZGxl
TW91c2VSZWxlYXNlRXZlbnQoUGxhdGZvcm1Nb3VzZUV2ZW50KGV2ZW50KSk7CiB9CiAKIHN0YXRp
YyBnYm9vbGVhbiB3ZWJraXRfd2ViX3ZpZXdfbW90aW9uX2V2ZW50KEd0a1dpZGdldCogd2lkZ2V0
LCBHZGtFdmVudE1vdGlvbiogZXZlbnQpCiB7Ci0gICAgRnJhbWUqIGZyYW1lID0gY29yZShnZXRG
cmFtZUZyb21WaWV3KFdFQktJVF9XRUJfVklFVyh3aWRnZXQpKSk7CisgICAgRnJhbWUqIGZyYW1l
ID0gY29yZSh3ZWJraXRfd2ViX3ZpZXdfZ2V0X21haW5fZnJhbWUoV0VCS0lUX1dFQl9WSUVXKHdp
ZGdldCkpKTsKICAgICByZXR1cm4gZnJhbWUtPmV2ZW50SGFuZGxlcigpLT5tb3VzZU1vdmVkKFBs
YXRmb3JtTW91c2VFdmVudChldmVudCkpOwogfQogCiBzdGF0aWMgZ2Jvb2xlYW4gd2Via2l0X3dl
Yl92aWV3X3Njcm9sbF9ldmVudChHdGtXaWRnZXQqIHdpZGdldCwgR2RrRXZlbnRTY3JvbGwqIGV2
ZW50KQogewotICAgIEZyYW1lKiBmcmFtZSA9IGNvcmUoZ2V0RnJhbWVGcm9tVmlldyhXRUJLSVRf
V0VCX1ZJRVcod2lkZ2V0KSkpOworICAgIEZyYW1lKiBmcmFtZSA9IGNvcmUod2Via2l0X3dlYl92
aWV3X2dldF9tYWluX2ZyYW1lKFdFQktJVF9XRUJfVklFVyh3aWRnZXQpKSk7CiAgICAgUGxhdGZv
cm1XaGVlbEV2ZW50IHdoZWVsRXZlbnQoZXZlbnQpOwogICAgIHJldHVybiBmcmFtZS0+ZXZlbnRI
YW5kbGVyKCktPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7CiB9CkBAIC0xOTEsNyArMTkx
LDcgQEAKIHsKICAgICBHVEtfV0lER0VUX0NMQVNTKHdlYmtpdF93ZWJfdmlld19wYXJlbnRfY2xh
c3MpLT5zaXplX2FsbG9jYXRlKHdpZGdldCxhbGxvY2F0aW9uKTsKIAotICAgIEZyYW1lKiBmcmFt
ZSA9IGNvcmUoZ2V0RnJhbWVGcm9tVmlldyhXRUJLSVRfV0VCX1ZJRVcod2lkZ2V0KSkpOworICAg
IEZyYW1lKiBmcmFtZSA9IGNvcmUod2Via2l0X3dlYl92aWV3X2dldF9tYWluX2ZyYW1lKFdFQktJ
VF9XRUJfVklFVyh3aWRnZXQpKSk7CiAgICAgZnJhbWUtPnZpZXcoKS0+cmVzaXplKGFsbG9jYXRp
b24tPndpZHRoLCBhbGxvY2F0aW9uLT5oZWlnaHQpOwogICAgIGZyYW1lLT5mb3JjZUxheW91dCgp
OwogICAgIGZyYW1lLT52aWV3KCktPmFkanVzdFZpZXdTaXplKCk7CkBAIC0yMjksNyArMjI5LDcg
QEAKIAogc3RhdGljIHZvaWQgd2Via2l0X3dlYl92aWV3X3NldF9zY3JvbGxfYWRqdXN0bWVudHMo
V2ViS2l0V2ViVmlldyogd2ViVmlldywgR3RrQWRqdXN0bWVudCogaGFkaiwgR3RrQWRqdXN0bWVu
dCogdmFkaikKIHsKLSAgICBGcmFtZVZpZXcqIHZpZXcgPSBjb3JlKGdldEZyYW1lRnJvbVZpZXco
d2ViVmlldykpLT52aWV3KCk7CisgICAgRnJhbWVWaWV3KiB2aWV3ID0gY29yZSh3ZWJraXRfd2Vi
X3ZpZXdfZ2V0X21haW5fZnJhbWUod2ViVmlldykpLT52aWV3KCk7CiAgICAgdmlldy0+c2V0R3Rr
QWRqdXN0bWVudHMoaGFkaiwgdmFkaik7CiB9CiAKQEAgLTgzNSw3MCArODM1LDYyIEBACiB7CiAg
ICAgZ19yZXR1cm5faWZfZmFpbChXRUJLSVRfSVNfV0VCX1ZJRVcod2ViVmlldykpOwogCi0gICAg
V2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZpZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9Q
UklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktpdFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0g
V0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFURSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKLSAg
ICBmcmFtZURhdGEtPmZyYW1lLT5sb2FkZXIoKS0+Z29CYWNrT3JGb3J3YXJkKC0xKTsKKyAgICBG
cmFtZSogZnJhbWUgPSBjb3JlKHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9mcmFtZSh3ZWJWaWV3
KSk7CisgICAgZnJhbWUtPmxvYWRlcigpLT5nb0JhY2tPckZvcndhcmQoLTEpOwogfQogCiB2b2lk
IHdlYmtpdF93ZWJfdmlld19nb19mb3J3YXJkKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcpCiB7CiAg
ICAgZ19yZXR1cm5faWZfZmFpbChXRUJLSVRfSVNfV0VCX1ZJRVcod2ViVmlldykpOwogCi0gICAg
V2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZpZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9Q
UklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktpdFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0g
V0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFURSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKLSAg
ICBmcmFtZURhdGEtPmZyYW1lLT5sb2FkZXIoKS0+Z29CYWNrT3JGb3J3YXJkKDEpOworICAgIEZy
YW1lKiBmcmFtZSA9IGNvcmUod2Via2l0X3dlYl92aWV3X2dldF9tYWluX2ZyYW1lKHdlYlZpZXcp
KTsKKyAgICBmcmFtZS0+bG9hZGVyKCktPmdvQmFja09yRm9yd2FyZCgxKTsKIH0KIAogZ2Jvb2xl
YW4gd2Via2l0X3dlYl92aWV3X2Nhbl9nb19iYWNrd2FyZChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3
KQogewogICAgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsKFdFQktJVF9JU19XRUJfVklFVyh3ZWJWaWV3
KSwgRkFMU0UpOwogCi0gICAgV2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZpZXdEYXRhID0gV0VC
S0lUX1dFQl9WSUVXX0dFVF9QUklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktpdFdlYkZyYW1lUHJp
dmF0ZSogZnJhbWVEYXRhID0gV0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFURSh3ZWJWaWV3RGF0
YS0+bWFpbkZyYW1lKTsKLSAgICByZXR1cm4gZnJhbWVEYXRhLT5mcmFtZS0+bG9hZGVyKCktPmNh
bkdvQmFja09yRm9yd2FyZCgtMSk7CisgICAgRnJhbWUqIGZyYW1lID0gY29yZSh3ZWJraXRfd2Vi
X3ZpZXdfZ2V0X21haW5fZnJhbWUod2ViVmlldykpOworICAgIHJldHVybiBmcmFtZS0+bG9hZGVy
KCktPmNhbkdvQmFja09yRm9yd2FyZCgtMSk7CiB9CiAKIGdib29sZWFuIHdlYmtpdF93ZWJfdmll
d19jYW5fZ29fZm9yd2FyZChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3KQogewogICAgIGdfcmV0dXJu
X3ZhbF9pZl9mYWlsKFdFQktJVF9JU19XRUJfVklFVyh3ZWJWaWV3KSwgRkFMU0UpOwogCi0gICAg
V2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZpZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9Q
UklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktpdFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0g
V0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFURSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKLSAg
ICByZXR1cm4gZnJhbWVEYXRhLT5mcmFtZS0+bG9hZGVyKCktPmNhbkdvQmFja09yRm9yd2FyZCgx
KTsKKyAgICBGcmFtZSogZnJhbWUgPSBjb3JlKHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9mcmFt
ZSh3ZWJWaWV3KSk7CisgICAgcmV0dXJuIGZyYW1lLT5sb2FkZXIoKS0+Y2FuR29CYWNrT3JGb3J3
YXJkKDEpOwogfQogCiB2b2lkIHdlYmtpdF93ZWJfdmlld19vcGVuKFdlYktpdFdlYlZpZXcqIHdl
YlZpZXcsIGNvbnN0IGdjaGFyKiB1cmkpCiB7CiAgICAgZ19yZXR1cm5faWZfZmFpbChXRUJLSVRf
SVNfV0VCX1ZJRVcod2ViVmlldykpOwogCi0gICAgV2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZp
ZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9QUklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktp
dFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0gV0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFU
RSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKLQorICAgIEZyYW1lKiBmcmFtZSA9IGNvcmUod2Vi
a2l0X3dlYl92aWV3X2dldF9tYWluX2ZyYW1lKHdlYlZpZXcpKTsKICAgICBEZXByZWNhdGVkU3Ry
aW5nIHN0cmluZyA9IERlcHJlY2F0ZWRTdHJpbmc6OmZyb21VdGY4KHVyaSk7Ci0gICAgZnJhbWVE
YXRhLT5mcmFtZS0+bG9hZGVyKCktPmxvYWQoUmVzb3VyY2VSZXF1ZXN0KEtVUkwoc3RyaW5nKSkp
OworICAgIGZyYW1lLT5sb2FkZXIoKS0+bG9hZChSZXNvdXJjZVJlcXVlc3QoS1VSTChzdHJpbmcp
KSk7CiB9CiAKIHZvaWQgd2Via2l0X3dlYl92aWV3X3JlbG9hZChXZWJLaXRXZWJWaWV3KiB3ZWJW
aWV3KQogewogICAgIGdfcmV0dXJuX2lmX2ZhaWwoV0VCS0lUX0lTX1dFQl9WSUVXKHdlYlZpZXcp
KTsKIAotICAgIFdlYktpdFdlYlZpZXdQcml2YXRlKiB3ZWJWaWV3RGF0YSA9IFdFQktJVF9XRUJf
VklFV19HRVRfUFJJVkFURSh3ZWJWaWV3KTsKLSAgICBXZWJLaXRXZWJGcmFtZVByaXZhdGUqIGZy
YW1lRGF0YSA9IFdFQktJVF9XRUJfRlJBTUVfR0VUX1BSSVZBVEUod2ViVmlld0RhdGEtPm1haW5G
cmFtZSk7Ci0gICAgZnJhbWVEYXRhLT5mcmFtZS0+bG9hZGVyKCktPnJlbG9hZCgpOworICAgIEZy
YW1lKiBmcmFtZSA9IGNvcmUod2Via2l0X3dlYl92aWV3X2dldF9tYWluX2ZyYW1lKHdlYlZpZXcp
KTsKKyAgICBmcmFtZS0+bG9hZGVyKCktPnJlbG9hZCgpOwogfQogCiB2b2lkIHdlYmtpdF93ZWJf
dmlld19sb2FkX3N0cmluZyhXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBjb25zdCBnY2hhciogY29u
dGVudCwgY29uc3QgZ2NoYXIqIGNvbnRlbnRNaW1lVHlwZSwgY29uc3QgZ2NoYXIqIGNvbnRlbnRF
bmNvZGluZywgY29uc3QgZ2NoYXIqIGJhc2VVcmkpCiB7CiAgICAgZ19yZXR1cm5faWZfZmFpbChX
RUJLSVRfSVNfV0VCX1ZJRVcod2ViVmlldykpOwogCi0gICAgV2ViS2l0V2ViVmlld1ByaXZhdGUq
IHdlYlZpZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9QUklWQVRFKHdlYlZpZXcpOwotICAg
IFdlYktpdFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0gV0VCS0lUX1dFQl9GUkFNRV9HRVRf
UFJJVkFURSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKKyAgICBGcmFtZSogZnJhbWUgPSBjb3Jl
KHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9mcmFtZSh3ZWJWaWV3KSk7CiAKICAgICBLVVJMIHVy
bChEZXByZWNhdGVkU3RyaW5nOjpmcm9tVXRmOChiYXNlVXJpKSk7CiAgICAgUmVmUHRyPFNoYXJl
ZEJ1ZmZlcj4gc2hhcmVkQnVmZmVyID0gbmV3IFNoYXJlZEJ1ZmZlcihzdHJkdXAoY29udGVudCks
IHN0cmxlbihjb250ZW50KSk7CiAgICAgU3Vic3RpdHV0ZURhdGEgc3Vic3RpdHV0ZURhdGEoc2hh
cmVkQnVmZmVyLnJlbGVhc2UoKSwgU3RyaW5nKGNvbnRlbnRNaW1lVHlwZSksIFN0cmluZyhjb250
ZW50RW5jb2RpbmcpLCBLVVJMKCJhYm91dDpibGFuayIpLCB1cmwpOwogCi0gICAgZnJhbWVEYXRh
LT5mcmFtZS0+bG9hZGVyKCktPmxvYWQoUmVzb3VyY2VSZXF1ZXN0KHVybCksIHN1YnN0aXR1dGVE
YXRhKTsKKyAgICBmcmFtZS0+bG9hZGVyKCktPmxvYWQoUmVzb3VyY2VSZXF1ZXN0KHVybCksIHN1
YnN0aXR1dGVEYXRhKTsKIH0KIAogdm9pZCB3ZWJraXRfd2ViX3ZpZXdfbG9hZF9odG1sX3N0cmlu
ZyhXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3LCBjb25zdCBnY2hhciogY29udGVudCwgY29uc3QgZ2No
YXIqIGJhc2VVcmwpCkBAIC05MTIsMTAgKzkwNCw5IEBACiB7CiAgICAgZ19yZXR1cm5faWZfZmFp
bChXRUJLSVRfSVNfV0VCX1ZJRVcod2ViVmlldykpOwogCi0gICAgV2ViS2l0V2ViVmlld1ByaXZh
dGUqIHdlYlZpZXdEYXRhID0gV0VCS0lUX1dFQl9WSUVXX0dFVF9QUklWQVRFKHdlYlZpZXcpOwot
ICAgIFdlYktpdFdlYkZyYW1lUHJpdmF0ZSogZnJhbWVEYXRhID0gV0VCS0lUX1dFQl9GUkFNRV9H
RVRfUFJJVkFURSh3ZWJWaWV3RGF0YS0+bWFpbkZyYW1lKTsKKyAgICBGcmFtZSogZnJhbWUgPSBj
b3JlKHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9mcmFtZSh3ZWJWaWV3KSk7CiAKLSAgICBpZiAo
RnJhbWVMb2FkZXIqIGxvYWRlciA9IGZyYW1lRGF0YS0+ZnJhbWUtPmxvYWRlcigpKQorICAgIGlm
IChGcmFtZUxvYWRlciogbG9hZGVyID0gZnJhbWUtPmxvYWRlcigpKQogICAgICAgICBsb2FkZXIt
PnN0b3BBbGxMb2FkZXJzKCk7CiB9CiAKQEAgLTkzMiwxMCArOTIzLDggQEAKICAgICBnX3JldHVy
bl9pZl9mYWlsKFdFQktJVF9JU19XRUJfVklFVyh3ZWJWaWV3KSk7CiAgICAgZ19yZXR1cm5faWZf
ZmFpbChzY3JpcHQpOwogCi0gICAgV2ViS2l0V2ViVmlld1ByaXZhdGUqIHdlYlZpZXdEYXRhID0g
V0VCS0lUX1dFQl9WSUVXX0dFVF9QUklWQVRFKHdlYlZpZXcpOwotICAgIFdlYktpdFdlYkZyYW1l
UHJpdmF0ZSogZnJhbWVEYXRhID0gV0VCS0lUX1dFQl9GUkFNRV9HRVRfUFJJVkFURSh3ZWJWaWV3
RGF0YS0+bWFpbkZyYW1lKTsKLQotICAgIGlmIChGcmFtZUxvYWRlciogbG9hZGVyID0gZnJhbWVE
YXRhLT5mcmFtZS0+bG9hZGVyKCkpCisgICAgRnJhbWUqIGZyYW1lID0gY29yZSh3ZWJraXRfd2Vi
X3ZpZXdfZ2V0X21haW5fZnJhbWUod2ViVmlldykpOworICAgIGlmIChGcmFtZUxvYWRlciogbG9h
ZGVyID0gZnJhbWUtPmxvYWRlcigpKQogICAgICAgICBsb2FkZXItPmV4ZWN1dGVTY3JpcHQoU3Ry
aW5nOjpmcm9tVVRGOChzY3JpcHQpLCB0cnVlKTsKIH0KIApJbmRleDogV2ViS2l0L2d0ay9XZWJW
aWV3L3dlYmtpdHByaXZhdGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9ndGsvV2ViVmlldy93
ZWJraXRwcml2YXRlLmNwcAkocmV2aXNpb24gMjg1NjEpCisrKyBXZWJLaXQvZ3RrL1dlYlZpZXcv
d2Via2l0cHJpdmF0ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5LDExICszOSw2IEBACiAgICAg
cmV0dXJuIDA7CiB9CiAKLVdlYktpdFdlYkZyYW1lKiBnZXRGcmFtZUZyb21WaWV3KFdlYktpdFdl
YlZpZXcqIHdlYlZpZXcpCi17Ci0gICAgcmV0dXJuIHdlYmtpdF93ZWJfdmlld19nZXRfbWFpbl9m
cmFtZSh3ZWJWaWV3KTsKLX0KLQogV2ViS2l0V2ViVmlldyogZ2V0Vmlld0Zyb21GcmFtZShXZWJL
aXRXZWJGcmFtZSogZnJhbWUpCiB7CiAgICAgcmV0dXJuIHdlYmtpdF93ZWJfZnJhbWVfZ2V0X3dl
Yl92aWV3KGZyYW1lKTsKSW5kZXg6IFdlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRWRpdG9yQ2xp
ZW50R3RrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0VkaXRv
ckNsaWVudEd0ay5jcHAJKHJldmlzaW9uIDI4NTYxKQorKysgV2ViS2l0L2d0ay9XZWJDb3JlU3Vw
cG9ydC9FZGl0b3JDbGllbnRHdGsuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzAsNyArMjcwLDkg
QEAKICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCktPmV4ZWNDb21tYW5kKCJNb3ZlRG93
bkJ5UGFnZUFuZE1vZGlmeUNhcmV0Iik7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
ICAgICBjYXNlIFZLX0hPTUU6Ci0gICAgICAgICAgICAgICAgaWYgKGtldmVudC0+Y3RybEtleSgp
KQorICAgICAgICAgICAgICAgIGlmIChrZXZlbnQtPmN0cmxLZXkoKSAmJiBrZXZlbnQtPnNoaWZ0
S2V5KCkpCisgICAgICAgICAgICAgICAgICAgIGZyYW1lLT5lZGl0b3IoKS0+ZXhlY0NvbW1hbmQo
Ik1vdmVUb0JlZ2lubmluZ09mRG9jdW1lbnRBbmRNb2RpZnlTZWxlY3Rpb24iKTsKKyAgICAgICAg
ICAgICAgICBlbHNlIGlmIChrZXZlbnQtPmN0cmxLZXkoKSkKICAgICAgICAgICAgICAgICAgICAg
ZnJhbWUtPmVkaXRvcigpLT5leGVjQ29tbWFuZCgiTW92ZVRvQmVnaW5uaW5nT2ZEb2N1bWVudCIp
OwogICAgICAgICAgICAgICAgIGVsc2UgaWYgKGtldmVudC0+c2hpZnRLZXkoKSkKICAgICAgICAg
ICAgICAgICAgICAgZnJhbWUtPmVkaXRvcigpLT5leGVjQ29tbWFuZCgiTW92ZVRvQmVnaW5uaW5n
T2ZMaW5lQW5kTW9kaWZ5U2VsZWN0aW9uIik7CkBAIC0yNzgsNyArMjgwLDkgQEAKICAgICAgICAg
ICAgICAgICAgICAgZnJhbWUtPmVkaXRvcigpLT5leGVjQ29tbWFuZCgiTW92ZVRvQmVnaW5uaW5n
T2ZMaW5lIik7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIFZLX0VO
RDoKLSAgICAgICAgICAgICAgICBpZiAoa2V2ZW50LT5jdHJsS2V5KCkpCisgICAgICAgICAgICAg
ICAgaWYgKGtldmVudC0+Y3RybEtleSgpICYmIGtldmVudC0+c2hpZnRLZXkoKSkKKyAgICAgICAg
ICAgICAgICAgICAgZnJhbWUtPmVkaXRvcigpLT5leGVjQ29tbWFuZCgiTW92ZVRvRW5kT2ZEb2N1
bWVudEFuZE1vZGlmeVNlbGVjdGlvbiIpOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGtldmVu
dC0+Y3RybEtleSgpKQogICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCktPmV4ZWND
b21tYW5kKCJNb3ZlVG9FbmRPZkRvY3VtZW50Iik7CiAgICAgICAgICAgICAgICAgZWxzZSBpZiAo
a2V2ZW50LT5zaGlmdEtleSgpKQogICAgICAgICAgICAgICAgICAgICBmcmFtZS0+ZWRpdG9yKCkt
PmV4ZWNDb21tYW5kKCJNb3ZlVG9FbmRPZkxpbmVBbmRNb2RpZnlTZWxlY3Rpb24iKTsKSW5kZXg6
IFdlYktpdC9ndGsvV2ViVmlldy93ZWJraXRwcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
L2d0ay9XZWJWaWV3L3dlYmtpdHByaXZhdGUuaAkocmV2aXNpb24gMjg1NjEpCisrKyBXZWJLaXQv
Z3RrL1dlYlZpZXcvd2Via2l0cHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC00MCw3ICs0MCw2
IEBACiBuYW1lc3BhY2UgV2ViS2l0IHsKICAgICB2b2lkIGFwcGx5KFdlYktpdFNldHRpbmdzKixX
ZWJDb3JlOjpTZXR0aW5ncyopOwogICAgIFdlYktpdFNldHRpbmdzKiBjcmVhdGUoV2ViQ29yZTo6
U2V0dGluZ3MqKTsKLSAgICBXZWJLaXRXZWJGcmFtZSogIGdldEZyYW1lRnJvbVZpZXcoV2ViS2l0
V2ViVmlldyopOwogICAgIFdlYktpdFdlYlZpZXcqIGdldFZpZXdGcm9tRnJhbWUoV2ViS2l0V2Vi
RnJhbWUqKTsKIAogICAgIFdlYkNvcmU6OkZyYW1lKiBjb3JlKFdlYktpdFdlYkZyYW1lKik7Cg==
</data>
<flag name="review"
          id="7666"
          type_id="1"
          status="+"
          setter="alp"
    />
          </attachment>
      

    </bug>

</bugzilla>