<?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>51903</bug_id>
          
          <creation_ts>2011-01-04 15:31:01 -0800</creation_ts>
          <short_desc>Tell UI process which subframe is largest</short_desc>
          <delta_ts>2011-01-05 01:33:21 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>andersca</cc>
    
    <cc>commit-queue</cc>
    
    <cc>sam</cc>
    
    <cc>sullivan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>329256</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-01-04 15:31:01 -0800</bug_when>
    <thetext>Some WebKit clients need to know which frame in a frameset is largest for their UI decisions. They want the answer synchronously.

Since UI process doesn&apos;t track frame sizes, and we want to keep it that way, it needs to track which frame is largest.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>329260</commentid>
    <comment_count>1</comment_count>
      <attachid>77938</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-01-04 15:40:08 -0800</bug_when>
    <thetext>Created attachment 77938
proposed patch

Some potential areas of concern:
- Is the algorithm what clients want? I reinvented it.
- There is no strong guarantee that new data members will be cleared up when frame tree changes. As far as I can tell, WebFrame classes on both sides will not be too upset, but I can&apos;t be sure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>329268</commentid>
    <comment_count>2</comment_count>
      <attachid>77938</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2011-01-04 15:55:29 -0800</bug_when>
    <thetext>Comment on attachment 77938
proposed patch

I think the names need to indicate that it is the largest frame is in the mainFrame frameset.  I am also not sure we really need to be doing this on all contentSize changes, but I don&apos;t think it matters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>329277</commentid>
    <comment_count>3</comment_count>
      <attachid>77943</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-01-04 16:11:22 -0800</bug_when>
    <thetext>Created attachment 77943
patch for landing

I couldn&apos;t come up with better names. The fact that these member variables are in per-page classes should hopefully serve as a hint.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>329481</commentid>
    <comment_count>4</comment_count>
      <attachid>77943</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-05 01:33:15 -0800</bug_when>
    <thetext>Comment on attachment 77943
patch for landing

Clearing flags on attachment: 77943

Committed r75054: &lt;http://trac.webkit.org/changeset/75054&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>329482</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-05 01:33:21 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>77938</attachid>
            <date>2011-01-04 15:40:08 -0800</date>
            <delta_ts>2011-01-04 17:17:46 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>LargestFrame.txt</filename>
            <type>text/plain</type>
            <size>9613</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA3NTAxOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTMgQEAKKzIwMTEtMDEtMDQgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
TmVlZCBhIHNob3J0IGRlc2NyaXB0aW9uIGFuZCBidWcgVVJMIChPT1BTISkKKworICAgICAgICBO
byBuZXcgdGVzdHMuIChPT1BTISkKKworICAgICAgICAqIFdlYkNvcmUuZXhwLmluOgorCiAyMDEx
LTAxLTA0ICBYaWFvbWVpIEppICA8eGppQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBEYW4gQmVybnN0ZWluLgpJbmRleDogV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL1dlYkNvcmUuZXhwLmluCShyZXZpc2lvbiA3NDg5NikKKysrIFdlYkNv
cmUvV2ViQ29yZS5leHAuaW4JKHdvcmtpbmcgY29weSkKQEAgLTk0MSw2ICs5NDEsNyBAQCBfX1pO
SzdXZWJDb3JlMTBQbHVnaW5EYXRhMTZzdXBwb3J0c01pbWVUCiBfX1pOSzdXZWJDb3JlMTBSZW5k
ZXJUZXh0MTZsaW5lc0JvdW5kaW5nQm94RXYKIF9fWk5LN1dlYkNvcmUxMFJlbmRlclRleHQ5Zmly
c3RSdW5YRXYKIF9fWk5LN1dlYkNvcmUxMFJlbmRlclRleHQ5Zmlyc3RSdW5ZRXYKK19fWk5LN1dl
YkNvcmUxMFNjcm9sbFZpZXcxMmNvbnRlbnRzU2l6ZUV2CiBfX1pOSzdXZWJDb3JlMTBTY3JvbGxW
aWV3MTJkb2N1bWVudFZpZXdFdgogX19aTks3V2ViQ29yZTEwU2Nyb2xsVmlldzE0c2Nyb2xsYmFy
TW9kZXNFUk5TXzEzU2Nyb2xsYmFyTW9kZUVTMl8KIF9fWk5LN1dlYkNvcmUxMFNjcm9sbFZpZXcx
NmNvbnRlbnRzVG9XaW5kb3dFUktOU183SW50UmVjdEUKSW5kZXg6IFdlYktpdDIvQ2hhbmdlTG9n
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiA3NTAxOSkKKysrIFdl
YktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzQgQEAKKzIwMTEtMDEt
MDQgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUxOTAzCisgICAgICAgIFRlbGwgVUkgcHJvY2VzcyB3aGljaCBzdWJm
cmFtZSBpcyBsYXJnZXN0CisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZnJhbWVTZXRMYXJnZXN0RnJhbWUpOgorICAg
ICAgICBSZW1lbWJlciBsYXJnZXN0IGZyYW1lIGluIGZyYW1lc2V0IHBhZ2VzLgorCisgICAgICAg
ICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQ
cm94eTo6ZnJhbWVEaWRCZWNvbWVGcmFtZVNldCk6IFJlc2V0IHN0b3JlZCBsYXJnZXN0IGZyYW1l
IGlmIG1haW4gZnJhbWUKKyAgICAgICAgY2hhbmdlcyB0byBhIGZyYW1lc2V0IG9yIGJhY2suCisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6ZnJhbWVTZXRMYXJnZXN0RnJhbWVDaGFuZ2Vk
KTogU3RvcmUgYSBuZXcgbGFyZ2VzdCBmcmFtZSB3aGVuIG5vdGlmaWVkCisgICAgICAgIG9mIGEg
Y2hhbmdlLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbjog
QWRkZWQgRnJhbWVTZXRMYXJnZXN0RnJhbWVDaGFuZ2VkLgorCisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwOgorICAgICAgICAoV2ViS2l0Ojph
cmVhKTogQ2FsY3VsYXRlIGFyZWEgb2YgYSBmcmFtZS4KKyAgICAgICAgKFdlYktpdDo6ZmluZExh
cmdlc3RGcmFtZUluRnJhbWVTZXQpOiBGaW5kIGxhcmdlc3QgZmlyc3QtbGV2ZWwgc3ViZnJhbWUg
aW4gYSBmcmFtZXNldCBwYWdlLgorICAgICAgICAoV2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmNv
bnRlbnRzU2l6ZUNoYW5nZWQpOiBSZWNhbGN1bGF0ZSBsYXJnZXN0IGZyYW1lLCBhbmQgbm90aWZ5
IFVJCisgICAgICAgIHByb2Nlc3MgaWYgaXQgY2hhbmdlZC4KKworICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6IFN0b3JlIHRoZSBsYXRlc3QgbGFy
Z2VzdCBmcmFtZS4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHA6
IChXZWJLaXQ6OldlYkZyYW1lOjpzaXplKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViRnJhbWUuaDoKKyAgICAgICAgRXhwb3NlIGZyYW1lIHNpemUuCisKIDIwMTEtMDEtMDQgIEFu
ZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBTYW0gV2VpbmlnLgpJbmRleDogV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCShyZXZpc2lv
biA3NDg5NikKKysrIFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTEyMDMsNiArMTIwMyw4IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpmcmFtZURpZEJl
Y29tZUZyYW1lU2UKICAgICBNRVNTQUdFX0NIRUNLKGZyYW1lKTsKIAogICAgIGZyYW1lLT5zZXRJ
c0ZyYW1lU2V0KHZhbHVlKTsKKyAgICBpZiAoZnJhbWUtPmlzTWFpbkZyYW1lKCkpCisgICAgICAg
IG1fZnJhbWVTZXRMYXJnZXN0RnJhbWUgPSB2YWx1ZSA/IG1fbWFpbkZyYW1lIDogMDsKIH0KIAog
Ly8gUG9saWN5Q2xpZW50CkBAIC0xODY3LDYgKzE4NjksMTkgQEAgdm9pZCBXZWJQYWdlUHJveHk6
OmZvY3VzZWRGcmFtZUNoYW5nZWQodQogICAgIG1fZm9jdXNlZEZyYW1lID0gZnJhbWU7CiB9CiAK
K3ZvaWQgV2ViUGFnZVByb3h5OjpmcmFtZVNldExhcmdlc3RGcmFtZUNoYW5nZWQodWludDY0X3Qg
ZnJhbWVJRCkKK3sKKyAgICBpZiAoIWZyYW1lSUQpIHsKKyAgICAgICAgbV9mcmFtZVNldExhcmdl
c3RGcmFtZSA9IDA7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBXZWJGcmFtZVByb3h5
KiBmcmFtZSA9IHByb2Nlc3MoKS0+d2ViRnJhbWUoZnJhbWVJRCk7CisgICAgTUVTU0FHRV9DSEVD
SyhmcmFtZSk7CisKKyAgICBtX2ZyYW1lU2V0TGFyZ2VzdEZyYW1lID0gZnJhbWU7Cit9CisKICNp
ZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiB2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkQ2hh
bmdlQWNjZWxlcmF0ZWRDb21wb3NpdGluZyhib29sIGNvbXBvc2l0aW5nLCBEcmF3aW5nQXJlYUlu
Zm8mIGRyYXdpbmdBcmVhSW5mbykKIHsKSW5kZXg6IFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQ
cm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCShy
ZXZpc2lvbiA3NDg5NikKKysrIFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMTEsNiArMTExLDcgQEAgcHVibGljOgogCiAgICAgV2ViRnJhbWVQcm94
eSogbWFpbkZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV9tYWluRnJhbWUuZ2V0KCk7IH0KICAgICBX
ZWJGcmFtZVByb3h5KiBmb2N1c2VkRnJhbWUoKSBjb25zdCB7IHJldHVybiBtX2ZvY3VzZWRGcmFt
ZS5nZXQoKTsgfQorICAgIFdlYkZyYW1lUHJveHkqIGZyYW1lU2V0TGFyZ2VzdEZyYW1lKCkgY29u
c3QgeyByZXR1cm4gbV9mcmFtZVNldExhcmdlc3RGcmFtZS5nZXQoKTsgfQogCiAgICAgRHJhd2lu
Z0FyZWFQcm94eSogZHJhd2luZ0FyZWEoKSB7IHJldHVybiBtX2RyYXdpbmdBcmVhLmdldCgpOyB9
CiAgICAgdm9pZCBzZXREcmF3aW5nQXJlYShQYXNzT3duUHRyPERyYXdpbmdBcmVhUHJveHk+KTsK
QEAgLTQzNCw2ICs0MzUsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgc3RyaW5nQ2FsbGJhY2soY29u
c3QgU3RyaW5nJiwgdWludDY0X3QpOwogCiAgICAgdm9pZCBmb2N1c2VkRnJhbWVDaGFuZ2VkKHVp
bnQ2NF90IGZyYW1lSUQpOworICAgIHZvaWQgZnJhbWVTZXRMYXJnZXN0RnJhbWVDaGFuZ2VkKHVp
bnQ2NF90IGZyYW1lSUQpOwogCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQogICAg
IHZvaWQgZGlkQ2hhbmdlQWNjZWxlcmF0ZWRDb21wb3NpdGluZyhib29sIGNvbXBvc2l0aW5nLCBE
cmF3aW5nQXJlYUluZm8mKTsKQEAgLTQ2NCw2ICs0NjYsNyBAQCBwcml2YXRlOgogICAgIFJlZlB0
cjxXZWJQYWdlR3JvdXA+IG1fcGFnZUdyb3VwOwogICAgIFJlZlB0cjxXZWJGcmFtZVByb3h5PiBt
X21haW5GcmFtZTsKICAgICBSZWZQdHI8V2ViRnJhbWVQcm94eT4gbV9mb2N1c2VkRnJhbWU7Cisg
ICAgUmVmUHRyPFdlYkZyYW1lUHJveHk+IG1fZnJhbWVTZXRMYXJnZXN0RnJhbWU7CiAKICAgICBT
dHJpbmcgbV91c2VyQWdlbnQ7CiAgICAgU3RyaW5nIG1fYXBwbGljYXRpb25OYW1lRm9yVXNlckFn
ZW50OwpJbmRleDogV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgko
cmV2aXNpb24gNzQ4OTYpCisrKyBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2Fn
ZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTM4LDYgKzM4LDcgQEAgbWVzc2FnZXMgLT4gV2ViUGFn
ZVByb3h5IHsKICAgICBTZXRUb29sVGlwKFdURjo6U3RyaW5nIHRvb2xUaXApCiAgICAgVGFrZUZv
Y3VzKGJvb2wgZGlyZWN0aW9uKQogICAgIEZvY3VzZWRGcmFtZUNoYW5nZWQodWludDY0X3QgZnJh
bWVJRCkKKyAgICBGcmFtZVNldExhcmdlc3RGcmFtZUNoYW5nZWQodWludDY0X3QgZnJhbWVJRCkK
ICAgICBTZXRUb29sYmFyc0FyZVZpc2libGUoYm9vbCB0b29sYmFyc0FyZVZpc2libGUpCiAgICAg
R2V0VG9vbGJhcnNBcmVWaXNpYmxlKCkgLT4gKGJvb2wgdG9vbGJhcnNBcmVWaXNpYmxlKQogICAg
IFNldE1lbnVCYXJJc1Zpc2libGUoYm9vbCBtZW51QmFySXNWaXNpYmxlKTsKSW5kZXg6IFdlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQu
Y3BwCShyZXZpc2lvbiA3NDg5NikKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01OSw2ICs1OSwzMiBAQCB1
c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAorc3RhdGlj
IGRvdWJsZSBhcmVhKFdlYkZyYW1lKiBmcmFtZSkKK3sKKyAgICBJbnRTaXplIHNpemUgPSBmcmFt
ZS0+c2l6ZSgpOworICAgIHJldHVybiBzdGF0aWNfY2FzdDxkb3VibGU+KHNpemUuaGVpZ2h0KCkp
ICogc2l6ZS53aWR0aCgpOworfQorCisKK3N0YXRpYyBXZWJGcmFtZSogZmluZExhcmdlc3RGcmFt
ZUluRnJhbWVTZXQoV2ViUGFnZSogcGFnZSkKK3sKKyAgICBXZWJGcmFtZSogbWFpbkZyYW1lID0g
cGFnZS0+bWFpbkZyYW1lKCk7CisgICAgaWYgKCFtYWluRnJhbWUtPmlzRnJhbWVTZXQoKSkKKyAg
ICAgICAgcmV0dXJuIDA7CisKKyAgICBXZWJGcmFtZSogbGFyZ2VzdFNvRmFyID0gMDsKKworICAg
IFJlZlB0cjxJbW11dGFibGVBcnJheT4gZnJhbWVDaGlsZHJlbiA9IG1haW5GcmFtZS0+Y2hpbGRG
cmFtZXMoKTsKKyAgICBzaXplX3QgY291bnQgPSBmcmFtZUNoaWxkcmVuLT5zaXplKCk7CisgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7CisgICAgICAgIFdlYkZyYW1lKiBj
aGlsZEZyYW1lID0gZnJhbWVDaGlsZHJlbi0+YXQ8V2ViRnJhbWU+KGkpOworICAgICAgICBpZiAo
IWxhcmdlc3RTb0ZhciB8fCBhcmVhKGNoaWxkRnJhbWUpID4gYXJlYShsYXJnZXN0U29GYXIpKQor
ICAgICAgICAgICAgbGFyZ2VzdFNvRmFyID0gY2hpbGRGcmFtZTsKKyAgICB9CisKKyAgICByZXR1
cm4gbGFyZ2VzdFNvRmFyOworfQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y2hyb21lRGVzdHJv
eWVkKCkKIHsKICAgICBkZWxldGUgdGhpczsKQEAgLTM4NCw2ICs0MTAsMTIgQEAgdm9pZCBXZWJD
aHJvbWVDbGllbnQ6OmNvbnRlbnRzU2l6ZUNoYW5nZQogCiAgICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OkRpZENoYW5nZUNvbnRlbnRzU2l6ZShzaXplKSk7CiAjZW5kaWYK
KworICAgIFdlYkZyYW1lKiBsYXJnZXN0RnJhbWUgPSBmaW5kTGFyZ2VzdEZyYW1lSW5GcmFtZVNl
dChtX3BhZ2UpOworICAgIGlmIChsYXJnZXN0RnJhbWUgIT0gbV9jYWNoZWRGcmFtZVNldExhcmdl
c3RGcmFtZS5nZXQoKSkgeworICAgICAgICBtX2NhY2hlZEZyYW1lU2V0TGFyZ2VzdEZyYW1lID0g
bGFyZ2VzdEZyYW1lOworICAgICAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5jb25uZWN0aW9uKCkt
PnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RnJhbWVTZXRMYXJnZXN0RnJhbWVDaGFuZ2Vk
KGxhcmdlc3RGcmFtZSA/IGxhcmdlc3RGcmFtZS0+ZnJhbWVJRCgpIDogMCksIG1fcGFnZS0+cGFn
ZUlEKCkpOworICAgIH0KIH0KIAogdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNjcm9sbFJlY3RJbnRv
Vmlldyhjb25zdCBJbnRSZWN0JiwgY29uc3QgU2Nyb2xsVmlldyopIGNvbnN0CkluZGV4OiBXZWJL
aXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5o
CShyZXZpc2lvbiA3NDg5NikKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMzMsNiArMzMsNyBAQAogCiBuYW1l
c3BhY2UgV2ViS2l0IHsKIAorY2xhc3MgV2ViRnJhbWU7CiBjbGFzcyBXZWJQYWdlOwogCiBjbGFz
cyBXZWJDaHJvbWVDbGllbnQgOiBwdWJsaWMgV2ViQ29yZTo6Q2hyb21lQ2xpZW50IHsKQEAgLTIw
Miw2ICsyMDMsNyBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFZpZXdwb3J0
RGF0YURpZENoYW5nZShjb25zdCBXZWJDb3JlOjpWaWV3cG9ydEFyZ3VtZW50cyYpIGNvbnN0Owog
CiAgICAgU3RyaW5nIG1fY2FjaGVkVG9vbFRpcDsKKyAgICBtdXRhYmxlIFJlZlB0cjxXZWJGcmFt
ZT4gbV9jYWNoZWRGcmFtZVNldExhcmdlc3RGcmFtZTsKICAgICBXZWJQYWdlKiBtX3BhZ2U7CiB9
OwogCkluZGV4OiBXZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwCShyZXZpc2lv
biA3NDg5NikKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNDEsNiArNDEsNyBAQAogI2luY2x1ZGUgPFdlYkNvcmUvQ2hyb21lLmg+
CiAjaW5jbHVkZSA8V2ViQ29yZS9Eb2N1bWVudExvYWRlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUv
RnJhbWUuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0ZyYW1lVmlldy5oPgogI2luY2x1ZGUgPFdlYkNv
cmUvSFRNTEZyYW1lT3duZXJFbGVtZW50Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9KU0NTU1N0eWxl
RGVjbGFyYXRpb24uaD4KICNpbmNsdWRlIDxXZWJDb3JlL0pTRWxlbWVudC5oPgpAQCAtMjg3LDYg
KzI4OCwxOCBAQCBTdHJpbmcgV2ViRnJhbWU6OnNlbGVjdGlvbkFzU3RyaW5nKCkgY29uCiAgICAg
cmV0dXJuIG1fY29yZUZyYW1lLT5kaXNwbGF5U3RyaW5nTW9kaWZpZWRCeUVuY29kaW5nKG1fY29y
ZUZyYW1lLT5lZGl0b3IoKS0+c2VsZWN0ZWRUZXh0KCkpOwogfQogCitJbnRTaXplIFdlYkZyYW1l
OjpzaXplKCkgY29uc3QKK3sKKyAgICBpZiAoIW1fY29yZUZyYW1lKQorICAgICAgICByZXR1cm4g
SW50U2l6ZSgpOworCisgICAgRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBtX2NvcmVGcmFtZS0+dmll
dygpOworICAgIGlmICghZnJhbWVWaWV3KQorICAgICAgICByZXR1cm4gSW50U2l6ZSgpOworCisg
ICAgcmV0dXJuIGZyYW1lVmlldy0+Y29udGVudHNTaXplKCk7Cit9CisKIGJvb2wgV2ViRnJhbWU6
OmlzRnJhbWVTZXQoKSBjb25zdAogewogICAgIGlmICghbV9jb3JlRnJhbWUpCkluZGV4OiBXZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmgJKHJldmlzaW9uIDc0ODk2KQorKysgV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuaAkod29ya2luZyBjb3B5KQpAQCAtNzcsMTEg
Kzc3LDE0IEBAIHB1YmxpYzoKICAgICBTdHJpbmcgY29udGVudHNBc1N0cmluZygpIGNvbnN0Owog
ICAgIFN0cmluZyBzZWxlY3Rpb25Bc1N0cmluZygpIGNvbnN0OwogCisgICAgV2ViQ29yZTo6SW50
U2l6ZSBzaXplKCkgY29uc3Q7CisKICAgICAvLyBXS0J1bmRsZUZyYW1lIEFQSSBhbmQgU1BJIGZ1
bmN0aW9ucwogICAgIGJvb2wgaXNNYWluRnJhbWUoKSBjb25zdDsKICAgICBTdHJpbmcgbmFtZSgp
IGNvbnN0OwogICAgIFN0cmluZyB1cmwoKSBjb25zdDsKICAgICBTdHJpbmcgaW5uZXJUZXh0KCkg
Y29uc3Q7CisgICAgYm9vbCBpc0ZyYW1lU2V0KCkgY29uc3Q7CiAgICAgUGFzc1JlZlB0cjxJbW11
dGFibGVBcnJheT4gY2hpbGRGcmFtZXMoKTsKICAgICBKU1ZhbHVlUmVmIGNvbXB1dGVkU3R5bGVJ
bmNsdWRpbmdWaXNpdGVkSW5mbyhKU09iamVjdFJlZiBlbGVtZW50KTsKICAgICBKU0dsb2JhbENv
bnRleHRSZWYganNDb250ZXh0KCk7CkBAIC0xMjIsOCArMTI1LDYgQEAgcHJpdmF0ZToKIAogICAg
IHZpcnR1YWwgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gQVBJVHlwZTsgfQogCi0gICAgYm9v
bCBpc0ZyYW1lU2V0KCkgY29uc3Q7Ci0KICAgICBXZWJDb3JlOjpGcmFtZSogbV9jb3JlRnJhbWU7
CiAKICAgICB1aW50NjRfdCBtX3BvbGljeUxpc3RlbmVySUQ7Cg==
</data>
<flag name="review"
          id="69184"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>77943</attachid>
            <date>2011-01-04 16:11:22 -0800</date>
            <delta_ts>2011-01-05 01:33:15 -0800</delta_ts>
            <desc>patch for landing</desc>
            <filename>LargestFrame.txt</filename>
            <type>text/plain</type>
            <size>9660</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA3NTAxOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTIgQEAKKzIwMTEtMDEtMDQgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KKworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTE5MDMKKyAgICAgICAgVGVsbCBV
SSBwcm9jZXNzIHdoaWNoIHN1YmZyYW1lIGlzIGxhcmdlc3QKKworICAgICAgICAqIFdlYkNvcmUu
ZXhwLmluOiBFeHBvcnRlZCBGcmFtZVZpZXc6OmNvbnRlbnRzU2l6ZSgpLgorCiAyMDExLTAxLTA0
ICBYaWFvbWVpIEppICA8eGppQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBE
YW4gQmVybnN0ZWluLgpJbmRleDogV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL1dlYkNvcmUuZXhwLmluCShyZXZpc2lvbiA3NDg5NikKKysrIFdlYkNvcmUvV2Vi
Q29yZS5leHAuaW4JKHdvcmtpbmcgY29weSkKQEAgLTk0MSw2ICs5NDEsNyBAQCBfX1pOSzdXZWJD
b3JlMTBQbHVnaW5EYXRhMTZzdXBwb3J0c01pbWVUCiBfX1pOSzdXZWJDb3JlMTBSZW5kZXJUZXh0
MTZsaW5lc0JvdW5kaW5nQm94RXYKIF9fWk5LN1dlYkNvcmUxMFJlbmRlclRleHQ5Zmlyc3RSdW5Y
RXYKIF9fWk5LN1dlYkNvcmUxMFJlbmRlclRleHQ5Zmlyc3RSdW5ZRXYKK19fWk5LN1dlYkNvcmUx
MFNjcm9sbFZpZXcxMmNvbnRlbnRzU2l6ZUV2CiBfX1pOSzdXZWJDb3JlMTBTY3JvbGxWaWV3MTJk
b2N1bWVudFZpZXdFdgogX19aTks3V2ViQ29yZTEwU2Nyb2xsVmlldzE0c2Nyb2xsYmFyTW9kZXNF
Uk5TXzEzU2Nyb2xsYmFyTW9kZUVTMl8KIF9fWk5LN1dlYkNvcmUxMFNjcm9sbFZpZXcxNmNvbnRl
bnRzVG9XaW5kb3dFUktOU183SW50UmVjdEUKSW5kZXg6IFdlYktpdDIvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiA3NTAxOSkKKysrIFdlYktpdDIv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMzQgQEAKKzIwMTEtMDEtMDQgIEFs
ZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
U2FtIFdlaW5pZy4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NTE5MDMKKyAgICAgICAgVGVsbCBVSSBwcm9jZXNzIHdoaWNoIHN1YmZyYW1lIGlzIGxh
cmdlc3QKKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKFdl
YktpdDo6V2ViUGFnZVByb3h5OjpmcmFtZVNldExhcmdlc3RGcmFtZSk6CisgICAgICAgIFJlbWVt
YmVyIGxhcmdlc3QgZnJhbWUgaW4gZnJhbWVzZXQgcGFnZXMuCisKKyAgICAgICAgKiBVSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpmcmFt
ZURpZEJlY29tZUZyYW1lU2V0KTogUmVzZXQgc3RvcmVkIGxhcmdlc3QgZnJhbWUgaWYgbWFpbiBm
cmFtZQorICAgICAgICBjaGFuZ2VzIHRvIGEgZnJhbWVzZXQgb3IgYmFjay4KKyAgICAgICAgKFdl
YktpdDo6V2ViUGFnZVByb3h5OjpmcmFtZVNldExhcmdlc3RGcmFtZUNoYW5nZWQpOiBTdG9yZSBh
IG5ldyBsYXJnZXN0IGZyYW1lIHdoZW4gbm90aWZpZWQKKyAgICAgICAgb2YgYSBjaGFuZ2UuCisK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluOiBBZGRlZCBGcmFt
ZVNldExhcmdlc3RGcmFtZUNoYW5nZWQuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OmFyZWEpOiBDYWxj
dWxhdGUgYXJlYSBvZiBhIGZyYW1lLgorICAgICAgICAoV2ViS2l0OjpmaW5kTGFyZ2VzdEZyYW1l
SW5GcmFtZVNldCk6IEZpbmQgbGFyZ2VzdCBmaXJzdC1sZXZlbCBzdWJmcmFtZSBpbiBhIGZyYW1l
c2V0IHBhZ2UuCisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6Y29udGVudHNTaXpl
Q2hhbmdlZCk6IFJlY2FsY3VsYXRlIGxhcmdlc3QgZnJhbWUsIGFuZCBub3RpZnkgVUkKKyAgICAg
ICAgcHJvY2VzcyBpZiBpdCBjaGFuZ2VkLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3Jl
U3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDogU3RvcmUgdGhlIGxhdGVzdCBsYXJnZXN0IGZyYW1l
LgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmNwcDogKFdlYktpdDo6
V2ViRnJhbWU6OnNpemUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5o
OgorICAgICAgICBFeHBvc2UgZnJhbWUgc2l6ZS4KKwogMjAxMS0wMS0wNCAgQW5kZXJzIENhcmxz
c29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWlu
aWcuCkluZGV4OiBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAJKHJldmlzaW9uIDc0ODk2KQor
KysgV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTIwMyw2ICsxMjAzLDggQEAgdm9pZCBXZWJQYWdlUHJveHk6OmZyYW1lRGlkQmVjb21lRnJhbWVT
ZQogICAgIE1FU1NBR0VfQ0hFQ0soZnJhbWUpOwogCiAgICAgZnJhbWUtPnNldElzRnJhbWVTZXQo
dmFsdWUpOworICAgIGlmIChmcmFtZS0+aXNNYWluRnJhbWUoKSkKKyAgICAgICAgbV9mcmFtZVNl
dExhcmdlc3RGcmFtZSA9IHZhbHVlID8gbV9tYWluRnJhbWUgOiAwOwogfQogCiAvLyBQb2xpY3lD
bGllbnQKQEAgLTE4NjcsNiArMTg2OSwxOSBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6Zm9jdXNlZEZy
YW1lQ2hhbmdlZCh1CiAgICAgbV9mb2N1c2VkRnJhbWUgPSBmcmFtZTsKIH0KIAordm9pZCBXZWJQ
YWdlUHJveHk6OmZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZCh1aW50NjRfdCBmcmFtZUlEKQor
eworICAgIGlmICghZnJhbWVJRCkgeworICAgICAgICBtX2ZyYW1lU2V0TGFyZ2VzdEZyYW1lID0g
MDsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIFdlYkZyYW1lUHJveHkqIGZyYW1lID0g
cHJvY2VzcygpLT53ZWJGcmFtZShmcmFtZUlEKTsKKyAgICBNRVNTQUdFX0NIRUNLKGZyYW1lKTsK
KworICAgIG1fZnJhbWVTZXRMYXJnZXN0RnJhbWUgPSBmcmFtZTsKK30KKwogI2lmIFVTRShBQ0NF
TEVSQVRFRF9DT01QT1NJVElORykKIHZvaWQgV2ViUGFnZVByb3h5OjpkaWRDaGFuZ2VBY2NlbGVy
YXRlZENvbXBvc2l0aW5nKGJvb2wgY29tcG9zaXRpbmcsIERyYXdpbmdBcmVhSW5mbyYgZHJhd2lu
Z0FyZWFJbmZvKQogewpJbmRleDogV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgJKHJldmlzaW9uIDc0
ODk2KQorKysgV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgJKHdvcmtpbmcgY29weSkK
QEAgLTExMSw2ICsxMTEsNyBAQCBwdWJsaWM6CiAKICAgICBXZWJGcmFtZVByb3h5KiBtYWluRnJh
bWUoKSBjb25zdCB7IHJldHVybiBtX21haW5GcmFtZS5nZXQoKTsgfQogICAgIFdlYkZyYW1lUHJv
eHkqIGZvY3VzZWRGcmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fZm9jdXNlZEZyYW1lLmdldCgpOyB9
CisgICAgV2ViRnJhbWVQcm94eSogZnJhbWVTZXRMYXJnZXN0RnJhbWUoKSBjb25zdCB7IHJldHVy
biBtX2ZyYW1lU2V0TGFyZ2VzdEZyYW1lLmdldCgpOyB9CiAKICAgICBEcmF3aW5nQXJlYVByb3h5
KiBkcmF3aW5nQXJlYSgpIHsgcmV0dXJuIG1fZHJhd2luZ0FyZWEuZ2V0KCk7IH0KICAgICB2b2lk
IHNldERyYXdpbmdBcmVhKFBhc3NPd25QdHI8RHJhd2luZ0FyZWFQcm94eT4pOwpAQCAtNDM0LDYg
KzQzNSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzdHJpbmdDYWxsYmFjayhjb25zdCBTdHJpbmcm
LCB1aW50NjRfdCk7CiAKICAgICB2b2lkIGZvY3VzZWRGcmFtZUNoYW5nZWQodWludDY0X3QgZnJh
bWVJRCk7CisgICAgdm9pZCBmcmFtZVNldExhcmdlc3RGcmFtZUNoYW5nZWQodWludDY0X3QgZnJh
bWVJRCk7CiAKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAgICAgdm9pZCBkaWRD
aGFuZ2VBY2NlbGVyYXRlZENvbXBvc2l0aW5nKGJvb2wgY29tcG9zaXRpbmcsIERyYXdpbmdBcmVh
SW5mbyYpOwpAQCAtNDY0LDYgKzQ2Niw3IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFdlYlBhZ2VH
cm91cD4gbV9wYWdlR3JvdXA7CiAgICAgUmVmUHRyPFdlYkZyYW1lUHJveHk+IG1fbWFpbkZyYW1l
OwogICAgIFJlZlB0cjxXZWJGcmFtZVByb3h5PiBtX2ZvY3VzZWRGcmFtZTsKKyAgICBSZWZQdHI8
V2ViRnJhbWVQcm94eT4gbV9mcmFtZVNldExhcmdlc3RGcmFtZTsKIAogICAgIFN0cmluZyBtX3Vz
ZXJBZ2VudDsKICAgICBTdHJpbmcgbV9hcHBsaWNhdGlvbk5hbWVGb3JVc2VyQWdlbnQ7CkluZGV4
OiBXZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkubWVzc2FnZXMuaW4KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5Lm1lc3NhZ2VzLmluCShyZXZpc2lvbiA3
NDg5NikKKysrIFdlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgkod29y
a2luZyBjb3B5KQpAQCAtMzgsNiArMzgsNyBAQCBtZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgewog
ICAgIFNldFRvb2xUaXAoV1RGOjpTdHJpbmcgdG9vbFRpcCkKICAgICBUYWtlRm9jdXMoYm9vbCBk
aXJlY3Rpb24pCiAgICAgRm9jdXNlZEZyYW1lQ2hhbmdlZCh1aW50NjRfdCBmcmFtZUlEKQorICAg
IEZyYW1lU2V0TGFyZ2VzdEZyYW1lQ2hhbmdlZCh1aW50NjRfdCBmcmFtZUlEKQogICAgIFNldFRv
b2xiYXJzQXJlVmlzaWJsZShib29sIHRvb2xiYXJzQXJlVmlzaWJsZSkKICAgICBHZXRUb29sYmFy
c0FyZVZpc2libGUoKSAtPiAoYm9vbCB0b29sYmFyc0FyZVZpc2libGUpCiAgICAgU2V0TWVudUJh
cklzVmlzaWJsZShib29sIG1lbnVCYXJJc1Zpc2libGUpOwpJbmRleDogV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAJKHJldmlz
aW9uIDc0ODk2KQorKysgV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU5LDYgKzU5LDMyIEBAIHVzaW5nIG5hbWVz
cGFjZSBIVE1MTmFtZXM7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCitzdGF0aWMgZG91YmxlIGFy
ZWEoV2ViRnJhbWUqIGZyYW1lKQoreworICAgIEludFNpemUgc2l6ZSA9IGZyYW1lLT5zaXplKCk7
CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PGRvdWJsZT4oc2l6ZS5oZWlnaHQoKSkgKiBzaXplLndp
ZHRoKCk7Cit9CisKKworc3RhdGljIFdlYkZyYW1lKiBmaW5kTGFyZ2VzdEZyYW1lSW5GcmFtZVNl
dChXZWJQYWdlKiBwYWdlKQoreworICAgIFdlYkZyYW1lKiBtYWluRnJhbWUgPSBwYWdlLT5tYWlu
RnJhbWUoKTsKKyAgICBpZiAoIW1haW5GcmFtZS0+aXNGcmFtZVNldCgpKQorICAgICAgICByZXR1
cm4gMDsKKworICAgIFdlYkZyYW1lKiBsYXJnZXN0U29GYXIgPSAwOworCisgICAgUmVmUHRyPElt
bXV0YWJsZUFycmF5PiBmcmFtZUNoaWxkcmVuID0gbWFpbkZyYW1lLT5jaGlsZEZyYW1lcygpOwor
ICAgIHNpemVfdCBjb3VudCA9IGZyYW1lQ2hpbGRyZW4tPnNpemUoKTsKKyAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IGNvdW50OyArK2kpIHsKKyAgICAgICAgV2ViRnJhbWUqIGNoaWxkRnJhbWUg
PSBmcmFtZUNoaWxkcmVuLT5hdDxXZWJGcmFtZT4oaSk7CisgICAgICAgIGlmICghbGFyZ2VzdFNv
RmFyIHx8IGFyZWEoY2hpbGRGcmFtZSkgPiBhcmVhKGxhcmdlc3RTb0ZhcikpCisgICAgICAgICAg
ICBsYXJnZXN0U29GYXIgPSBjaGlsZEZyYW1lOworICAgIH0KKworICAgIHJldHVybiBsYXJnZXN0
U29GYXI7Cit9CisKIHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpjaHJvbWVEZXN0cm95ZWQoKQogewog
ICAgIGRlbGV0ZSB0aGlzOwpAQCAtMzg0LDYgKzQxMCwxMiBAQCB2b2lkIFdlYkNocm9tZUNsaWVu
dDo6Y29udGVudHNTaXplQ2hhbmdlCiAKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBh
Z2VQcm94eTo6RGlkQ2hhbmdlQ29udGVudHNTaXplKHNpemUpKTsKICNlbmRpZgorCisgICAgV2Vi
RnJhbWUqIGxhcmdlc3RGcmFtZSA9IGZpbmRMYXJnZXN0RnJhbWVJbkZyYW1lU2V0KG1fcGFnZSk7
CisgICAgaWYgKGxhcmdlc3RGcmFtZSAhPSBtX2NhY2hlZEZyYW1lU2V0TGFyZ2VzdEZyYW1lLmdl
dCgpKSB7CisgICAgICAgIG1fY2FjaGVkRnJhbWVTZXRMYXJnZXN0RnJhbWUgPSBsYXJnZXN0RnJh
bWU7CisgICAgICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLmNvbm5lY3Rpb24oKS0+c2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpGcmFtZVNldExhcmdlc3RGcmFtZUNoYW5nZWQobGFyZ2VzdEZy
YW1lID8gbGFyZ2VzdEZyYW1lLT5mcmFtZUlEKCkgOiAwKSwgbV9wYWdlLT5wYWdlSUQoKSk7Cisg
ICAgfQogfQogCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6c2Nyb2xsUmVjdEludG9WaWV3KGNvbnN0
IEludFJlY3QmLCBjb25zdCBTY3JvbGxWaWV3KikgY29uc3QKSW5kZXg6IFdlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJL
aXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgJKHJldmlzaW9u
IDc0ODk2KQorKysgV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNs
aWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw2ICszMyw3IEBACiAKIG5hbWVzcGFjZSBXZWJL
aXQgewogCitjbGFzcyBXZWJGcmFtZTsKIGNsYXNzIFdlYlBhZ2U7CiAKIGNsYXNzIFdlYkNocm9t
ZUNsaWVudCA6IHB1YmxpYyBXZWJDb3JlOjpDaHJvbWVDbGllbnQgewpAQCAtMjAyLDYgKzIwMyw3
IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoVmlld3BvcnREYXRhRGlkQ2hh
bmdlKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXJndW1lbnRzJikgY29uc3Q7CiAKICAgICBTdHJp
bmcgbV9jYWNoZWRUb29sVGlwOworICAgIG11dGFibGUgUmVmUHRyPFdlYkZyYW1lPiBtX2NhY2hl
ZEZyYW1lU2V0TGFyZ2VzdEZyYW1lOwogICAgIFdlYlBhZ2UqIG1fcGFnZTsKIH07CiAKSW5kZXg6
IFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5jcHAJKHJldmlzaW9uIDc0ODk2KQor
KysgV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC00MSw2ICs0MSw3IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9DaHJvbWUuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL0RvY3VtZW50TG9hZGVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9GcmFtZS5oPgor
I2luY2x1ZGUgPFdlYkNvcmUvRnJhbWVWaWV3Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9IVE1MRnJh
bWVPd25lckVsZW1lbnQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0pTQ1NTU3R5bGVEZWNsYXJhdGlv
bi5oPgogI2luY2x1ZGUgPFdlYkNvcmUvSlNFbGVtZW50Lmg+CkBAIC0yODcsNiArMjg4LDE4IEBA
IFN0cmluZyBXZWJGcmFtZTo6c2VsZWN0aW9uQXNTdHJpbmcoKSBjb24KICAgICByZXR1cm4gbV9j
b3JlRnJhbWUtPmRpc3BsYXlTdHJpbmdNb2RpZmllZEJ5RW5jb2RpbmcobV9jb3JlRnJhbWUtPmVk
aXRvcigpLT5zZWxlY3RlZFRleHQoKSk7CiB9CiAKK0ludFNpemUgV2ViRnJhbWU6OnNpemUoKSBj
b25zdAoreworICAgIGlmICghbV9jb3JlRnJhbWUpCisgICAgICAgIHJldHVybiBJbnRTaXplKCk7
CisKKyAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IG1fY29yZUZyYW1lLT52aWV3KCk7CisgICAg
aWYgKCFmcmFtZVZpZXcpCisgICAgICAgIHJldHVybiBJbnRTaXplKCk7CisKKyAgICByZXR1cm4g
ZnJhbWVWaWV3LT5jb250ZW50c1NpemUoKTsKK30KKwogYm9vbCBXZWJGcmFtZTo6aXNGcmFtZVNl
dCgpIGNvbnN0CiB7CiAgICAgaWYgKCFtX2NvcmVGcmFtZSkKSW5kZXg6IFdlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViRnJhbWUuaAkocmV2aXNpb24gNzQ4OTYpCisrKyBXZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJGcmFtZS5oCSh3b3JraW5nIGNvcHkpCkBAIC03NywxMSArNzcsMTQgQEAg
cHVibGljOgogICAgIFN0cmluZyBjb250ZW50c0FzU3RyaW5nKCkgY29uc3Q7CiAgICAgU3RyaW5n
IHNlbGVjdGlvbkFzU3RyaW5nKCkgY29uc3Q7CiAKKyAgICBXZWJDb3JlOjpJbnRTaXplIHNpemUo
KSBjb25zdDsKKwogICAgIC8vIFdLQnVuZGxlRnJhbWUgQVBJIGFuZCBTUEkgZnVuY3Rpb25zCiAg
ICAgYm9vbCBpc01haW5GcmFtZSgpIGNvbnN0OwogICAgIFN0cmluZyBuYW1lKCkgY29uc3Q7CiAg
ICAgU3RyaW5nIHVybCgpIGNvbnN0OwogICAgIFN0cmluZyBpbm5lclRleHQoKSBjb25zdDsKKyAg
ICBib29sIGlzRnJhbWVTZXQoKSBjb25zdDsKICAgICBQYXNzUmVmUHRyPEltbXV0YWJsZUFycmF5
PiBjaGlsZEZyYW1lcygpOwogICAgIEpTVmFsdWVSZWYgY29tcHV0ZWRTdHlsZUluY2x1ZGluZ1Zp
c2l0ZWRJbmZvKEpTT2JqZWN0UmVmIGVsZW1lbnQpOwogICAgIEpTR2xvYmFsQ29udGV4dFJlZiBq
c0NvbnRleHQoKTsKQEAgLTEyMiw4ICsxMjUsNiBAQCBwcml2YXRlOgogCiAgICAgdmlydHVhbCBU
eXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiBBUElUeXBlOyB9CiAKLSAgICBib29sIGlzRnJhbWVT
ZXQoKSBjb25zdDsKLQogICAgIFdlYkNvcmU6OkZyYW1lKiBtX2NvcmVGcmFtZTsKIAogICAgIHVp
bnQ2NF90IG1fcG9saWN5TGlzdGVuZXJJRDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>