<?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>128839</bug_id>
          
          <creation_ts>2014-02-14 13:19:20 -0800</creation_ts>
          <short_desc>Add WKBackForwardListDidChangeNotification</short_desc>
          <delta_ts>2014-02-14 14:04:48 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>mitz</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>980945</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-02-14 13:19:20 -0800</bug_when>
    <thetext>Add WKBackForwardListDidChangeNotification</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>980946</commentid>
    <comment_count>1</comment_count>
      <attachid>224248</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-02-14 13:20:32 -0800</bug_when>
    <thetext>Created attachment 224248
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>980950</commentid>
    <comment_count>2</comment_count>
      <attachid>224248</attachid>
    <who name="">mitz</who>
    <bug_when>2014-02-14 13:29:15 -0800</bug_when>
    <thetext>Comment on attachment 224248
Patch

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

&gt; Source/WebKit2/UIProcess/API/Cocoa/WKBackForwardList.mm:36
&gt; +WK_EXPORT NSString * const WKBackForwardListDidChangeNotification = @&quot;WKBackForwardListDidChangeNotification&quot;;
&gt; +WK_EXPORT NSString * const WKBackForwardListAddedItemKey = @&quot;WKBackForwardListAddedItemKey&quot;;
&gt; +WK_EXPORT NSString * const WKBackForwardListRemovedItemsKey = @&quot;WKBackForwardListRemovedItemsKey&quot;;

There’s no need to use WK_EXPORT here.

&gt; Source/WebKit2/UIProcess/Cocoa/NavigationState.mm:398
&gt; +    if (addedItem) {
&gt; +        keys.append(WKBackForwardListAddedItemKey);
&gt; +        values.append(wrapper(*addedItem));
&gt; +    }
&gt; +
&gt; +    if (!removedItems.isEmpty()) {
&gt; +        Vector&lt;id&gt; removed;
&gt; +        removed.reserveInitialCapacity(removedItems.size());
&gt; +
&gt; +        for (const auto&amp; removedItem : removedItems)
&gt; +            removed.uncheckedAppend(wrapper(*removedItem));
&gt; +
&gt; +        keys.append(WKBackForwardListRemovedItemsKey);
&gt; +        values.append([NSArray arrayWithObjects:removed.data() count:removed.size()]);
&gt; +    }
&gt; +
&gt; +    auto userInfo = adoptNS([[NSDictionary alloc] initWithObjects:values.data() forKeys:keys.data() count:keys.size()]);

Why take the risk that someone might append to one vector and not the other? Just create an NSMutableDictionary and use setObject:forKey: or the equivalent subscript syntax.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>980966</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-02-14 14:04:48 -0800</bug_when>
    <thetext>Committed r164132: &lt;http://trac.webkit.org/changeset/164132&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>224248</attachid>
            <date>2014-02-14 13:20:32 -0800</date>
            <delta_ts>2014-02-14 13:29:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-128839-20140214132031.patch</filename>
            <type>text/plain</type>
            <size>13980</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTY0MTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZTQxMDU5MTM0MDE5MGMy
Mzk2NDg3NzNkMjM5OWUzYTVlNWFiMTgyYS4uNzk0NjRmMmI1NzFiZjViZTY3MzM5MTcwYzk5ODEw
NzdiM2U1Nzc4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMzIEBACiAyMDE0LTAyLTE0ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgQWRkIFdLQmFja0Zv
cndhcmRMaXN0RGlkQ2hhbmdlTm90aWZpY2F0aW9uIAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI4ODM5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQWxzbywgbWFrZSBMb2FkZXJDbGllbnQ6OmRpZENoYW5n
ZUJhY2tGb3J3YXJkTGlzdCB0YWtlIGEgVmVjdG9yIG9mIFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW1z
CisgICAgICAgIGluc3RlYWQgb2YgYSBwb2ludGVyIHRvIGEgVmVjdG9yIG9mIEFQSTo6T2JqZWN0
cy4KKworICAgICAgICAqIFNoYXJlZC9BUEkvQ29jb2EvV0tGb3VuZGF0aW9uLmg6CisgICAgICAg
ICogVUlQcm9jZXNzL0FQSS9BUElMb2FkZXJDbGllbnQuaDoKKyAgICAgICAgKEFQSTo6TG9hZGVy
Q2xpZW50OjpkaWRDaGFuZ2VCYWNrRm9yd2FyZExpc3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9B
UEkvQy9XS1BhZ2UuY3BwOgorICAgICAgICAoV0tQYWdlU2V0UGFnZUxvYWRlckNsaWVudCk6Cisg
ICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0JhY2tGb3J3YXJkTGlzdC5oOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tCYWNrRm9yd2FyZExpc3QubW06CisgICAgICAgICog
VUlQcm9jZXNzL0NvY29hL05hdmlnYXRpb25TdGF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9D
b2NvYS9OYXZpZ2F0aW9uU3RhdGUubW06CisgICAgICAgIChXZWJLaXQ6Ok5hdmlnYXRpb25TdGF0
ZTo6TG9hZGVyQ2xpZW50OjpkaWRDaGFuZ2VCYWNrRm9yd2FyZExpc3QpOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9XZWJCYWNrRm9yd2FyZExpc3QuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJCYWNr
Rm9yd2FyZExpc3Q6OmFkZEl0ZW0pOgorICAgICAgICAoV2ViS2l0OjpXZWJCYWNrRm9yd2FyZExp
c3Q6OmdvVG9JdGVtKToKKyAgICAgICAgKFdlYktpdDo6V2ViQmFja0ZvcndhcmRMaXN0OjpjbGVh
cik6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlQmFja0ZvcndhcmRMaXN0KToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisKKzIwMTQtMDItMTQgIEFuZGVycyBDYXJsc3NvbiAg
PGFuZGVyc2NhQGFwcGxlLmNvbT4KKwogICAgICAgICBBZGQgLVtXS1dlYlZpZXcgZXN0aW1hdGVk
UHJvZ3Jlc3NdCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMjg4MzAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9Db2NvYS9X
S0ZvdW5kYXRpb24uaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvQ29jb2EvV0tGb3VuZGF0
aW9uLmgKaW5kZXggZjk1ZGM1N2NiNDhkMDY3NjQyOWMxYjM1ZjFlM2YwYjBiYWM5MGQwZC4uMWZh
ZDIzY2NmMTk3ODJmNDExNzQyOWVmZjA1MzI0YTZiNjNhZWZkYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvU2hhcmVkL0FQSS9Db2NvYS9XS0ZvdW5kYXRpb24uaAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvQVBJL0NvY29hL1dLRm91bmRhdGlvbi5oCkBAIC0zNSw0ICszNSwxMCBAQAog
I2VuZGlmCiAjZW5kaWYKIAorI2lmZGVmIF9fY3BsdXNwbHVzCisjZGVmaW5lIFdLX0VYVEVSTiBl
eHRlcm4gIkMiIF9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkgKCJkZWZhdWx0IikpKQorI2Vsc2UK
KyNkZWZpbmUgV0tfRVhURVJOIGV4dGVybiBfX2F0dHJpYnV0ZV9fKCh2aXNpYmlsaXR5ICgiZGVm
YXVsdCIpKSkKKyNlbmRpZgorCiAjZGVmaW5lIFdLX0RFU0lHTkFURURfSU5JVElBTElaRVIKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJTG9hZGVyQ2xpZW50Lmgg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0FQSUxvYWRlckNsaWVudC5oCmluZGV4IGVi
NGE1NTNjOTlkYTUzOTk0ZjlhODZjZmRlZGQ0YWVjNWQ5YTdhM2MuLmQ0YjQwYzBmMDBhZDlmMjJj
MzdiMGFlZmZjZWRhMWY4ZmY2Njc5ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQVBJTG9hZGVyQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9BUElMb2FkZXJDbGllbnQuaApAQCAtODcsNyArODcsNyBAQCBwdWJsaWM6CiAgICAgdmly
dHVhbCB2b2lkIHByb2Nlc3NEaWRCZWNvbWVSZXNwb25zaXZlKFdlYktpdDo6V2ViUGFnZVByb3h5
KikgeyB9CiAgICAgdmlydHVhbCB2b2lkIHByb2Nlc3NEaWRDcmFzaChXZWJLaXQ6OldlYlBhZ2VQ
cm94eSopIHsgfQogCi0gICAgdmlydHVhbCB2b2lkIGRpZENoYW5nZUJhY2tGb3J3YXJkTGlzdChX
ZWJLaXQ6OldlYlBhZ2VQcm94eSosIFdlYktpdDo6V2ViQmFja0ZvcndhcmRMaXN0SXRlbSogYWRk
ZWRJdGVtLCBWZWN0b3I8UmVmUHRyPEFQSTo6T2JqZWN0Pj4qIHJlbW92ZWRJdGVtcykgeyB9Cisg
ICAgdmlydHVhbCB2b2lkIGRpZENoYW5nZUJhY2tGb3J3YXJkTGlzdChXZWJLaXQ6OldlYlBhZ2VQ
cm94eSosIFdlYktpdDo6V2ViQmFja0ZvcndhcmRMaXN0SXRlbSogYWRkZWRJdGVtLCBWZWN0b3I8
UmVmUHRyPFdlYktpdDo6V2ViQmFja0ZvcndhcmRMaXN0SXRlbT4+IHJlbW92ZWRJdGVtcykgeyB9
CiAgICAgdmlydHVhbCB2b2lkIHdpbGxHb1RvQmFja0ZvcndhcmRMaXN0SXRlbShXZWJLaXQ6Oldl
YlBhZ2VQcm94eSosIFdlYktpdDo6V2ViQmFja0ZvcndhcmRMaXN0SXRlbSosIEFQSTo6T2JqZWN0
KikgeyB9CiAKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1BhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAKaW5kZXggZTk3Mjg4N2QxZTk4MGVhZDYzNGE5N2Nk
OWMwMDFkZTIwZjA4OWI1MS4uNzllZDk4MmVhMGJlYjE0YTg1ZTgzM2E4ZTdiZmRjNzI3ODk0MTk4
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUGFnZS5jcHAKQEAgLTg5NSwx
NCArODk1LDIwIEBAIHZvaWQgV0tQYWdlU2V0UGFnZUxvYWRlckNsaWVudChXS1BhZ2VSZWYgcGFn
ZVJlZiwgY29uc3QgV0tQYWdlTG9hZGVyQ2xpZW50QmFzZSoKICAgICAgICAgICAgIG1fY2xpZW50
LnByb2Nlc3NEaWRDcmFzaCh0b0FQSShwYWdlKSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsK
ICAgICAgICAgfQogCi0gICAgICAgIHZpcnR1YWwgdm9pZCBkaWRDaGFuZ2VCYWNrRm9yd2FyZExp
c3QoV2ViUGFnZVByb3h5KiBwYWdlLCBXZWJCYWNrRm9yd2FyZExpc3RJdGVtKiBhZGRlZEl0ZW0s
IFZlY3RvcjxSZWZQdHI8QVBJOjpPYmplY3Q+PiogcmVtb3ZlZEl0ZW1zKSBvdmVycmlkZQorICAg
ICAgICB2aXJ0dWFsIHZvaWQgZGlkQ2hhbmdlQmFja0ZvcndhcmRMaXN0KFdlYlBhZ2VQcm94eSog
cGFnZSwgV2ViQmFja0ZvcndhcmRMaXN0SXRlbSogYWRkZWRJdGVtLCBWZWN0b3I8UmVmUHRyPFdl
YkJhY2tGb3J3YXJkTGlzdEl0ZW0+PiByZW1vdmVkSXRlbXMpIG92ZXJyaWRlCiAgICAgICAgIHsK
ICAgICAgICAgICAgIGlmICghbV9jbGllbnQuZGlkQ2hhbmdlQmFja0ZvcndhcmRMaXN0KQogICAg
ICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICAgICAgUmVmUHRyPEFQSTo6QXJyYXk+IHJl
bW92ZWRJdGVtc0FycmF5OwotICAgICAgICAgICAgaWYgKHJlbW92ZWRJdGVtcyAmJiAhcmVtb3Zl
ZEl0ZW1zLT5pc0VtcHR5KCkpCi0gICAgICAgICAgICAgICAgcmVtb3ZlZEl0ZW1zQXJyYXkgPSBB
UEk6OkFycmF5OjpjcmVhdGUoc3RkOjptb3ZlKCpyZW1vdmVkSXRlbXMpKTsKKyAgICAgICAgICAg
IGlmICghcmVtb3ZlZEl0ZW1zLmlzRW1wdHkoKSkgeworICAgICAgICAgICAgICAgIFZlY3RvcjxS
ZWZQdHI8QVBJOjpPYmplY3Q+PiByZW1vdmVkSXRlbXNWZWN0b3I7CisgICAgICAgICAgICAgICAg
cmVtb3ZlZEl0ZW1zVmVjdG9yLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkocmVtb3ZlZEl0ZW1zLnNp
emUoKSk7CisgICAgICAgICAgICAgICAgZm9yIChhdXRvJiByZW1vdmVkSXRlbSA6IHJlbW92ZWRJ
dGVtcykKKyAgICAgICAgICAgICAgICAgICAgcmVtb3ZlZEl0ZW1zVmVjdG9yLmFwcGVuZChzdGQ6
Om1vdmUocmVtb3ZlZEl0ZW0pKTsKKworICAgICAgICAgICAgICAgIHJlbW92ZWRJdGVtc0FycmF5
ID0gQVBJOjpBcnJheTo6Y3JlYXRlKHN0ZDo6bW92ZShyZW1vdmVkSXRlbXNWZWN0b3IpKTsKKyAg
ICAgICAgICAgIH0KIAogICAgICAgICAgICAgbV9jbGllbnQuZGlkQ2hhbmdlQmFja0ZvcndhcmRM
aXN0KHRvQVBJKHBhZ2UpLCB0b0FQSShhZGRlZEl0ZW0pLCB0b0FQSShyZW1vdmVkSXRlbXNBcnJh
eS5nZXQoKSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7CiAgICAgICAgIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tCYWNrRm9yd2FyZExpc3Qu
aCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tCYWNrRm9yd2FyZExpc3Qu
aAppbmRleCAyYmU3ODJkM2FlMTMwYTgyNzRiOWM2MGJjNjEwYWI1NjIxMzc3NjdlLi5kMTVhMTFi
MDM2M2JmMDcyNmQxMWNkNWIwMzAyYjY4MmEyOGMxMWZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLQmFja0ZvcndhcmRMaXN0LmgKKysrIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0JhY2tGb3J3YXJkTGlzdC5oCkBAIC0yOSw2
ICsyOSwyNiBAQAogCiAjaW1wb3J0IDxXZWJLaXQyL1dLQmFja0ZvcndhcmRMaXN0SXRlbS5oPgog
CisvKiEgUG9zdGVkIHdoZW4gYSBiYWNrLWZvcndhcmQgbGlzdCBjaGFuZ2VzLiBUaGUgbm90aWZp
Y2F0aW9uIG9iamVjdCBpcyB0aGUgV0tCYWNrRm9yd2FyZExpc3QKKyAgICAgICAgdGhhdCBjaGFu
Z2VkLiBUaGUgPGNvZGU+dXNlckluZm88L2NvZGU+IGRpY3Rpb25hcnkgbWF5IGNvbnRhaW4gdGhl
CisgICAgICAgIEBsaW5rIFdLQmFja0ZvcndhcmRMaXN0QWRkZWRJdGVtS2V5IEAvbGluayBhbmQg
QGxpbmsgV0tCYWNrRm9yd2FyZExpc3RSZW1vdmVkSXRlbXNLZXkgQC9saW5rCisgICAgICAgIGtl
eXMuCisqLworV0tfRVhURVJOIE5TU3RyaW5nICogY29uc3QgV0tCYWNrRm9yd2FyZExpc3REaWRD
aGFuZ2VOb3RpZmljYXRpb247CisKKy8qISBBIGtleSBpbiB0aGUgPGNvZGU+dXNlckluZm88L2Nv
ZGU+IGRpY3Rpb25hcnkgb2YgYQorICAgICAgICBAbGluayBXS0JhY2tGb3J3YXJkTGlzdERpZENo
YW5nZU5vdGlmaWNhdGlvbiBAL2xpbmssIHdob3NlIHZhbHVlIGlzIHRoZQorICAgICAgICBAbGlu
ayBXS0JhY2tGb3J3YXJkTGlzdEl0ZW0gQC9saW5rIHRoYXQgd2FzIGFwcGVuZGVkIHRvIHRoZSBs
aXN0LgorKi8KK1dLX0VYVEVSTiBOU1N0cmluZyAqIGNvbnN0IFdLQmFja0ZvcndhcmRMaXN0QWRk
ZWRJdGVtS2V5OworCisKKy8qISBBIGtleSBpbiB0aGUgPGNvZGU+dXNlckluZm88L2NvZGU+IGRp
Y3Rpb25hcnkgb2YgYQorICAgICAgICBAbGluayBXS0JhY2tGb3J3YXJkTGlzdERpZENoYW5nZU5v
dGlmaWNhdGlvbiBAL2xpbmssIHdob3NlIHZhbHVlIGlzIGFuIE5TQXJyYXkgb2YKKyAgICAgICAg
QGxpbmsgV0tCYWNrRm9yd2FyZExpc3RJdGVtQC9saW5rIGluc3RhbmNlcyB0aGF0IHdlcmUgcmVt
b3ZlZCBmcm9tIHRoZSBsaXN0LgorKi8KK1dLX0VYVEVSTiBOU1N0cmluZyAqIGNvbnN0IFdLQmFj
a0ZvcndhcmRMaXN0UmVtb3ZlZEl0ZW1zS2V5OworCiBXS19BUElfQ0xBU1MKIEBpbnRlcmZhY2Ug
V0tCYWNrRm9yd2FyZExpc3QgOiBOU09iamVjdAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLQmFja0ZvcndhcmRMaXN0Lm1tIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0JhY2tGb3J3YXJkTGlzdC5tbQppbmRleCAwNjExNWVk
YjAwZjhkYmY5YWFkMzhhYjEwNTBiN2EyMDAwMTRmODJlLi4wNDJiNzMyNmM3NmM4MGQ0MjlmNGQw
MzY3YWFkMThmZGE0YWVlNzM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLQmFja0ZvcndhcmRMaXN0Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvV0tCYWNrRm9yd2FyZExpc3QubW0KQEAgLTMxLDYgKzMxLDEwIEBACiAj
aW1wb3J0ICJXS0JhY2tGb3J3YXJkTGlzdEl0ZW1JbnRlcm5hbC5oIgogI2ltcG9ydCAiV0tOU0Fy
cmF5LmgiCiAKK1dLX0VYUE9SVCBOU1N0cmluZyAqIGNvbnN0IFdLQmFja0ZvcndhcmRMaXN0RGlk
Q2hhbmdlTm90aWZpY2F0aW9uID0gQCJXS0JhY2tGb3J3YXJkTGlzdERpZENoYW5nZU5vdGlmaWNh
dGlvbiI7CitXS19FWFBPUlQgTlNTdHJpbmcgKiBjb25zdCBXS0JhY2tGb3J3YXJkTGlzdEFkZGVk
SXRlbUtleSA9IEAiV0tCYWNrRm9yd2FyZExpc3RBZGRlZEl0ZW1LZXkiOworV0tfRVhQT1JUIE5T
U3RyaW5nICogY29uc3QgV0tCYWNrRm9yd2FyZExpc3RSZW1vdmVkSXRlbXNLZXkgPSBAIldLQmFj
a0ZvcndhcmRMaXN0UmVtb3ZlZEl0ZW1zS2V5IjsKKwogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsK
IAogQGltcGxlbWVudGF0aW9uIFdLQmFja0ZvcndhcmRMaXN0IHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db2NvYS9OYXZpZ2F0aW9uU3RhdGUuaCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9Db2NvYS9OYXZpZ2F0aW9uU3RhdGUuaAppbmRleCA1MGU2NTRiODZhZTNh
YjU1YzY1MTRmNjczZTdkMzdlYWE5OGMwNzQ4Li5jNWQwMTgzOWFhMjIzMWNiOWZlNjI1MTI4ZmY3
MjVhZGRjZjU0NjMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2Ev
TmF2aWdhdGlvblN0YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL05h
dmlnYXRpb25TdGF0ZS5oCkBAIC04NCw2ICs4NCw3IEBAIHByaXZhdGU6CiAgICAgICAgIHZpcnR1
YWwgdm9pZCBkaWRGaW5pc2hMb2FkRm9yRnJhbWUoV2ViUGFnZVByb3h5KiwgV2ViRnJhbWVQcm94
eSosIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgQVBJOjpPYmplY3QqKSBvdmVycmlkZTsKICAgICAg
ICAgdmlydHVhbCB2b2lkIGRpZEZhaWxMb2FkV2l0aEVycm9yRm9yRnJhbWUoV2ViUGFnZVByb3h5
KiwgV2ViRnJhbWVQcm94eSosIHVpbnQ2NF90IG5hdmlnYXRpb25JRCwgY29uc3QgV2ViQ29yZTo6
UmVzb3VyY2VFcnJvciYsIEFQSTo6T2JqZWN0Kikgb3ZlcnJpZGU7CiAgICAgICAgIHZpcnR1YWwg
dm9pZCBkaWRMYXlvdXQoV2ViS2l0OjpXZWJQYWdlUHJveHkqLCBXZWJDb3JlOjpMYXlvdXRNaWxl
c3RvbmVzLCBBUEk6Ok9iamVjdCopIG92ZXJyaWRlOworICAgICAgICB2aXJ0dWFsIHZvaWQgZGlk
Q2hhbmdlQmFja0ZvcndhcmRMaXN0KFdlYktpdDo6V2ViUGFnZVByb3h5KiwgV2ViS2l0OjpXZWJC
YWNrRm9yd2FyZExpc3RJdGVtKiBhZGRlZEl0ZW0sIFZlY3RvcjxSZWZQdHI8V2ViS2l0OjpXZWJC
YWNrRm9yd2FyZExpc3RJdGVtPj4gcmVtb3ZlZEl0ZW1zKSBvdmVycmlkZTsKIAogICAgICAgICBO
YXZpZ2F0aW9uU3RhdGUmIG1fbmF2aWdhdGlvblN0YXRlOwogICAgIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvTmF2aWdhdGlvblN0YXRlLm1tIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL05hdmlnYXRpb25TdGF0ZS5tbQppbmRleCA1Yjc2MmNh
ODMyMmI3YTg5Y2FmYmZkZTczMGY0MjE1NmI0MWI5YzkxLi5kZjc1OWRhOTA3Yjk5N2Y1ZDIzMTZi
YzRlYWUyN2Q2N2YzZmJlNzVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
Q29jb2EvTmF2aWdhdGlvblN0YXRlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9D
b2NvYS9OYXZpZ2F0aW9uU3RhdGUubW0KQEAgLTMwLDYgKzMwLDggQEAKIAogI2ltcG9ydCAiTmF2
aWdhdGlvbkFjdGlvbkRhdGEuaCIKICNpbXBvcnQgIlBhZ2VMb2FkU3RhdGUuaCIKKyNpbXBvcnQg
IldLQmFja0ZvcndhcmRMaXN0SW50ZXJuYWwuaCIKKyNpbXBvcnQgIldLQmFja0ZvcndhcmRMaXN0
SXRlbUludGVybmFsLmgiCiAjaW1wb3J0ICJXS0ZyYW1lSW5mb0ludGVybmFsLmgiCiAjaW1wb3J0
ICJXS05hdmlnYXRpb25BY3Rpb25JbnRlcm5hbC5oIgogI2ltcG9ydCAiV0tOYXZpZ2F0aW9uRGVs
ZWdhdGVQcml2YXRlLmgiCkBAIC0zNzIsNiArMzc0LDMyIEBAIHZvaWQgTmF2aWdhdGlvblN0YXRl
OjpMb2FkZXJDbGllbnQ6OmRpZExheW91dChXZWJLaXQ6OldlYlBhZ2VQcm94eSosIFdlYkNvcmU6
OkxhCiAgICAgW3N0YXRpY19jYXN0PGlkIDxXS05hdmlnYXRpb25EZWxlZ2F0ZVByaXZhdGU+Pihu
YXZpZ2F0aW9uRGVsZWdhdGUuZ2V0KCkpIF93ZWJWaWV3Om1fbmF2aWdhdGlvblN0YXRlLm1fd2Vi
VmlldyByZW5kZXJpbmdQcm9ncmVzc0RpZENoYW5nZTpyZW5kZXJpbmdQcm9ncmVzc0V2ZW50cyhs
YXlvdXRNaWxlc3RvbmVzKV07CiB9CiAKK3ZvaWQgTmF2aWdhdGlvblN0YXRlOjpMb2FkZXJDbGll
bnQ6OmRpZENoYW5nZUJhY2tGb3J3YXJkTGlzdChXZWJLaXQ6OldlYlBhZ2VQcm94eSosIFdlYktp
dDo6V2ViQmFja0ZvcndhcmRMaXN0SXRlbSogYWRkZWRJdGVtLCBWZWN0b3I8UmVmUHRyPFdlYktp
dDo6V2ViQmFja0ZvcndhcmRMaXN0SXRlbT4+IHJlbW92ZWRJdGVtcykKK3sKKyAgICBWZWN0b3I8
aWQgPE5TQ29weWluZz4+IGtleXM7CisgICAgVmVjdG9yPGlkPiB2YWx1ZXM7CisKKyAgICBpZiAo
YWRkZWRJdGVtKSB7CisgICAgICAgIGtleXMuYXBwZW5kKFdLQmFja0ZvcndhcmRMaXN0QWRkZWRJ
dGVtS2V5KTsKKyAgICAgICAgdmFsdWVzLmFwcGVuZCh3cmFwcGVyKCphZGRlZEl0ZW0pKTsKKyAg
ICB9CisKKyAgICBpZiAoIXJlbW92ZWRJdGVtcy5pc0VtcHR5KCkpIHsKKyAgICAgICAgVmVjdG9y
PGlkPiByZW1vdmVkOworICAgICAgICByZW1vdmVkLnJlc2VydmVJbml0aWFsQ2FwYWNpdHkocmVt
b3ZlZEl0ZW1zLnNpemUoKSk7CisKKyAgICAgICAgZm9yIChjb25zdCBhdXRvJiByZW1vdmVkSXRl
bSA6IHJlbW92ZWRJdGVtcykKKyAgICAgICAgICAgIHJlbW92ZWQudW5jaGVja2VkQXBwZW5kKHdy
YXBwZXIoKnJlbW92ZWRJdGVtKSk7CisKKyAgICAgICAga2V5cy5hcHBlbmQoV0tCYWNrRm9yd2Fy
ZExpc3RSZW1vdmVkSXRlbXNLZXkpOworICAgICAgICB2YWx1ZXMuYXBwZW5kKFtOU0FycmF5IGFy
cmF5V2l0aE9iamVjdHM6cmVtb3ZlZC5kYXRhKCkgY291bnQ6cmVtb3ZlZC5zaXplKCldKTsKKyAg
ICB9CisKKyAgICBhdXRvIHVzZXJJbmZvID0gYWRvcHROUyhbW05TRGljdGlvbmFyeSBhbGxvY10g
aW5pdFdpdGhPYmplY3RzOnZhbHVlcy5kYXRhKCkgZm9yS2V5czprZXlzLmRhdGEoKSBjb3VudDpr
ZXlzLnNpemUoKV0pOworCisgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBkZWZhdWx0Q2VudGVy
XSBwb3N0Tm90aWZpY2F0aW9uTmFtZTpXS0JhY2tGb3J3YXJkTGlzdERpZENoYW5nZU5vdGlmaWNh
dGlvbiBvYmplY3Q6d3JhcHBlcihtX25hdmlnYXRpb25TdGF0ZS5tX3dlYlZpZXctPl9wYWdlLT5i
YWNrRm9yd2FyZExpc3QoKSkgdXNlckluZm86dXNlckluZm8uZ2V0KCldOworfQorCiB2b2lkIE5h
dmlnYXRpb25TdGF0ZTo6d2lsbENoYW5nZUlzTG9hZGluZygpCiB7CiAgICAgW21fd2ViVmlldyB3
aWxsQ2hhbmdlVmFsdWVGb3JLZXk6QCJsb2FkaW5nIl07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViQmFja0ZvcndhcmRMaXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJCYWNrRm9yd2FyZExpc3QuY3BwCmluZGV4IDQxMWVhNTZjNDI5NGJlYTcyZjM2
ZDI3YWEzMjk4NDJlZjg1ZmFlNjIuLjkyOTRjOTZmOGQ4YmRhYmM2OGExNTAyYmY4NjU2N2JkMWQy
NmU4OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJCYWNrRm9yd2Fy
ZExpc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJCYWNrRm9yd2FyZExp
c3QuY3BwCkBAIC03NCw3ICs3NCw3IEBAIHZvaWQgV2ViQmFja0ZvcndhcmRMaXN0OjphZGRJdGVt
KFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW0qIG5ld0l0ZW0pCiAgICAgaWYgKCFtX2NhcGFjaXR5IHx8
ICFuZXdJdGVtIHx8ICFtX3BhZ2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIFZlY3RvcjxSZWZQ
dHI8QVBJOjpPYmplY3Q+PiByZW1vdmVkSXRlbXM7CisgICAgVmVjdG9yPFJlZlB0cjxXZWJCYWNr
Rm9yd2FyZExpc3RJdGVtPj4gcmVtb3ZlZEl0ZW1zOwogICAgIAogICAgIGlmIChtX2hhc0N1cnJl
bnRJbmRleCkgewogICAgICAgICAvLyBUb3NzIGV2ZXJ5dGhpbmcgaW4gdGhlIGZvcndhcmQgbGlz
dC4KQEAgLTEyNyw3ICsxMjcsNyBAQCB2b2lkIFdlYkJhY2tGb3J3YXJkTGlzdDo6YWRkSXRlbShX
ZWJCYWNrRm9yd2FyZExpc3RJdGVtKiBuZXdJdGVtKQogICAgIGlmIChtX2N1cnJlbnRJbmRleCA8
PSBtX2VudHJpZXMuc2l6ZSgpKQogICAgICAgICBtX2VudHJpZXMuaW5zZXJ0KG1fY3VycmVudElu
ZGV4LCBuZXdJdGVtKTsKIAotICAgIG1fcGFnZS0+ZGlkQ2hhbmdlQmFja0ZvcndhcmRMaXN0KG5l
d0l0ZW0sICZyZW1vdmVkSXRlbXMpOworICAgIG1fcGFnZS0+ZGlkQ2hhbmdlQmFja0ZvcndhcmRM
aXN0KG5ld0l0ZW0sIHN0ZDo6bW92ZShyZW1vdmVkSXRlbXMpKTsKIH0KIAogdm9pZCBXZWJCYWNr
Rm9yd2FyZExpc3Q6OmdvVG9JdGVtKFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW0qIGl0ZW0pCkBAIC0x
NDQsNyArMTQ0LDcgQEAgdm9pZCBXZWJCYWNrRm9yd2FyZExpc3Q6OmdvVG9JdGVtKFdlYkJhY2tG
b3J3YXJkTGlzdEl0ZW0qIGl0ZW0pCiAgICAgfQogICAgIGlmIChpbmRleCA8IG1fZW50cmllcy5z
aXplKCkpIHsKICAgICAgICAgbV9jdXJyZW50SW5kZXggPSBpbmRleDsKLSAgICAgICAgbV9wYWdl
LT5kaWRDaGFuZ2VCYWNrRm9yd2FyZExpc3QoMCwgMCk7CisgICAgICAgIG1fcGFnZS0+ZGlkQ2hh
bmdlQmFja0ZvcndhcmRMaXN0KG51bGxwdHIsIHsgfSk7CiAgICAgfQogfQogCkBAIC0yNTcsNyAr
MjU3LDcgQEAgdm9pZCBXZWJCYWNrRm9yd2FyZExpc3Q6OmNsZWFyKCkKICAgICAgICAgcmV0dXJu
OwogCiAgICAgUmVmUHRyPFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW0+IGN1cnJlbnRJdGVtID0gdGhp
cy0+Y3VycmVudEl0ZW0oKTsKLSAgICBWZWN0b3I8UmVmUHRyPEFQSTo6T2JqZWN0Pj4gcmVtb3Zl
ZEl0ZW1zOworICAgIFZlY3RvcjxSZWZQdHI8V2ViQmFja0ZvcndhcmRMaXN0SXRlbT4+IHJlbW92
ZWRJdGVtczsKIAogICAgIGlmICghY3VycmVudEl0ZW0pIHsKICAgICAgICAgLy8gV2Ugc2hvdWxk
IG9ubHkgZXZlciBoYXZlIG5vIGN1cnJlbnQgaXRlbSBpZiB3ZSBhbHNvIGhhdmUgbm8gY3VycmVu
dCBpdGVtIGluZGV4LgpAQCAtMjc1LDcgKzI3NSw3IEBAIHZvaWQgV2ViQmFja0ZvcndhcmRMaXN0
OjpjbGVhcigpCiAKICAgICAgICAgbV9lbnRyaWVzLmNsZWFyKCk7CiAgICAgICAgIG1faGFzQ3Vy
cmVudEluZGV4ID0gZmFsc2U7Ci0gICAgICAgIG1fcGFnZS0+ZGlkQ2hhbmdlQmFja0ZvcndhcmRM
aXN0KDAsICZyZW1vdmVkSXRlbXMpOworICAgICAgICBtX3BhZ2UtPmRpZENoYW5nZUJhY2tGb3J3
YXJkTGlzdChudWxscHRyLCBzdGQ6Om1vdmUocmVtb3ZlZEl0ZW1zKSk7CiAKICAgICAgICAgcmV0
dXJuOwogICAgIH0KQEAgLTMwMiw3ICszMDIsNyBAQCB2b2lkIFdlYkJhY2tGb3J3YXJkTGlzdDo6
Y2xlYXIoKQogICAgICAgICBtX2hhc0N1cnJlbnRJbmRleCA9IGZhbHNlOwogICAgIH0KIAotICAg
IG1fcGFnZS0+ZGlkQ2hhbmdlQmFja0ZvcndhcmRMaXN0KDAsICZyZW1vdmVkSXRlbXMpOworICAg
IG1fcGFnZS0+ZGlkQ2hhbmdlQmFja0ZvcndhcmRMaXN0KG51bGxwdHIsIHN0ZDo6bW92ZShyZW1v
dmVkSXRlbXMpKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IGIwZTBiOTkxNTcwNjg2NjkwMTA5YzI2MTU5
MmFiM2EzOGE3NzZhMGUuLmI3NGQ2NjU1MjgzYTZhYzU4MmYxZGZjZWJmMGQ5Y2ZhYmFlYTc2MWUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC04NTUsOSAr
ODU1LDkgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnRyeVJlc3RvcmVTY3JvbGxQb3NpdGlvbigpCiAg
ICAgbV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpUcnlSZXN0b3JlU2Nyb2xsUG9z
aXRpb24oKSwgbV9wYWdlSUQpOwogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlQmFj
a0ZvcndhcmRMaXN0KFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW0qIGFkZGVkLCBWZWN0b3I8UmVmUHRy
PEFQSTo6T2JqZWN0Pj4qIHJlbW92ZWQpCit2b2lkIFdlYlBhZ2VQcm94eTo6ZGlkQ2hhbmdlQmFj
a0ZvcndhcmRMaXN0KFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW0qIGFkZGVkLCBWZWN0b3I8UmVmUHRy
PFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW0+PiByZW1vdmVkKQogewotICAgIG1fbG9hZGVyQ2xpZW50
LT5kaWRDaGFuZ2VCYWNrRm9yd2FyZExpc3QodGhpcywgYWRkZWQsIHJlbW92ZWQpOworICAgIG1f
bG9hZGVyQ2xpZW50LT5kaWRDaGFuZ2VCYWNrRm9yd2FyZExpc3QodGhpcywgYWRkZWQsIHN0ZDo6
bW92ZShyZW1vdmVkKSk7CiAKICNpZiBQTEFURk9STShNQUMpICYmICFQTEFURk9STShJT1MpCiAg
ICAgbV9wYWdlQ2xpZW50LmNsZWFyQ3VzdG9tU3dpcGVWaWV3cygpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlBhZ2VQcm94eS5oCmluZGV4IDNiOThmZDUzYTBmYzg4ODE5MTM1YTQ3N2JiZTJi
YjAwODRkNTA3ZDQuLmI0MTQyMzE2NzdkOWNkMDBjYmI2ZDA5MTA4NTdhMjk4NjVhNThlYTEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmgKQEAgLTQwOCw3ICs0MDgsNyBA
QCBwdWJsaWM6CiAKICAgICB2b2lkIGdvVG9CYWNrRm9yd2FyZEl0ZW0oV2ViQmFja0ZvcndhcmRM
aXN0SXRlbSopOwogICAgIHZvaWQgdHJ5UmVzdG9yZVNjcm9sbFBvc2l0aW9uKCk7Ci0gICAgdm9p
ZCBkaWRDaGFuZ2VCYWNrRm9yd2FyZExpc3QoV2ViQmFja0ZvcndhcmRMaXN0SXRlbSogYWRkZWRJ
dGVtLCBWZWN0b3I8UmVmUHRyPEFQSTo6T2JqZWN0Pj4qIHJlbW92ZWRJdGVtcyk7CisgICAgdm9p
ZCBkaWRDaGFuZ2VCYWNrRm9yd2FyZExpc3QoV2ViQmFja0ZvcndhcmRMaXN0SXRlbSogYWRkZWRJ
dGVtLCBWZWN0b3I8UmVmUHRyPFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW0+PiByZW1vdmVkKTsKICAg
ICB2b2lkIHdpbGxHb1RvQmFja0ZvcndhcmRMaXN0SXRlbSh1aW50NjRfdCBpdGVtSUQsIElQQzo6
TWVzc2FnZURlY29kZXImKTsKIAogICAgIGJvb2wgd2lsbEhhbmRsZUhvcml6b250YWxTY3JvbGxF
dmVudHMoKSBjb25zdDsK
</data>
<flag name="review"
          id="248328"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>