<?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>121450</bug_id>
          
          <creation_ts>2013-09-16 13:10:57 -0700</creation_ts>
          <short_desc>MessageQueue should use a Deque of OwnPtrs</short_desc>
          <delta_ts>2013-09-16 14:08:55 -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>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>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>kangil.han</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>929890</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-16 13:10:57 -0700</bug_when>
    <thetext>MessageQueue should use a Deque of OwnPtrs</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>929905</commentid>
    <comment_count>1</comment_count>
      <attachid>211828</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-16 13:46:47 -0700</bug_when>
    <thetext>Created attachment 211828
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>929911</commentid>
    <comment_count>2</comment_count>
      <attachid>211828</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-09-16 14:02:01 -0700</bug_when>
    <thetext>Comment on attachment 211828
Patch

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

&gt; Source/WTF/wtf/MessageQueue.h:197
&gt; +        // FIXME: I think the predicate here should really take a const DataType&amp;
&gt; +        // instead of a const OwnPtr&lt;DataType&gt;&amp;.

I agree with this FIXME. Yikes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>929915</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-16 14:08:55 -0700</bug_when>
    <thetext>Committed r155900: &lt;http://trac.webkit.org/changeset/155900&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>211828</attachid>
            <date>2013-09-16 13:46:47 -0700</date>
            <delta_ts>2013-09-16 14:02:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-121450-20130916134646.patch</filename>
            <type>text/plain</type>
            <size>11221</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU1ODk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDgwMDc3YzdjMWJkNzRhNTk4ZGVmMWI4
ODcxZjliOTQyY2FlMjJmZWEuLjRhYWRiZDYzYjUzMjM4ZjFlZDNmY2M3YTY3Y2VjNzIzZGFkODI3
N2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDUgKzEsMTQgQEAKIDIwMTMtMDktMTYgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KIAorICAgICAgICBNZXNzYWdlUXVldWUgc2hvdWxkIHVzZSBhIERl
cXVlIG9mIE93blB0cnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEyMTQ1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogd3RmL01lc3NhZ2VRdWV1ZS5oOgorCisyMDEzLTA5LTE2ICBBbmRlcnMgQ2FybHNz
b24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKICAgICAgICAgV1RGOjpEZXF1ZSBzaG91bGQgd29y
ayB3aXRoIG1vdmUgb25seSB0eXBlcwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTIxNDQ2CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmNTM0YThkMWQzYmNlYTQzODI4
OTEwOTZkYThiNzczNGI0ZWVkOWRlLi4wNjA0ZWJjOGY2MmRjOTU4NDU3YzZiZGRmOGNjMzVkZDBi
ODc5MzQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTMtMDktMTYgIEFuZGVycyBD
YXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBNZXNzYWdlUXVldWUgc2hv
dWxkIHVzZSBhIERlcXVlIG9mIE93blB0cnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyMTQ1MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRocmVhZC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTYW1lRGF0YWJhc2VQcmVkaWNhdGU6Om9wZXJhdG9yKCkp
OgorICAgICAgICAqIGRvbS9kZWZhdWx0L1BsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVsLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbDo6TWVzc2FnZVBvcnRR
dWV1ZTo6dHJ5R2V0TWVzc2FnZSk6CisgICAgICAgICogZmlsZWFwaS9GaWxlVGhyZWFkLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlNhbWVJbnN0YW5jZVByZWRpY2F0ZTo6b3BlcmF0b3IoKSk6Cisg
ICAgICAgICogd29ya2Vycy9Xb3JrZXJSdW5Mb29wLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1v
ZGVQcmVkaWNhdGU6Om9wZXJhdG9yKCkpOgorCiAyMDEzLTA5LTE2ICBBbmRyZWFzIEtsaW5nICA8
YWtsaW5nQGFwcGxlLmNvbT4KIAogICAgICAgICBDVFRFOiBGcmFtZVRyZWU6OnRvcCgpIHNob3Vs
ZCByZXR1cm4gYSByZWZlcmVuY2UuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9NZXNzYWdl
UXVldWUuaCBiL1NvdXJjZS9XVEYvd3RmL01lc3NhZ2VRdWV1ZS5oCmluZGV4IDRmMTlhZWQ1MGQx
ZGI3Mzg4MGE1Y2FkMWRhYzAyZDM3ZDdjZDc4MTguLjYzYTU2MTUyMjE3NDk0NTJhYzZhMzUzMGY4
NzFjNjRjZDk0NmRhYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL01lc3NhZ2VRdWV1ZS5o
CisrKyBiL1NvdXJjZS9XVEYvd3RmL01lc3NhZ2VRdWV1ZS5oCkBAIC01NCwxNiArNTQsMTYgQEAg
bmFtZXNwYWNlIFdURiB7CiAgICAgICAgIE1lc3NhZ2VRdWV1ZSgpIDogbV9raWxsZWQoZmFsc2Up
IHsgfQogICAgICAgICB+TWVzc2FnZVF1ZXVlKCk7CiAKLSAgICAgICAgdm9pZCBhcHBlbmQoUGFz
c093blB0cjxEYXRhVHlwZT4pOwotICAgICAgICB2b2lkIGFwcGVuZEFuZEtpbGwoUGFzc093blB0
cjxEYXRhVHlwZT4pOwotICAgICAgICBib29sIGFwcGVuZEFuZENoZWNrRW1wdHkoUGFzc093blB0
cjxEYXRhVHlwZT4pOwotICAgICAgICB2b2lkIHByZXBlbmQoUGFzc093blB0cjxEYXRhVHlwZT4p
OwotCi0gICAgICAgIFBhc3NPd25QdHI8RGF0YVR5cGU+IHdhaXRGb3JNZXNzYWdlKCk7Ci0gICAg
ICAgIFBhc3NPd25QdHI8RGF0YVR5cGU+IHRyeUdldE1lc3NhZ2UoKTsKLSAgICAgICAgUGFzc093
blB0cjxEYXRhVHlwZT4gdHJ5R2V0TWVzc2FnZUlnbm9yaW5nS2lsbGVkKCk7CisgICAgICAgIHZv
aWQgYXBwZW5kKE93blB0cjxEYXRhVHlwZT4pOworICAgICAgICB2b2lkIGFwcGVuZEFuZEtpbGwo
T3duUHRyPERhdGFUeXBlPik7CisgICAgICAgIGJvb2wgYXBwZW5kQW5kQ2hlY2tFbXB0eShPd25Q
dHI8RGF0YVR5cGU+KTsKKyAgICAgICAgdm9pZCBwcmVwZW5kKE93blB0cjxEYXRhVHlwZT4pOwor
CisgICAgICAgIE93blB0cjxEYXRhVHlwZT4gd2FpdEZvck1lc3NhZ2UoKTsKKyAgICAgICAgT3du
UHRyPERhdGFUeXBlPiB0cnlHZXRNZXNzYWdlKCk7CisgICAgICAgIE93blB0cjxEYXRhVHlwZT4g
dHJ5R2V0TWVzc2FnZUlnbm9yaW5nS2lsbGVkKCk7CiAgICAgICAgIHRlbXBsYXRlPHR5cGVuYW1l
IFByZWRpY2F0ZT4KLSAgICAgICAgUGFzc093blB0cjxEYXRhVHlwZT4gd2FpdEZvck1lc3NhZ2VG
aWx0ZXJlZFdpdGhUaW1lb3V0KE1lc3NhZ2VRdWV1ZVdhaXRSZXN1bHQmLCBQcmVkaWNhdGUmLCBk
b3VibGUgYWJzb2x1dGVUaW1lKTsKKyAgICAgICAgT3duUHRyPERhdGFUeXBlPiB3YWl0Rm9yTWVz
c2FnZUZpbHRlcmVkV2l0aFRpbWVvdXQoTWVzc2FnZVF1ZXVlV2FpdFJlc3VsdCYsIFByZWRpY2F0
ZSYsIGRvdWJsZSBhYnNvbHV0ZVRpbWUpOwogCiAgICAgICAgIHRlbXBsYXRlPHR5cGVuYW1lIFBy
ZWRpY2F0ZT4KICAgICAgICAgdm9pZCByZW1vdmVJZihQcmVkaWNhdGUmKTsKQEAgLTc3LDczICs3
Nyw3MiBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgc3RhdGljIGRvdWJsZSBpbmZpbml0ZVRp
bWUoKSB7IHJldHVybiBzdGQ6Om51bWVyaWNfbGltaXRzPGRvdWJsZT46Om1heCgpOyB9CiAKICAg
ICBwcml2YXRlOgotICAgICAgICBzdGF0aWMgYm9vbCBhbHdheXNUcnVlUHJlZGljYXRlKERhdGFU
eXBlKikgeyByZXR1cm4gdHJ1ZTsgfQorICAgICAgICBzdGF0aWMgYm9vbCBhbHdheXNUcnVlUHJl
ZGljYXRlKGNvbnN0IE93blB0cjxEYXRhVHlwZT4mKSB7IHJldHVybiB0cnVlOyB9CiAKICAgICAg
ICAgbXV0YWJsZSBNdXRleCBtX211dGV4OwogICAgICAgICBUaHJlYWRDb25kaXRpb24gbV9jb25k
aXRpb247Ci0gICAgICAgIERlcXVlPERhdGFUeXBlKj4gbV9xdWV1ZTsKKyAgICAgICAgRGVxdWU8
T3duUHRyPERhdGFUeXBlPj4gbV9xdWV1ZTsKICAgICAgICAgYm9vbCBtX2tpbGxlZDsKICAgICB9
OwogCiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgRGF0YVR5cGU+CiAgICAgTWVzc2FnZVF1ZXVlPERh
dGFUeXBlPjo6fk1lc3NhZ2VRdWV1ZSgpCiAgICAgewotICAgICAgICBkZWxldGVBbGxWYWx1ZXMo
bV9xdWV1ZSk7CiAgICAgfQogCiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgRGF0YVR5cGU+Ci0gICAg
aW5saW5lIHZvaWQgTWVzc2FnZVF1ZXVlPERhdGFUeXBlPjo6YXBwZW5kKFBhc3NPd25QdHI8RGF0
YVR5cGU+IG1lc3NhZ2UpCisgICAgaW5saW5lIHZvaWQgTWVzc2FnZVF1ZXVlPERhdGFUeXBlPjo6
YXBwZW5kKE93blB0cjxEYXRhVHlwZT4gbWVzc2FnZSkKICAgICB7CiAgICAgICAgIE11dGV4TG9j
a2VyIGxvY2sobV9tdXRleCk7Ci0gICAgICAgIG1fcXVldWUuYXBwZW5kKG1lc3NhZ2UubGVha1B0
cigpKTsKKyAgICAgICAgbV9xdWV1ZS5hcHBlbmQoc3RkOjptb3ZlKG1lc3NhZ2UpKTsKICAgICAg
ICAgbV9jb25kaXRpb24uc2lnbmFsKCk7CiAgICAgfQogCiAgICAgdGVtcGxhdGU8dHlwZW5hbWUg
RGF0YVR5cGU+Ci0gICAgaW5saW5lIHZvaWQgTWVzc2FnZVF1ZXVlPERhdGFUeXBlPjo6YXBwZW5k
QW5kS2lsbChQYXNzT3duUHRyPERhdGFUeXBlPiBtZXNzYWdlKQorICAgIGlubGluZSB2b2lkIE1l
c3NhZ2VRdWV1ZTxEYXRhVHlwZT46OmFwcGVuZEFuZEtpbGwoT3duUHRyPERhdGFUeXBlPiBtZXNz
YWdlKQogICAgIHsKICAgICAgICAgTXV0ZXhMb2NrZXIgbG9jayhtX211dGV4KTsKLSAgICAgICAg
bV9xdWV1ZS5hcHBlbmQobWVzc2FnZS5sZWFrUHRyKCkpOworICAgICAgICBtX3F1ZXVlLmFwcGVu
ZChzdGQ6Om1vdmUobWVzc2FnZSkpOwogICAgICAgICBtX2tpbGxlZCA9IHRydWU7CiAgICAgICAg
IG1fY29uZGl0aW9uLmJyb2FkY2FzdCgpOwogICAgIH0KIAogICAgIC8vIFJldHVybnMgdHJ1ZSBp
ZiB0aGUgcXVldWUgd2FzIGVtcHR5IGJlZm9yZSB0aGUgaXRlbSB3YXMgYWRkZWQuCiAgICAgdGVt
cGxhdGU8dHlwZW5hbWUgRGF0YVR5cGU+Ci0gICAgaW5saW5lIGJvb2wgTWVzc2FnZVF1ZXVlPERh
dGFUeXBlPjo6YXBwZW5kQW5kQ2hlY2tFbXB0eShQYXNzT3duUHRyPERhdGFUeXBlPiBtZXNzYWdl
KQorICAgIGlubGluZSBib29sIE1lc3NhZ2VRdWV1ZTxEYXRhVHlwZT46OmFwcGVuZEFuZENoZWNr
RW1wdHkoT3duUHRyPERhdGFUeXBlPiBtZXNzYWdlKQogICAgIHsKICAgICAgICAgTXV0ZXhMb2Nr
ZXIgbG9jayhtX211dGV4KTsKICAgICAgICAgYm9vbCB3YXNFbXB0eSA9IG1fcXVldWUuaXNFbXB0
eSgpOwotICAgICAgICBtX3F1ZXVlLmFwcGVuZChtZXNzYWdlLmxlYWtQdHIoKSk7CisgICAgICAg
IG1fcXVldWUuYXBwZW5kKHN0ZDo6bW92ZShtZXNzYWdlKSk7CiAgICAgICAgIG1fY29uZGl0aW9u
LnNpZ25hbCgpOwogICAgICAgICByZXR1cm4gd2FzRW1wdHk7CiAgICAgfQogCiAgICAgdGVtcGxh
dGU8dHlwZW5hbWUgRGF0YVR5cGU+Ci0gICAgaW5saW5lIHZvaWQgTWVzc2FnZVF1ZXVlPERhdGFU
eXBlPjo6cHJlcGVuZChQYXNzT3duUHRyPERhdGFUeXBlPiBtZXNzYWdlKQorICAgIGlubGluZSB2
b2lkIE1lc3NhZ2VRdWV1ZTxEYXRhVHlwZT46OnByZXBlbmQoT3duUHRyPERhdGFUeXBlPiBtZXNz
YWdlKQogICAgIHsKICAgICAgICAgTXV0ZXhMb2NrZXIgbG9jayhtX211dGV4KTsKLSAgICAgICAg
bV9xdWV1ZS5wcmVwZW5kKG1lc3NhZ2UubGVha1B0cigpKTsKKyAgICAgICAgbV9xdWV1ZS5wcmVw
ZW5kKHN0ZDo6bW92ZShtZXNzYWdlKSk7CiAgICAgICAgIG1fY29uZGl0aW9uLnNpZ25hbCgpOwog
ICAgIH0KIAogICAgIHRlbXBsYXRlPHR5cGVuYW1lIERhdGFUeXBlPgotICAgIGlubGluZSBQYXNz
T3duUHRyPERhdGFUeXBlPiBNZXNzYWdlUXVldWU8RGF0YVR5cGU+Ojp3YWl0Rm9yTWVzc2FnZSgp
CisgICAgaW5saW5lIGF1dG8gTWVzc2FnZVF1ZXVlPERhdGFUeXBlPjo6d2FpdEZvck1lc3NhZ2Uo
KSAtPiBPd25QdHI8RGF0YVR5cGU+CiAgICAgewogICAgICAgICBNZXNzYWdlUXVldWVXYWl0UmVz
dWx0IGV4aXRSZWFzb247IAogICAgICAgICBPd25QdHI8RGF0YVR5cGU+IHJlc3VsdCA9IHdhaXRG
b3JNZXNzYWdlRmlsdGVyZWRXaXRoVGltZW91dChleGl0UmVhc29uLCBNZXNzYWdlUXVldWU8RGF0
YVR5cGU+OjphbHdheXNUcnVlUHJlZGljYXRlLCBpbmZpbml0ZVRpbWUoKSk7CiAgICAgICAgIEFT
U0VSVChleGl0UmVhc29uID09IE1lc3NhZ2VRdWV1ZVRlcm1pbmF0ZWQgfHwgZXhpdFJlYXNvbiA9
PSBNZXNzYWdlUXVldWVNZXNzYWdlUmVjZWl2ZWQpOwotICAgICAgICByZXR1cm4gcmVzdWx0LnJl
bGVhc2UoKTsKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CiAKICAgICB0ZW1wbGF0ZTx0
eXBlbmFtZSBEYXRhVHlwZT4KICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBQcmVkaWNhdGU+Ci0gICAg
aW5saW5lIFBhc3NPd25QdHI8RGF0YVR5cGU+IE1lc3NhZ2VRdWV1ZTxEYXRhVHlwZT46OndhaXRG
b3JNZXNzYWdlRmlsdGVyZWRXaXRoVGltZW91dChNZXNzYWdlUXVldWVXYWl0UmVzdWx0JiByZXN1
bHQsIFByZWRpY2F0ZSYgcHJlZGljYXRlLCBkb3VibGUgYWJzb2x1dGVUaW1lKQorICAgIGlubGlu
ZSBhdXRvIE1lc3NhZ2VRdWV1ZTxEYXRhVHlwZT46OndhaXRGb3JNZXNzYWdlRmlsdGVyZWRXaXRo
VGltZW91dChNZXNzYWdlUXVldWVXYWl0UmVzdWx0JiByZXN1bHQsIFByZWRpY2F0ZSYgcHJlZGlj
YXRlLCBkb3VibGUgYWJzb2x1dGVUaW1lKSAtPiBPd25QdHI8RGF0YVR5cGU+CiAgICAgewogICAg
ICAgICBNdXRleExvY2tlciBsb2NrKG1fbXV0ZXgpOwogICAgICAgICBib29sIHRpbWVkT3V0ID0g
ZmFsc2U7CiAKLSAgICAgICAgRGVxdWVDb25zdEl0ZXJhdG9yPERhdGFUeXBlKj4gZm91bmQgPSBt
X3F1ZXVlLmVuZCgpOworICAgICAgICBhdXRvIGZvdW5kID0gbV9xdWV1ZS5lbmQoKTsKICAgICAg
ICAgd2hpbGUgKCFtX2tpbGxlZCAmJiAhdGltZWRPdXQgJiYgKGZvdW5kID0gbV9xdWV1ZS5maW5k
SWYocHJlZGljYXRlKSkgPT0gbV9xdWV1ZS5lbmQoKSkKICAgICAgICAgICAgIHRpbWVkT3V0ID0g
IW1fY29uZGl0aW9uLnRpbWVkV2FpdChtX211dGV4LCBhYnNvbHV0ZVRpbWUpOwogCkBAIC0xNjAs
MTQgKzE1OSwxNCBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAgICAgfQogCiAgICAgICAgIEFTU0VS
VChmb3VuZCAhPSBtX3F1ZXVlLmVuZCgpKTsKLSAgICAgICAgT3duUHRyPERhdGFUeXBlPiBtZXNz
YWdlID0gYWRvcHRQdHIoKmZvdW5kKTsKKyAgICAgICAgT3duUHRyPERhdGFUeXBlPiBtZXNzYWdl
ID0gc3RkOjptb3ZlKCpmb3VuZCk7CiAgICAgICAgIG1fcXVldWUucmVtb3ZlKGZvdW5kKTsKICAg
ICAgICAgcmVzdWx0ID0gTWVzc2FnZVF1ZXVlTWVzc2FnZVJlY2VpdmVkOwotICAgICAgICByZXR1
cm4gbWVzc2FnZS5yZWxlYXNlKCk7CisgICAgICAgIHJldHVybiBtZXNzYWdlOwogICAgIH0KIAog
ICAgIHRlbXBsYXRlPHR5cGVuYW1lIERhdGFUeXBlPgotICAgIGlubGluZSBQYXNzT3duUHRyPERh
dGFUeXBlPiBNZXNzYWdlUXVldWU8RGF0YVR5cGU+Ojp0cnlHZXRNZXNzYWdlKCkKKyAgICBpbmxp
bmUgYXV0byBNZXNzYWdlUXVldWU8RGF0YVR5cGU+Ojp0cnlHZXRNZXNzYWdlKCkgLT4gT3duUHRy
PERhdGFUeXBlPgogICAgIHsKICAgICAgICAgTXV0ZXhMb2NrZXIgbG9jayhtX211dGV4KTsKICAg
ICAgICAgaWYgKG1fa2lsbGVkKQpAQCAtMTc1LDE3ICsxNzQsMTcgQEAgbmFtZXNwYWNlIFdURiB7
CiAgICAgICAgIGlmIChtX3F1ZXVlLmlzRW1wdHkoKSkKICAgICAgICAgICAgIHJldHVybiBudWxs
cHRyOwogCi0gICAgICAgIHJldHVybiBhZG9wdFB0cihtX3F1ZXVlLnRha2VGaXJzdCgpKTsKKyAg
ICAgICAgcmV0dXJuIG1fcXVldWUudGFrZUZpcnN0KCk7CiAgICAgfQogCiAgICAgdGVtcGxhdGU8
dHlwZW5hbWUgRGF0YVR5cGU+Ci0gICAgaW5saW5lIFBhc3NPd25QdHI8RGF0YVR5cGU+IE1lc3Nh
Z2VRdWV1ZTxEYXRhVHlwZT46OnRyeUdldE1lc3NhZ2VJZ25vcmluZ0tpbGxlZCgpCisgICAgaW5s
aW5lIGF1dG8gTWVzc2FnZVF1ZXVlPERhdGFUeXBlPjo6dHJ5R2V0TWVzc2FnZUlnbm9yaW5nS2ls
bGVkKCkgLT4gT3duUHRyPERhdGFUeXBlPgogICAgIHsKICAgICAgICAgTXV0ZXhMb2NrZXIgbG9j
ayhtX211dGV4KTsKICAgICAgICAgaWYgKG1fcXVldWUuaXNFbXB0eSgpKQogICAgICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAKLSAgICAgICAgcmV0dXJuIGFkb3B0UHRyKG1fcXVldWUudGFrZUZp
cnN0KCkpOworICAgICAgICByZXR1cm4gbV9xdWV1ZS50YWtlRmlyc3QoKTsKICAgICB9CiAKICAg
ICB0ZW1wbGF0ZTx0eXBlbmFtZSBEYXRhVHlwZT4KQEAgLTE5MywxMSArMTkyLDEyIEBAIG5hbWVz
cGFjZSBXVEYgewogICAgIGlubGluZSB2b2lkIE1lc3NhZ2VRdWV1ZTxEYXRhVHlwZT46OnJlbW92
ZUlmKFByZWRpY2F0ZSYgcHJlZGljYXRlKQogICAgIHsKICAgICAgICAgTXV0ZXhMb2NrZXIgbG9j
ayhtX211dGV4KTsKLSAgICAgICAgRGVxdWVDb25zdEl0ZXJhdG9yPERhdGFUeXBlKj4gZm91bmQg
PSBtX3F1ZXVlLmVuZCgpOworICAgICAgICBhdXRvIGZvdW5kID0gbV9xdWV1ZS5lbmQoKTsKKyAg
ICAgICAgLy8gRklYTUU6IEkgdGhpbmsgdGhlIHByZWRpY2F0ZSBoZXJlIHNob3VsZCByZWFsbHkg
dGFrZSBhIGNvbnN0IERhdGFUeXBlJgorICAgICAgICAvLyBpbnN0ZWFkIG9mIGEgY29uc3QgT3du
UHRyPERhdGFUeXBlPiYuCiAgICAgICAgIHdoaWxlICgoZm91bmQgPSBtX3F1ZXVlLmZpbmRJZihw
cmVkaWNhdGUpKSAhPSBtX3F1ZXVlLmVuZCgpKSB7Ci0gICAgICAgICAgICBEYXRhVHlwZSogbWVz
c2FnZSA9ICpmb3VuZDsKKyAgICAgICAgICAgIE93blB0cjxEYXRhVHlwZT4gbWVzc2FnZSA9IHN0
ZDo6bW92ZSgqZm91bmQpOwogICAgICAgICAgICAgbV9xdWV1ZS5yZW1vdmUoZm91bmQpOwotICAg
ICAgICAgICAgZGVsZXRlIG1lc3NhZ2U7CiAgICAgICAgIH0KICAgICB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VUaHJlYWQuY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRocmVhZC5jcHAKaW5k
ZXggYTdkYjdiOTcwM2MwN2MyOTA2YjFiOWQ1OWExNDQzNTc4ZDlkNDU1OS4uNjI3YTlkZDVkY2Nj
MzVmZGQzYWNhNWYwYjE0NTBlZmI4ZDVmNWVhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRocmVhZC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRocmVhZC5jcHAKQEAgLTE3MSw3ICsxNzEs
NyBAQCB2b2lkIERhdGFiYXNlVGhyZWFkOjpzY2hlZHVsZUltbWVkaWF0ZVRhc2soUGFzc093blB0
cjxEYXRhYmFzZVRhc2s+IHRhc2spCiBjbGFzcyBTYW1lRGF0YWJhc2VQcmVkaWNhdGUgewogcHVi
bGljOgogICAgIFNhbWVEYXRhYmFzZVByZWRpY2F0ZShjb25zdCBEYXRhYmFzZUJhY2tlbmQqIGRh
dGFiYXNlKSA6IG1fZGF0YWJhc2UoZGF0YWJhc2UpIHsgfQotICAgIGJvb2wgb3BlcmF0b3IoKShE
YXRhYmFzZVRhc2sqIHRhc2spIGNvbnN0IHsgcmV0dXJuIHRhc2stPmRhdGFiYXNlKCkgPT0gbV9k
YXRhYmFzZTsgfQorICAgIGJvb2wgb3BlcmF0b3IoKShjb25zdCBPd25QdHI8RGF0YWJhc2VUYXNr
PiYgdGFzaykgY29uc3QgeyByZXR1cm4gdGFzay0+ZGF0YWJhc2UoKSA9PSBtX2RhdGFiYXNlOyB9
CiBwcml2YXRlOgogICAgIGNvbnN0IERhdGFiYXNlQmFja2VuZCogbV9kYXRhYmFzZTsKIH07CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vZGVmYXVsdC9QbGF0Zm9ybU1lc3NhZ2VQb3J0
Q2hhbm5lbC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL2RlZmF1bHQvUGxhdGZvcm1NZXNzYWdlUG9y
dENoYW5uZWwuaAppbmRleCAyODNlZGFkNzY0NDlhNDE3MWY3M2M0OTMzYzFjZDgzZjM1YmNjYzMx
Li43NWExMzUzYjI0NGM5ZjM1MjQ3ZmZlYjhhNTE2NzYyZjYxOTMzZjQ1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vZGVmYXVsdC9QbGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9kZWZhdWx0L1BsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVs
LmgKQEAgLTY1LDcgKzY1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBwdWJsaWM6
CiAgICAgICAgICAgICBzdGF0aWMgUGFzc1JlZlB0cjxNZXNzYWdlUG9ydFF1ZXVlPiBjcmVhdGUo
KSB7IHJldHVybiBhZG9wdFJlZihuZXcgTWVzc2FnZVBvcnRRdWV1ZSgpKTsgfQogCi0gICAgICAg
ICAgICBQYXNzT3duUHRyPFBsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVsOjpFdmVudERhdGE+IHRy
eUdldE1lc3NhZ2UoKQorICAgICAgICAgICAgT3duUHRyPFBsYXRmb3JtTWVzc2FnZVBvcnRDaGFu
bmVsOjpFdmVudERhdGE+IHRyeUdldE1lc3NhZ2UoKQogICAgICAgICAgICAgewogICAgICAgICAg
ICAgICAgIHJldHVybiBtX3F1ZXVlLnRyeUdldE1lc3NhZ2UoKTsKICAgICAgICAgICAgIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVRocmVhZC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9maWxlYXBpL0ZpbGVUaHJlYWQuY3BwCmluZGV4IGVmMjgwYzhhMzU0NzY4MGY3YzM0
OGQ0YmY0Y2U5Y2Y5NmRiNmJhODYuLjRkZDk1Y2ZhMDNkYmJiYmFiNTUwNzgyNzkyZDg1YzhhOTZi
ZTgzZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVRocmVhZC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlVGhyZWFkLmNwcApAQCAtNzIsNyArNzIs
NyBAQCB2b2lkIEZpbGVUaHJlYWQ6OnBvc3RUYXNrKFBhc3NPd25QdHI8VGFzaz4gdGFzaykKIGNs
YXNzIFNhbWVJbnN0YW5jZVByZWRpY2F0ZSB7CiBwdWJsaWM6CiAgICAgU2FtZUluc3RhbmNlUHJl
ZGljYXRlKGNvbnN0IHZvaWQqIGluc3RhbmNlKSA6IG1faW5zdGFuY2UoaW5zdGFuY2UpIHsgfQot
ICAgIGJvb2wgb3BlcmF0b3IoKShGaWxlVGhyZWFkOjpUYXNrKiB0YXNrKSBjb25zdCB7IHJldHVy
biB0YXNrLT5pbnN0YW5jZSgpID09IG1faW5zdGFuY2U7IH0KKyAgICBib29sIG9wZXJhdG9yKCko
Y29uc3QgT3duUHRyPEZpbGVUaHJlYWQ6OlRhc2s+JiB0YXNrKSBjb25zdCB7IHJldHVybiB0YXNr
LT5pbnN0YW5jZSgpID09IG1faW5zdGFuY2U7IH0KIHByaXZhdGU6CiAgICAgY29uc3Qgdm9pZCog
bV9pbnN0YW5jZTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtl
clJ1bkxvb3AuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJSdW5Mb29wLmNwcApp
bmRleCA3YjBlMjEzZDQyNWY0YTViYmMwZDU2MDYzODM3MWFmYjQxZmE0NDY1Li5mY2MyYzA1NWIz
YTdiMDRiMGFhNzkzNzY2Njk1M2IxYzE2ODhhODAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL1dvcmtlclJ1bkxvb3AuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
V29ya2VyUnVuTG9vcC5jcHAKQEAgLTc4LDcgKzc4LDcgQEAgcHVibGljOgogICAgICAgICByZXR1
cm4gbV9kZWZhdWx0TW9kZTsKICAgICB9CiAKLSAgICBib29sIG9wZXJhdG9yKCkoV29ya2VyUnVu
TG9vcDo6VGFzayogdGFzaykgY29uc3QKKyAgICBib29sIG9wZXJhdG9yKCkoY29uc3QgT3duUHRy
PFdvcmtlclJ1bkxvb3A6OlRhc2s+JiB0YXNrKSBjb25zdAogICAgIHsKICAgICAgICAgcmV0dXJu
IG1fZGVmYXVsdE1vZGUgfHwgbV9tb2RlID09IHRhc2stPm1vZGUoKTsKICAgICB9Cg==
</data>
<flag name="review"
          id="233949"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>