<?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>37625</bug_id>
          
          <creation_ts>2010-04-14 16:47:31 -0700</creation_ts>
          <short_desc>[Chromium] Add some notifications and an accessor to WebKit API</short_desc>
          <delta_ts>2010-04-27 18:21:47 -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>WebKit API</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="Jens Alfke">jens</reporter>
          <assigned_to name="Jens Alfke">jens</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>levin</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>212656</commentid>
    <comment_count>0</comment_count>
    <who name="Jens Alfke">jens</who>
    <bug_when>2010-04-14 16:47:31 -0700</bug_when>
    <thetext>For some work I&apos;m doing on Chromium* I need to add a few methods to the WebKit API to expose WebCore functionality:

1. WebElement::isVisible — tells whether a DOM element is visible (defined as &apos;has a layout with a non-empty bounding box&apos;).
2. WebFrame::didFirstLayout and WebFrame::didFirstVisuallyNonEmptyLayout — these are equivalent to the FrameLoaderClient methods of the same names.

* http://code.google.com/p/chromium/issues/detail?id=777</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212911</commentid>
    <comment_count>1</comment_count>
      <attachid>53447</attachid>
    <who name="Jens Alfke">jens</who>
    <bug_when>2010-04-15 10:22:25 -0700</bug_when>
    <thetext>Created attachment 53447
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>212916</commentid>
    <comment_count>2</comment_count>
    <who name="Jens Alfke">jens</who>
    <bug_when>2010-04-15 10:28:30 -0700</bug_when>
    <thetext>I actually linked to the wrong Chromium bug, below. The correct one is
&quot;Password manager heuristics fail for sites that keep the login form around after signin&quot;
http://code.google.com/p/chromium/issues/detail?id=28911</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216096</commentid>
    <comment_count>3</comment_count>
      <attachid>53447</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-04-22 14:47:29 -0700</bug_when>
    <thetext>Comment on attachment 53447
Patch

WebKit/chromium/src/WebElement.cpp:76
 +  // Note: This method only works properly after layout has occurred.
This comment would be helpful in the public header file.

WebKit/chromium/src/WebElement.cpp:79
 +      // (Copied from HTMLAnchorElement::isKeyboardFocusable)
It seems rather unfortunate to duplicate this code.  Can it be shared somehow?

WebKit/chromium/public/WebFrameClient.h:198
 +      // The frame&apos;s document finished the initial layout of a page.
This would probably be better in the &quot;Geometry notifications&quot; section instead of the &quot;Navigational notifications&quot; section.

WebKit/chromium/public/WebElement.h:60
 +          WEBKIT_API bool isVisible() const;
how about naming this method hasNonEmptyBoundingBox?  that way the method name is self documenting and more accurate.  if a consumer wants to use that to test visibility, then the fact that it is not a 100% guarantee is an issue for the user instead of a problem with the implementation of this method.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216531</commentid>
    <comment_count>4</comment_count>
      <attachid>54186</attachid>
    <who name="Jens Alfke">jens</who>
    <bug_when>2010-04-23 13:13:34 -0700</bug_when>
    <thetext>Created attachment 54186
patch, after initial feedback

OK, I have moved the hasNonEmptyBoundingBox method up to Node, and made the other changes you suggested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>217777</commentid>
    <comment_count>5</comment_count>
    <who name="Jens Alfke">jens</who>
    <bug_when>2010-04-27 10:39:27 -0700</bug_when>
    <thetext>The Chromium patch (fix for 28911) that&apos;s depending on this is now approved, and waiting on this patch to get checked in and downstreamed to Chromium first.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>217786</commentid>
    <comment_count>6</comment_count>
      <attachid>54186</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-04-27 10:51:58 -0700</bug_when>
    <thetext>Comment on attachment 54186
patch, after initial feedback

R=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218100</commentid>
    <comment_count>7</comment_count>
      <attachid>54186</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-04-27 17:55:17 -0700</bug_when>
    <thetext>Comment on attachment 54186
patch, after initial feedback

Clearing flags on attachment: 54186

Committed r58362: &lt;http://trac.webkit.org/changeset/58362&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218101</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-04-27 17:55:23 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218117</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-04-27 18:21:47 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/58362 might have broken Qt Linux Release</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53447</attachid>
            <date>2010-04-15 10:22:25 -0700</date>
            <delta_ts>2010-04-23 13:13:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>textmate stdin 2sWRTS.txt</filename>
            <type>text/plain</type>
            <size>3834</size>
            <attacher name="Jens Alfke">jens</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRWxlbWVudC5oIGIvV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJFbGVtZW50LmgKaW5kZXggMWJlNDBiYy4uMjI0YTMxZCAxMDA2
NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJFbGVtZW50LmgKKysrIGIvV2ViS2l0
L2Nocm9taXVtL3B1YmxpYy9XZWJFbGVtZW50LmgKQEAgLTU1LDYgKzU1LDEwIEBAIG5hbWVzcGFj
ZSBXZWJLaXQgewogICAgICAgICBXRUJLSVRfQVBJIGJvb2wgc2V0QXR0cmlidXRlKGNvbnN0IFdl
YlN0cmluZyYgbmFtZSwgY29uc3QgV2ViU3RyaW5nJiB2YWx1ZSk7CiAgICAgICAgIFdFQktJVF9B
UEkgV2ViU3RyaW5nIGlubmVyVGV4dCgpIGNvbnN0OwogCisgICAgICAgIC8vIFJldHVybnMgdHJ1
ZSBpZiB0aGUgZWxlbWVudCBoYXMgYSBub24tZW1wdHkgYm91bmRpbmcgYm94IGluIGxheW91dC4K
KyAgICAgICAgLy8gVGhpcyBkb2VzIG5vdCAxMDAlIGd1YXJhbnRlZSB0aGUgdXNlciBjYW4gc2Vl
IGl0LCBidXQgaXMgcHJldHR5IGNsb3NlLgorICAgICAgICBXRUJLSVRfQVBJIGJvb2wgaXNWaXNp
YmxlKCkgY29uc3Q7CisKICNpZiBXRUJLSVRfSU1QTEVNRU5UQVRJT04KICAgICAgICAgV2ViRWxl
bWVudChjb25zdCBXVEY6OlBhc3NSZWZQdHI8V2ViQ29yZTo6RWxlbWVudD4mKTsKICAgICAgICAg
V2ViRWxlbWVudCYgb3BlcmF0b3I9KGNvbnN0IFdURjo6UGFzc1JlZlB0cjxXZWJDb3JlOjpFbGVt
ZW50PiYpOwpkaWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZUNsaWVu
dC5oIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZUNsaWVudC5oCmluZGV4IDMxNWNm
ODcuLmRhN2VmNzQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRnJhbWVD
bGllbnQuaAorKysgYi9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lQ2xpZW50LmgKQEAg
LTE5NSw2ICsxOTUsMTIgQEAgcHVibGljOgogICAgIC8vIFRoZSBmcmFtZSdzIGRvY3VtZW50IGZp
bmlzaGVkIGxvYWRpbmcuCiAgICAgdmlydHVhbCB2b2lkIGRpZEZpbmlzaERvY3VtZW50TG9hZChX
ZWJGcmFtZSopIHsgfQogCisgICAgLy8gVGhlIGZyYW1lJ3MgZG9jdW1lbnQgZmluaXNoZWQgdGhl
IGluaXRpYWwgbGF5b3V0IG9mIGEgcGFnZS4KKyAgICB2aXJ0dWFsIHZvaWQgZGlkRmlyc3RMYXlv
dXQoV2ViRnJhbWUqKSB7IH0KKworICAgIC8vIFRoZSBmcmFtZSdzIGRvY3VtZW50IGZpbmlzaGVk
IHRoZSBpbml0aWFsIG5vbi1lbXB0eSBsYXlvdXQgb2YgYSBwYWdlLgorICAgIHZpcnR1YWwgdm9p
ZCBkaWRGaXJzdFZpc3VhbGx5Tm9uRW1wdHlMYXlvdXQoV2ViRnJhbWUqKSB7IH0KKwogICAgIC8v
IFRoZSAnbG9hZCcgZXZlbnQgd2FzIGRpc3BhdGNoZWQuCiAgICAgdmlydHVhbCB2b2lkIGRpZEhh
bmRsZU9ubG9hZEV2ZW50cyhXZWJGcmFtZSopIHsgfQogCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hy
b21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAgYi9XZWJLaXQvY2hyb21pdW0vc3Jj
L0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKaW5kZXggY2VjZmJiMy4uZDNlYTc1NCAxMDA2NDQK
LS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwCisrKyBi
L1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNwcApAQCAtNzg4LDEy
ICs3ODgsMTQgQEAgdm9pZCBGcmFtZUxvYWRlckNsaWVudEltcGw6OmRpc3BhdGNoRGlkRmluaXNo
TG9hZCgpCiAKIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRJbXBsOjpkaXNwYXRjaERpZEZpcnN0TGF5
b3V0KCkKIHsKKyAgICBpZiAobV93ZWJGcmFtZS0+Y2xpZW50KCkpCisgICAgICAgIG1fd2ViRnJh
bWUtPmNsaWVudCgpLT5kaWRGaXJzdExheW91dChtX3dlYkZyYW1lKTsKIH0KIAogdm9pZCBGcmFt
ZUxvYWRlckNsaWVudEltcGw6OmRpc3BhdGNoRGlkRmlyc3RWaXN1YWxseU5vbkVtcHR5TGF5b3V0
KCkKIHsKLSAgICAvLyBGSVhNRTogY2FsbGVkIHdoZW4gd2Via2l0IGZpbmlzaGVkIGxheW91dCBv
ZiBhIHBhZ2UgdGhhdCB3YXMgdmlzdWFsbHkgbm9uLWVtcHR5LgotICAgIC8vIEFsbCByZXNvdXJj
ZXMgaGF2ZSBub3QgbmVjZXNzYXJpbHkgZmluaXNoZWQgbG9hZGluZy4KKyAgICBpZiAobV93ZWJG
cmFtZS0+Y2xpZW50KCkpCisgICAgICAgIG1fd2ViRnJhbWUtPmNsaWVudCgpLT5kaWRGaXJzdFZp
c3VhbGx5Tm9uRW1wdHlMYXlvdXQobV93ZWJGcmFtZSk7CiB9CiAKIEZyYW1lKiBGcmFtZUxvYWRl
ckNsaWVudEltcGw6OmRpc3BhdGNoQ3JlYXRlUGFnZSgpCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYkVsZW1lbnQuY3BwIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJFbGVtZW50
LmNwcAppbmRleCAzZWQxNmU2Li5jMjZjNzMxIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYkVsZW1lbnQuY3BwCisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRWxlbWVudC5j
cHAKQEAgLTMyLDYgKzMyLDggQEAKICNpbmNsdWRlICJXZWJFbGVtZW50LmgiCiAKICNpbmNsdWRl
ICJFbGVtZW50LmgiCisjaW5jbHVkZSAiUmVuZGVyQm94TW9kZWxPYmplY3QuaCIKKyNpbmNsdWRl
ICJSZW5kZXJPYmplY3QuaCIKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogCiB1c2luZyBu
YW1lc3BhY2UgV2ViQ29yZTsKQEAgLTcxLDYgKzczLDMxIEBAIGJvb2wgV2ViRWxlbWVudDo6c2V0
QXR0cmlidXRlKGNvbnN0IFdlYlN0cmluZyYgYXR0ck5hbWUsIGNvbnN0IFdlYlN0cmluZyYgYXR0
clZhCiAgICAgcmV0dXJuICFleGNlcHRpb25Db2RlOwogfQogCisvLyBOb3RlOiBUaGlzIG1ldGhv
ZCBvbmx5IHdvcmtzIHByb3Blcmx5IGFmdGVyIGxheW91dCBoYXMgb2NjdXJyZWQuCitib29sIFdl
YkVsZW1lbnQ6OmlzVmlzaWJsZSgpIGNvbnN0Cit7CisgICAgLy8gKENvcGllZCBmcm9tIEhUTUxB
bmNob3JFbGVtZW50Ojppc0tleWJvYXJkRm9jdXNhYmxlKQorICAgIFJlbmRlck9iamVjdCogcmVu
ZGVyZXIgPSBjb25zdFVud3JhcDxFbGVtZW50PigpLT5yZW5kZXJlcigpOworICAgIGlmICghcmVu
ZGVyZXIgfHwgIXJlbmRlcmVyLT5pc0JveE1vZGVsT2JqZWN0KCkpCisgICAgICAgIHJldHVybiBm
YWxzZTsKKworICAgIC8vIEJlZm9yZSBjYWxsaW5nIGFic29sdXRlUmVjdHMsIGNoZWNrIGZvciB0
aGUgY29tbW9uIGNhc2Ugd2hlcmUgdGhlIHJlbmRlcmVyCisgICAgLy8gaXMgbm9uLWVtcHR5LCBz
aW5jZSB0aGlzIGlzIGEgZmFzdGVyIGNoZWNrIGFuZCBhbG1vc3QgYWx3YXlzIHJldHVybnMgdHJ1
ZS4KKyAgICBSZW5kZXJCb3hNb2RlbE9iamVjdCogYm94ID0gdG9SZW5kZXJCb3hNb2RlbE9iamVj
dChyZW5kZXJlcik7CisgICAgaWYgKCFib3gtPmJvcmRlckJvdW5kaW5nQm94KCkuaXNFbXB0eSgp
KQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFZlY3RvcjxJbnRSZWN0PiByZWN0czsKKyAg
ICBGbG9hdFBvaW50IGFic1BvcyA9IHJlbmRlcmVyLT5sb2NhbFRvQWJzb2x1dGUoKTsKKyAgICBy
ZW5kZXJlci0+YWJzb2x1dGVSZWN0cyhyZWN0cywgYWJzUG9zLngoKSwgYWJzUG9zLnkoKSk7Cisg
ICAgc2l6ZV90IG4gPSByZWN0cy5zaXplKCk7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBu
OyArK2kpCisgICAgICAgIGlmICghcmVjdHNbaV0uaXNFbXB0eSgpKQorICAgICAgICAgICAgcmV0
dXJuIHRydWU7CisKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKIFdlYlN0cmluZyBXZWJFbGVtZW50
Ojppbm5lclRleHQoKSBjb25zdAogewogICAgIHJldHVybiBjb25zdFVud3JhcDxFbGVtZW50Pigp
LT5pbm5lclRleHQoKTsK
</data>
<flag name="review"
          id="37186"
          type_id="1"
          status="-"
          setter="fishd"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54186</attachid>
            <date>2010-04-23 13:13:34 -0700</date>
            <delta_ts>2010-04-27 17:55:17 -0700</delta_ts>
            <desc>patch, after initial feedback</desc>
            <filename>textmate stdin i3uIoF.txt</filename>
            <type>text/plain</type>
            <size>7676</size>
            <attacher name="Jens Alfke">jens</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
OTcwMGZmZS4uOWM5ZDAwYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMC0wNC0yMyAgSmVucyBBbGZrZSAg
PHNuZWpAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFtDaHJvbWl1bV0gQWRkIHNvbWUgbm90aWZpY2F0aW9ucyBhbmQgYW4gYWNj
ZXNzb3IgdG8gV2ViS2l0IEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9Mzc2MjUKKworICAgICAgICAqIGRvbS9Ob2RlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Ok5vZGU6Omhhc05vbkVtcHR5Qm91bmRpbmdCb3gpOiBOZXcgbWV0aG9kLgorICAgICAg
ICAqIGRvbS9Ob2RlLmg6CisgICAgICAgICogaHRtbC9IVE1MQW5jaG9yRWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MQW5jaG9yRWxlbWVudDo6aXNLZXlib2FyZEZvY3VzYWJsZSk6
IE1vdmVkIHBhcnQgb2YgbWV0aG9kIGludG8gbmV3IE5vZGUgbWV0aG9kCisKIDIwMDktMDQtMjEg
IENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9kb20vTm9kZS5j
cHAgYi9XZWJDb3JlL2RvbS9Ob2RlLmNwcAppbmRleCBhZWFiMjdkLi5mZDgxZGNlIDEwMDY0NAot
LS0gYS9XZWJDb3JlL2RvbS9Ob2RlLmNwcAorKysgYi9XZWJDb3JlL2RvbS9Ob2RlLmNwcApAQCAt
NzYyLDYgKzc2MiwyNyBAQCBJbnRSZWN0IE5vZGU6OmdldFJlY3QoKSBjb25zdAogICAgIHJldHVy
biBJbnRSZWN0KCk7CiB9CiAKK2Jvb2wgTm9kZTo6aGFzTm9uRW1wdHlCb3VuZGluZ0JveCgpIGNv
bnN0Cit7CisgICAgLy8gQmVmb3JlIGNhbGxpbmcgYWJzb2x1dGVSZWN0cywgY2hlY2sgZm9yIHRo
ZSBjb21tb24gY2FzZSB3aGVyZSB0aGUgcmVuZGVyZXIKKyAgICAvLyBpcyBub24tZW1wdHksIHNp
bmNlIHRoaXMgaXMgYSBmYXN0ZXIgY2hlY2sgYW5kIGFsbW9zdCBhbHdheXMgcmV0dXJucyB0cnVl
LgorICAgIFJlbmRlckJveE1vZGVsT2JqZWN0KiBib3ggPSByZW5kZXJCb3hNb2RlbE9iamVjdCgp
OworICAgIGlmICghYm94KQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFib3gtPmJv
cmRlckJvdW5kaW5nQm94KCkuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAg
IFZlY3RvcjxJbnRSZWN0PiByZWN0czsKKyAgICBGbG9hdFBvaW50IGFic1BvcyA9IHJlbmRlcmVy
KCktPmxvY2FsVG9BYnNvbHV0ZSgpOworICAgIHJlbmRlcmVyKCktPmFic29sdXRlUmVjdHMocmVj
dHMsIGFic1Bvcy54KCksIGFic1Bvcy55KCkpOworICAgIHNpemVfdCBuID0gcmVjdHMuc2l6ZSgp
OworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbjsgKytpKQorICAgICAgICBpZiAoIXJlY3Rz
W2ldLmlzRW1wdHkoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworCisgICAgcmV0dXJuIGZh
bHNlOworfQorCiB2b2lkIE5vZGU6OnNldE5lZWRzU3R5bGVSZWNhbGMoU3R5bGVDaGFuZ2VUeXBl
IGNoYW5nZVR5cGUpCiB7CiAgICAgaWYgKChjaGFuZ2VUeXBlICE9IE5vU3R5bGVDaGFuZ2UpICYm
ICFhdHRhY2hlZCgpKSAvLyBjaGFuZ2VkIGNvbXBhcmVkIHRvIHdoYXQ/CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2RvbS9Ob2RlLmggYi9XZWJDb3JlL2RvbS9Ob2RlLmgKaW5kZXggN2M3ZjRkMS4uNzVk
YzlkYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vTm9kZS5oCisrKyBiL1dlYkNvcmUvZG9tL05v
ZGUuaApAQCAtMzExLDYgKzMxMSwxMSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIHNob3Vs
ZFVzZUlucHV0TWV0aG9kKCkgY29uc3Q7CiAgICAgdmlydHVhbCBJbnRSZWN0IGdldFJlY3QoKSBj
b25zdDsKIAorICAgIC8vIFJldHVybnMgdHJ1ZSBpZiB0aGUgbm9kZSBoYXMgYSBub24tZW1wdHkg
Ym91bmRpbmcgYm94IGluIGxheW91dC4KKyAgICAvLyBUaGlzIGRvZXMgbm90IDEwMCUgZ3VhcmFu
dGVlIHRoZSB1c2VyIGNhbiBzZWUgaXQsIGJ1dCBpcyBwcmV0dHkgY2xvc2UuCisgICAgLy8gTm90
ZTogVGhpcyBtZXRob2Qgb25seSB3b3JrcyBwcm9wZXJseSBhZnRlciBsYXlvdXQgaGFzIG9jY3Vy
cmVkLgorICAgIGJvb2wgaGFzTm9uRW1wdHlCb3VuZGluZ0JveCgpIGNvbnN0OworCiAgICAgdmly
dHVhbCB2b2lkIHJlY2FsY1N0eWxlKFN0eWxlQ2hhbmdlID0gTm9DaGFuZ2UpIHsgfQogCiAgICAg
dW5zaWduZWQgbm9kZUluZGV4KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRN
TEFuY2hvckVsZW1lbnQuY3BwIGIvV2ViQ29yZS9odG1sL0hUTUxBbmNob3JFbGVtZW50LmNwcApp
bmRleCBmNjM2MDIwLi4yMjNmNzMxIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTEFuY2hv
ckVsZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MQW5jaG9yRWxlbWVudC5jcHAKQEAg
LTEwMiwyNCArMTAyLDcgQEAgYm9vbCBIVE1MQW5jaG9yRWxlbWVudDo6aXNLZXlib2FyZEZvY3Vz
YWJsZShLZXlib2FyZEV2ZW50KiBldmVudCkgY29uc3QKICAgICBpZiAoIWRvY3VtZW50KCktPmZy
YW1lKCktPmV2ZW50SGFuZGxlcigpLT50YWJzVG9MaW5rcyhldmVudCkpCiAgICAgICAgIHJldHVy
biBmYWxzZTsKIAotICAgIGlmICghcmVuZGVyZXIoKSB8fCAhcmVuZGVyZXIoKS0+aXNCb3hNb2Rl
bE9iamVjdCgpKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgCi0gICAgLy8gQmVmb3JlIGNh
bGxpbmcgYWJzb2x1dGVSZWN0cywgY2hlY2sgZm9yIHRoZSBjb21tb24gY2FzZSB3aGVyZSB0aGUg
cmVuZGVyZXIKLSAgICAvLyBpcyBub24tZW1wdHksIHNpbmNlIHRoaXMgaXMgYSBmYXN0ZXIgY2hl
Y2sgYW5kIGFsbW9zdCBhbHdheXMgcmV0dXJucyB0cnVlLgotICAgIFJlbmRlckJveE1vZGVsT2Jq
ZWN0KiBib3ggPSB0b1JlbmRlckJveE1vZGVsT2JqZWN0KHJlbmRlcmVyKCkpOwotICAgIGlmICgh
Ym94LT5ib3JkZXJCb3VuZGluZ0JveCgpLmlzRW1wdHkoKSkKLSAgICAgICAgcmV0dXJuIHRydWU7
Ci0KLSAgICBWZWN0b3I8SW50UmVjdD4gcmVjdHM7Ci0gICAgRmxvYXRQb2ludCBhYnNQb3MgPSBy
ZW5kZXJlcigpLT5sb2NhbFRvQWJzb2x1dGUoKTsKLSAgICByZW5kZXJlcigpLT5hYnNvbHV0ZVJl
Y3RzKHJlY3RzLCBhYnNQb3MueCgpLCBhYnNQb3MueSgpKTsKLSAgICBzaXplX3QgbiA9IHJlY3Rz
LnNpemUoKTsKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG47ICsraSkKLSAgICAgICAgaWYg
KCFyZWN0c1tpXS5pc0VtcHR5KCkpCi0gICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLQotICAgIHJl
dHVybiBmYWxzZTsKKyAgICByZXR1cm4gaGFzTm9uRW1wdHlCb3VuZGluZ0JveCgpOwogfQogCiB2
b2lkIEhUTUxBbmNob3JFbGVtZW50OjpkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KiBldnQpCmRp
ZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvV2ViS2l0L2Nocm9taXVtL0No
YW5nZUxvZwppbmRleCBlZDQzZmZmLi5hOTI5YzAyIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCisrKyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwy
MSBAQAorMjAxMC0wNC0yMyAgSmVucyBBbGZrZSAgPHNuZWpAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtDaHJvbWl1bV0gQWRk
IHNvbWUgbm90aWZpY2F0aW9ucyBhbmQgYW4gYWNjZXNzb3IgdG8gV2ViS2l0IEFQSQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mzc2MjUKKworICAgICAg
ICAqIHB1YmxpYy9XZWJGcmFtZUNsaWVudC5oOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUNs
aWVudDo6ZGlkRmlyc3RMYXlvdXQpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUNsaWVudDo6
ZGlkRmlyc3RWaXN1YWxseU5vbkVtcHR5TGF5b3V0KToKKyAgICAgICAgKiBwdWJsaWMvV2ViTm9k
ZS5oOgorICAgICAgICAqIHNyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwOgorICAgICAgICAo
V2ViS2l0OjpGcmFtZUxvYWRlckNsaWVudEltcGw6OmRpc3BhdGNoRGlkRmlyc3RMYXlvdXQpOgor
ICAgICAgICAoV2ViS2l0OjpGcmFtZUxvYWRlckNsaWVudEltcGw6OmRpc3BhdGNoRGlkRmlyc3RW
aXN1YWxseU5vbkVtcHR5TGF5b3V0KToKKyAgICAgICAgKiBzcmMvV2ViRWxlbWVudC5jcHA6Cisg
ICAgICAgICogc3JjL1dlYk5vZGUuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJOb2RlOjpoYXNO
b25FbXB0eUJvdW5kaW5nQm94KToKKwogMjAxMC0wNC0yMSAgU2hlcmlmZiBCb3QgIDx3ZWJraXQu
cmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQg
cjU4MDI4LgpkaWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZUNsaWVu
dC5oIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZUNsaWVudC5oCmluZGV4IDMxNWNm
ODcuLmZhZThlZjEgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRnJhbWVD
bGllbnQuaAorKysgYi9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lQ2xpZW50LmgKQEAg
LTI5Miw2ICsyOTIsMTIgQEAgcHVibGljOgogCiAgICAgLy8gR2VvbWV0cnkgbm90aWZpY2F0aW9u
cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKKyAgICAv
LyBUaGUgZnJhbWUncyBkb2N1bWVudCBmaW5pc2hlZCB0aGUgaW5pdGlhbCBsYXlvdXQgb2YgYSBw
YWdlLgorICAgIHZpcnR1YWwgdm9pZCBkaWRGaXJzdExheW91dChXZWJGcmFtZSopIHsgfQorCisg
ICAgLy8gVGhlIGZyYW1lJ3MgZG9jdW1lbnQgZmluaXNoZWQgdGhlIGluaXRpYWwgbm9uLWVtcHR5
IGxheW91dCBvZiBhIHBhZ2UuCisgICAgdmlydHVhbCB2b2lkIGRpZEZpcnN0VmlzdWFsbHlOb25F
bXB0eUxheW91dChXZWJGcmFtZSopIHsgfQorCiAgICAgLy8gVGhlIHNpemUgb2YgdGhlIGNvbnRl
bnQgYXJlYSBjaGFuZ2VkLgogICAgIHZpcnR1YWwgdm9pZCBkaWRDaGFuZ2VDb250ZW50c1NpemUo
V2ViRnJhbWUqLCBjb25zdCBXZWJTaXplJikgeyB9CiAKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViTm9kZS5oIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJOb2RlLmgK
aW5kZXggNWE4N2RhMC4uNzkyZWRlNSAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3B1Ymxp
Yy9XZWJOb2RlLmgKKysrIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJOb2RlLmgKQEAgLTEw
MSw2ICsxMDEsMTEgQEAgcHVibGljOgogICAgIFdFQktJVF9BUEkgdm9pZCBzaW11bGF0ZUNsaWNr
KCk7CiAgICAgV0VCS0lUX0FQSSBXZWJOb2RlTGlzdCBnZXRFbGVtZW50c0J5VGFnTmFtZShjb25z
dCBXZWJTdHJpbmcmKSBjb25zdDsKIAorICAgIC8vIFJldHVybnMgdHJ1ZSBpZiB0aGUgbm9kZSBo
YXMgYSBub24tZW1wdHkgYm91bmRpbmcgYm94IGluIGxheW91dC4KKyAgICAvLyBUaGlzIGRvZXMg
bm90IDEwMCUgZ3VhcmFudGVlIHRoZSB1c2VyIGNhbiBzZWUgaXQsIGJ1dCBpcyBwcmV0dHkgY2xv
c2UuCisgICAgLy8gTm90ZTogVGhpcyBtZXRob2Qgb25seSB3b3JrcyBwcm9wZXJseSBhZnRlciBs
YXlvdXQgaGFzIG9jY3VycmVkLgorICAgIFdFQktJVF9BUEkgYm9vbCBoYXNOb25FbXB0eUJvdW5k
aW5nQm94KCkgY29uc3Q7CisKICAgICAvLyBEZXByZWNhdGVkLiBVc2UgdG8oKSBpbnN0ZWFkLgog
ICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+IFQgdG9FbGVtZW50KCkKICAgICB7CmRpZmYgLS1naXQg
YS9XZWJLaXQvY2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAgYi9XZWJLaXQv
Y2hyb21pdW0vc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5jcHAKaW5kZXggMTM1MzkyYi4uMzBj
ZmM1OCAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9GcmFtZUxvYWRlckNsaWVudElt
cGwuY3BwCisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvRnJhbWVMb2FkZXJDbGllbnRJbXBsLmNw
cApAQCAtNzg4LDEyICs3ODgsMTQgQEAgdm9pZCBGcmFtZUxvYWRlckNsaWVudEltcGw6OmRpc3Bh
dGNoRGlkRmluaXNoTG9hZCgpCiAKIHZvaWQgRnJhbWVMb2FkZXJDbGllbnRJbXBsOjpkaXNwYXRj
aERpZEZpcnN0TGF5b3V0KCkKIHsKKyAgICBpZiAobV93ZWJGcmFtZS0+Y2xpZW50KCkpCisgICAg
ICAgIG1fd2ViRnJhbWUtPmNsaWVudCgpLT5kaWRGaXJzdExheW91dChtX3dlYkZyYW1lKTsKIH0K
IAogdm9pZCBGcmFtZUxvYWRlckNsaWVudEltcGw6OmRpc3BhdGNoRGlkRmlyc3RWaXN1YWxseU5v
bkVtcHR5TGF5b3V0KCkKIHsKLSAgICAvLyBGSVhNRTogY2FsbGVkIHdoZW4gd2Via2l0IGZpbmlz
aGVkIGxheW91dCBvZiBhIHBhZ2UgdGhhdCB3YXMgdmlzdWFsbHkgbm9uLWVtcHR5LgotICAgIC8v
IEFsbCByZXNvdXJjZXMgaGF2ZSBub3QgbmVjZXNzYXJpbHkgZmluaXNoZWQgbG9hZGluZy4KKyAg
ICBpZiAobV93ZWJGcmFtZS0+Y2xpZW50KCkpCisgICAgICAgIG1fd2ViRnJhbWUtPmNsaWVudCgp
LT5kaWRGaXJzdFZpc3VhbGx5Tm9uRW1wdHlMYXlvdXQobV93ZWJGcmFtZSk7CiB9CiAKIEZyYW1l
KiBGcmFtZUxvYWRlckNsaWVudEltcGw6OmRpc3BhdGNoQ3JlYXRlUGFnZSgpCmRpZmYgLS1naXQg
YS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkVsZW1lbnQuY3BwIGIvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJFbGVtZW50LmNwcAppbmRleCAzZWQxNmU2Li4yNWEzOTZlIDEwMDY0NAotLS0gYS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYkVsZW1lbnQuY3BwCisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViRWxlbWVudC5jcHAKQEAgLTMyLDYgKzMyLDggQEAKICNpbmNsdWRlICJXZWJFbGVtZW50Lmgi
CiAKICNpbmNsdWRlICJFbGVtZW50LmgiCisjaW5jbHVkZSAiUmVuZGVyQm94TW9kZWxPYmplY3Qu
aCIKKyNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5o
PgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViTm9kZS5jcHAgYi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYk5vZGUuY3BwCmluZGV4
IGUwNTBjNzkuLjkwYmJiMzQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViTm9k
ZS5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJOb2RlLmNwcApAQCAtMTc4LDYgKzE3
OCwxMSBAQCBXZWJOb2RlTGlzdCBXZWJOb2RlOjpnZXRFbGVtZW50c0J5VGFnTmFtZShjb25zdCBX
ZWJTdHJpbmcmIHRhZykgY29uc3QKICAgICByZXR1cm4gV2ViTm9kZUxpc3QobV9wcml2YXRlLT5n
ZXRFbGVtZW50c0J5VGFnTmFtZSh0YWcpKTsKIH0KIAorYm9vbCBXZWJOb2RlOjpoYXNOb25FbXB0
eUJvdW5kaW5nQm94KCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9wcml2YXRlLT5oYXNOb25FbXB0
eUJvdW5kaW5nQm94KCk7Cit9CisKIFdlYk5vZGU6OldlYk5vZGUoY29uc3QgUGFzc1JlZlB0cjxO
b2RlPiYgbm9kZSkKICAgICA6IG1fcHJpdmF0ZShub2RlKQogewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>