<?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>159145</bug_id>
          
          <creation_ts>2016-06-27 06:07:33 -0700</creation_ts>
          <short_desc>REGRESSION(r202337) [WebRTC] Crash when loading html5test.com</short_desc>
          <delta_ts>2016-06-29 09:11:11 -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>WebKitGTK</component>
          <version>WebKit 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>
          
          <blocked>143211</blocked>
    
    <blocked>158832</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Alberto Lopez Perez">clopez</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>achristensen</cc>
    
    <cc>adam.bergkvist</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1205532</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2016-06-27 06:07:33 -0700</bug_when>
    <thetext>With current trunk (r202484) when I try to load html5test.com with the minibrowser:

$ Tools/Scripts/run-minibrowser --gtk http://html5test.com

I get a crash.


The backtrace: http://sprunge.us/REVR</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1205533</commentid>
    <comment_count>1</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2016-06-27 06:14:04 -0700</bug_when>
    <thetext>I don&apos;t see anything specific to GTK+ in the bt. This looks like a crash in WebRTC implementation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1205550</commentid>
    <comment_count>2</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2016-06-27 07:23:12 -0700</bug_when>
    <thetext>I have identified r202337 &lt;http://trac.webkit.org/r202337&gt; as the one causing this regression.

I manually reverted r202337 locally, rebuilt webkit and the crash is gone.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1205878</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-06-27 22:34:20 -0700</bug_when>
    <thetext>I see the problem. For testing, we create a MockMediaEndpoint (WebRTC backend), but when the mini-browser is run, we have a nullptr MediaEndpoint. The changes introduced in r202337 doesn&apos;t handle that properly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1205956</commentid>
    <comment_count>4</comment_count>
      <attachid>282224</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-06-28 01:43:39 -0700</bug_when>
    <thetext>Created attachment 282224
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206094</commentid>
    <comment_count>5</comment_count>
      <attachid>282224</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2016-06-28 11:18:36 -0700</bug_when>
    <thetext>Comment on attachment 282224
Proposed patch

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

&gt; Source/WebCore/platform/mediastream/MediaEndpoint.cpp:56
&gt; +class NullMediaEndpoint : public MediaEndpoint {

I think EmptyMediaEndpoint would be a better name.

&gt; Source/WebCore/platform/mediastream/MediaEndpoint.cpp:80
&gt; +    return std::unique_ptr&lt;MediaEndpoint&gt;(new NullMediaEndpoint(client));

make_unique.  Also, this function is not necessary.  Just use std::make_unique instead of this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206188</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-06-28 14:36:53 -0700</bug_when>
    <thetext>(In reply to comment #5)

Thanks for reviewing, Alex

&gt; Comment on attachment 282224 [details]
&gt; Proposed patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=282224&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/mediastream/MediaEndpoint.cpp:56
&gt; &gt; +class NullMediaEndpoint : public MediaEndpoint {
&gt; 
&gt; I think EmptyMediaEndpoint would be a better name.

EmptyMediaEndpoint and EmptyRealtimeMediaSource works for me.

&gt; &gt; Source/WebCore/platform/mediastream/MediaEndpoint.cpp:80
&gt; &gt; +    return std::unique_ptr&lt;MediaEndpoint&gt;(new NullMediaEndpoint(client));
&gt; 
&gt; make_unique.  Also, this function is not necessary.  Just use
&gt; std::make_unique instead of this.

Are you referring to the createMediaEndpoint() function here? The MediaEndpointPeerConnection constructor calls createMediaEndpoint() to create its MediaEndpoint - in this case an &quot;empty&quot; one. When a port has a &quot;real&quot; MediaEndponit implementation it provides its own createMediaEndpoint() that&apos;s called instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206308</commentid>
    <comment_count>7</comment_count>
      <attachid>282321</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-06-28 22:29:59 -0700</bug_when>
    <thetext>Created attachment 282321
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206389</commentid>
    <comment_count>8</comment_count>
      <attachid>282321</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2016-06-29 08:50:02 -0700</bug_when>
    <thetext>Comment on attachment 282321
Updated patch

Thanks Eric and Alex</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206393</commentid>
    <comment_count>9</comment_count>
      <attachid>282321</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-29 09:11:06 -0700</bug_when>
    <thetext>Comment on attachment 282321
Updated patch

Clearing flags on attachment: 282321

Committed r202624: &lt;http://trac.webkit.org/changeset/202624&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206394</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-29 09:11:11 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>282224</attachid>
            <date>2016-06-28 01:43:39 -0700</date>
            <delta_ts>2016-06-28 22:29:59 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>null-media-endpoint_0.patch</filename>
            <type>text/plain</type>
            <size>4890</size>
            <attacher name="Adam Bergkvist">adam.bergkvist</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4ZDE1N2YzLi5mYjc2YmU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQg
QEAKKzIwMTYtMDYtMjggIEFkYW0gQmVyZ2t2aXN0ICA8YWRhbS5iZXJna3Zpc3RAZXJpY3Nzb24u
Y29tPgorCisgICAgICAgIFJFR1JFU1NJT04ocjIwMjMzNykgW1dlYlJUQ10gQ3Jhc2ggd2hlbiBs
b2FkaW5nIGh0bWw1dGVzdC5jb20KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE1OTE0NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIE1lZGlhRW5kcG9pbnRQZWVyQ29ubmVjdGlvbiB1c2VzIGFuIGltcGxlbWVu
dGF0aW9uIG9mIHRoZSBNZWRpYUVuZHBvaW50IGludGVyZmFjZSB0bworICAgICAgICBpbnRlcmFj
dCB3aXRoIHRoZSBwb3J0J3MgV2ViUlRDIGJhY2tlbmQuIEEgbW9jayAoTW9ja01lZGlhRW5kcG9p
bnQpIGlzIHVzZWQgZm9yIHRlc3RpbmcuCisgICAgICAgIFRoaXMgY2hhbmdlIGFkZHMgYSBOdWxs
TWVkaWFFbmRwb2ludCBpbXBsZW1lbnRhdGlvbiB0aGF0IHNpbXBsaWZpZXMgdGhlIGNhc2Ugd2hl
biBhIHBvcnQKKyAgICAgICAgYnVpbGRzIGFuZCB0ZXN0cyB3aXRoIE1lZGlhRW5kcG9pbnRQZWVy
Q29ubmVjdGlvbi9Nb2NrTWVkaWFFbmRwb2ludCwgYnV0IGRvZXNuJ3QgaGF2ZSBhCisgICAgICAg
ICJyZWFsIiBNZWRpYUVuZHBvaW50IGltcGxlbWVudGF0aW9uIHlldCAodG8gdXNlIHdpdGggTWlu
aUJyb3dzZXIpLgorCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50
UGVlckNvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFFbmRwb2ludFBlZXJD
b25uZWN0aW9uOjpNZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rpb24pOgorICAgICAgICAqIHBsYXRm
b3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TnVs
bFJlYWx0aW1lTWVkaWFTb3VyY2U6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpOdWxsUmVh
bHRpbWVNZWRpYVNvdXJjZTo6TnVsbFJlYWx0aW1lTWVkaWFTb3VyY2UpOgorICAgICAgICAoV2Vi
Q29yZTo6TnVsbE1lZGlhRW5kcG9pbnQ6Ok51bGxNZWRpYUVuZHBvaW50KToKKyAgICAgICAgKFdl
YkNvcmU6OmNyZWF0ZU1lZGlhRW5kcG9pbnQpOgorCiAyMDE2LTA2LTIzICBCcmFkeSBFaWRzb24g
IDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXRyaWV2aW5nIEJsb2JzIGZyb20gSW5k
ZXhlZERCIHVzaW5nIGN1cnNvcnMgZmFpbHMgaW4gV0syIChTYW5kYm94aW5nKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50UGVlckNv
bm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYUVu
ZHBvaW50UGVlckNvbm5lY3Rpb24uY3BwCmluZGV4IGJjNGQ1YzUuLjI5OTMwNzUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludFBlZXJD
b25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01l
ZGlhRW5kcG9pbnRQZWVyQ29ubmVjdGlvbi5jcHAKQEAgLTcwLDEyICs3MCwxMiBAQCBzdGF0aWMg
U3RyaW5nIHJhbmRvbVN0cmluZyhzaXplX3QgbGVuZ3RoKQogCiBNZWRpYUVuZHBvaW50UGVlckNv
bm5lY3Rpb246Ok1lZGlhRW5kcG9pbnRQZWVyQ29ubmVjdGlvbihQZWVyQ29ubmVjdGlvbkJhY2tl
bmRDbGllbnQqIGNsaWVudCkKICAgICA6IG1fY2xpZW50KGNsaWVudCkKKyAgICAsIG1fbWVkaWFF
bmRwb2ludChNZWRpYUVuZHBvaW50OjpjcmVhdGUoKnRoaXMpKQogICAgICwgbV9zZHBQcm9jZXNz
b3Ioc3RkOjp1bmlxdWVfcHRyPFNEUFByb2Nlc3Nvcj4obmV3IFNEUFByb2Nlc3NvcihtX2NsaWVu
dC0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKSkpCiAgICAgLCBtX2NuYW1lKHJhbmRvbVN0cmlu
ZygxNikpCiAgICAgLCBtX2ljZVVmcmFnKHJhbmRvbVN0cmluZyg0KSkKICAgICAsIG1faWNlUGFz
c3dvcmQocmFuZG9tU3RyaW5nKDIyKSkKIHsKLSAgICBtX21lZGlhRW5kcG9pbnQgPSBNZWRpYUVu
ZHBvaW50OjpjcmVhdGUoKnRoaXMpOwogICAgIEFTU0VSVChtX21lZGlhRW5kcG9pbnQpOwogCiAg
ICAgbV9kZWZhdWx0QXVkaW9QYXlsb2FkcyA9IG1fbWVkaWFFbmRwb2ludC0+Z2V0RGVmYXVsdEF1
ZGlvUGF5bG9hZHMoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlh
c3RyZWFtL01lZGlhRW5kcG9pbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFz
dHJlYW0vTWVkaWFFbmRwb2ludC5jcHAKaW5kZXggNDk0NzkzOC4uOWUyMDU0MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5j
cHAKQEAgLTMzLDExICszMyw1MSBAQAogI2lmIEVOQUJMRShXRUJfUlRDKQogI2luY2x1ZGUgIk1l
ZGlhRW5kcG9pbnQuaCIKIAorI2luY2x1ZGUgIk1lZGlhUGF5bG9hZC5oIgorI2luY2x1ZGUgIlJl
YWx0aW1lTWVkaWFTb3VyY2UuaCIKKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdGF0aWMgc3Rk
Ojp1bmlxdWVfcHRyPE1lZGlhRW5kcG9pbnQ+IGNyZWF0ZU1lZGlhRW5kcG9pbnQoTWVkaWFFbmRw
b2ludENsaWVudCYpCitjbGFzcyBOdWxsUmVhbHRpbWVNZWRpYVNvdXJjZSA6IHB1YmxpYyBSZWFs
dGltZU1lZGlhU291cmNlIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUmVmPE51bGxSZWFsdGltZU1l
ZGlhU291cmNlPiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IE51bGxSZWFsdGltZU1l
ZGlhU291cmNlKCkpOyB9CisKKyAgICBSZWZQdHI8UmVhbHRpbWVNZWRpYVNvdXJjZUNhcGFiaWxp
dGllcz4gY2FwYWJpbGl0aWVzKCkgb3ZlcnJpZGUgeyByZXR1cm4gbnVsbHB0cjsgfQorICAgIGNv
bnN0IFJlYWx0aW1lTWVkaWFTb3VyY2VTZXR0aW5ncyYgc2V0dGluZ3MoKSBvdmVycmlkZSB7IHJl
dHVybiBtX3NvdXJjZVNldHRpbmdzOyB9CisKK3ByaXZhdGU6CisgICAgTnVsbFJlYWx0aW1lTWVk
aWFTb3VyY2UoKQorICAgICAgICA6IFJlYWx0aW1lTWVkaWFTb3VyY2UoZW1wdHlTdHJpbmcoKSwg
UmVhbHRpbWVNZWRpYVNvdXJjZTo6Tm9uZSwgZW1wdHlTdHJpbmcoKSkKKyAgICAgICAgeyB9CisK
KyAgICBSZWFsdGltZU1lZGlhU291cmNlU2V0dGluZ3MgbV9zb3VyY2VTZXR0aW5nczsKK307CisK
K2NsYXNzIE51bGxNZWRpYUVuZHBvaW50IDogcHVibGljIE1lZGlhRW5kcG9pbnQgeworcHVibGlj
OgorICAgIE51bGxNZWRpYUVuZHBvaW50KE1lZGlhRW5kcG9pbnRDbGllbnQmKSB7IH0KKworICAg
IHZvaWQgc2V0Q29uZmlndXJhdGlvbihSZWZQdHI8TWVkaWFFbmRwb2ludENvbmZpZ3VyYXRpb24+
JiYpIG92ZXJyaWRlIHsgfQorCisgICAgdm9pZCBnZW5lcmF0ZUR0bHNJbmZvKCkgb3ZlcnJpZGUg
eyB9CisgICAgTWVkaWFQYXlsb2FkVmVjdG9yIGdldERlZmF1bHRBdWRpb1BheWxvYWRzKCkgb3Zl
cnJpZGUgeyByZXR1cm4gTWVkaWFQYXlsb2FkVmVjdG9yKCk7IH0KKyAgICBNZWRpYVBheWxvYWRW
ZWN0b3IgZ2V0RGVmYXVsdFZpZGVvUGF5bG9hZHMoKSBvdmVycmlkZSB7IHJldHVybiBNZWRpYVBh
eWxvYWRWZWN0b3IoKTsgfQorICAgIE1lZGlhUGF5bG9hZFZlY3RvciBmaWx0ZXJQYXlsb2Fkcyhj
b25zdCBNZWRpYVBheWxvYWRWZWN0b3ImLCBjb25zdCBNZWRpYVBheWxvYWRWZWN0b3ImKSBvdmVy
cmlkZSB7IHJldHVybiBNZWRpYVBheWxvYWRWZWN0b3IoKTsgfQorCisgICAgVXBkYXRlUmVzdWx0
IHVwZGF0ZVJlY2VpdmVDb25maWd1cmF0aW9uKE1lZGlhRW5kcG9pbnRTZXNzaW9uQ29uZmlndXJh
dGlvbiosIGJvb2wpIG92ZXJyaWRlIHsgcmV0dXJuIFVwZGF0ZVJlc3VsdDo6RmFpbGVkOyB9Cisg
ICAgVXBkYXRlUmVzdWx0IHVwZGF0ZVNlbmRDb25maWd1cmF0aW9uKE1lZGlhRW5kcG9pbnRTZXNz
aW9uQ29uZmlndXJhdGlvbiosIGNvbnN0IFJlYWx0aW1lTWVkaWFTb3VyY2VNYXAmLCBib29sKSBv
dmVycmlkZSB7IHJldHVybiBVcGRhdGVSZXN1bHQ6OkZhaWxlZDsgfQorCisgICAgdm9pZCBhZGRS
ZW1vdGVDYW5kaWRhdGUoSWNlQ2FuZGlkYXRlJiwgY29uc3QgU3RyaW5nJiwgY29uc3QgU3RyaW5n
JiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGUgeyB9CisKKyAgICBSZWY8UmVhbHRpbWVNZWRpYVNv
dXJjZT4gY3JlYXRlTXV0ZWRSZW1vdGVTb3VyY2UoY29uc3QgU3RyaW5nJiwgUmVhbHRpbWVNZWRp
YVNvdXJjZTo6VHlwZSkgb3ZlcnJpZGUgeyByZXR1cm4gTnVsbFJlYWx0aW1lTWVkaWFTb3VyY2U6
OmNyZWF0ZSgpOyB9CisgICAgdm9pZCByZXBsYWNlU2VuZFNvdXJjZShSZWFsdGltZU1lZGlhU291
cmNlJiwgY29uc3QgU3RyaW5nJikgb3ZlcnJpZGUgeyB9CisKKyAgICB2b2lkIHN0b3AoKSBvdmVy
cmlkZSB7IH0KK307CisKK3N0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8TWVkaWFFbmRwb2ludD4gY3Jl
YXRlTWVkaWFFbmRwb2ludChNZWRpYUVuZHBvaW50Q2xpZW50JiBjbGllbnQpCiB7Ci0gICAgcmV0
dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIHN0ZDo6dW5pcXVlX3B0cjxNZWRpYUVuZHBvaW50Pihu
ZXcgTnVsbE1lZGlhRW5kcG9pbnQoY2xpZW50KSk7CiB9CiAKIENyZWF0ZU1lZGlhRW5kcG9pbnQg
TWVkaWFFbmRwb2ludDo6Y3JlYXRlID0gY3JlYXRlTWVkaWFFbmRwb2ludDsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>282321</attachid>
            <date>2016-06-28 22:29:59 -0700</date>
            <delta_ts>2016-06-29 09:11:06 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>null-media-endpoint_1.patch</filename>
            <type>text/plain</type>
            <size>4890</size>
            <attacher name="Adam Bergkvist">adam.bergkvist</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4ZDE1N2YzLi5mNmE4MTg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQg
QEAKKzIwMTYtMDYtMjggIEFkYW0gQmVyZ2t2aXN0ICA8YWRhbS5iZXJna3Zpc3RAZXJpY3Nzb24u
Y29tPgorCisgICAgICAgIFJFR1JFU1NJT04ocjIwMjMzNykgW1dlYlJUQ10gQ3Jhc2ggd2hlbiBs
b2FkaW5nIGh0bWw1dGVzdC5jb20KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE1OTE0NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIE1lZGlhRW5kcG9pbnRQZWVyQ29ubmVjdGlvbiB1c2VzIGFuIGltcGxlbWVu
dGF0aW9uIG9mIHRoZSBNZWRpYUVuZHBvaW50IGludGVyZmFjZSB0bworICAgICAgICBpbnRlcmFj
dCB3aXRoIHRoZSBwb3J0J3MgV2ViUlRDIGJhY2tlbmQuIEEgbW9jayAoTW9ja01lZGlhRW5kcG9p
bnQpIGlzIHVzZWQgZm9yIHRlc3RpbmcuCisgICAgICAgIFRoaXMgY2hhbmdlIGFkZHMgYW4gImVt
cHR5IiBNZWRpYUVuZHBvaW50IGltcGxlbWVudGF0aW9uIHRoYXQgc2ltcGxpZmllcyB0aGUgY2Fz
ZSB3aGVuIGEKKyAgICAgICAgcG9ydCBidWlsZHMgYW5kIHRlc3RzIHdpdGggTWVkaWFFbmRwb2lu
dFBlZXJDb25uZWN0aW9uL01vY2tNZWRpYUVuZHBvaW50LCBidXQgZG9lc24ndCBoYXZlCisgICAg
ICAgIGEgInJlYWwiIE1lZGlhRW5kcG9pbnQgaW1wbGVtZW50YXRpb24geWV0ICh0byB1c2Ugd2l0
aCBNaW5pQnJvd3NlcikuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhRW5k
cG9pbnRQZWVyQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYUVuZHBvaW50
UGVlckNvbm5lY3Rpb246Ok1lZGlhRW5kcG9pbnRQZWVyQ29ubmVjdGlvbik6CisgICAgICAgICog
cGxhdGZvcm0vbWVkaWFzdHJlYW0vTWVkaWFFbmRwb2ludC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpFbXB0eVJlYWx0aW1lTWVkaWFTb3VyY2U6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpF
bXB0eVJlYWx0aW1lTWVkaWFTb3VyY2U6OkVtcHR5UmVhbHRpbWVNZWRpYVNvdXJjZSk6CisgICAg
ICAgIChXZWJDb3JlOjpFbXB0eU1lZGlhRW5kcG9pbnQ6OkVtcHR5TWVkaWFFbmRwb2ludCk6Cisg
ICAgICAgIChXZWJDb3JlOjpjcmVhdGVNZWRpYUVuZHBvaW50KToKKwogMjAxNi0wNi0yMyAgQnJh
ZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV0cmlldmluZyBCbG9i
cyBmcm9tIEluZGV4ZWREQiB1c2luZyBjdXJzb3JzIGZhaWxzIGluIFdLMiAoU2FuZGJveGluZykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFFbmRw
b2ludFBlZXJDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vTWVkaWFFbmRwb2ludFBlZXJDb25uZWN0aW9uLmNwcAppbmRleCBiYzRkNWM1Li4yOTkzMDc1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhRW5k
cG9pbnRQZWVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9NZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rpb24uY3BwCkBAIC03MCwxMiArNzAsMTIg
QEAgc3RhdGljIFN0cmluZyByYW5kb21TdHJpbmcoc2l6ZV90IGxlbmd0aCkKIAogTWVkaWFFbmRw
b2ludFBlZXJDb25uZWN0aW9uOjpNZWRpYUVuZHBvaW50UGVlckNvbm5lY3Rpb24oUGVlckNvbm5l
Y3Rpb25CYWNrZW5kQ2xpZW50KiBjbGllbnQpCiAgICAgOiBtX2NsaWVudChjbGllbnQpCisgICAg
LCBtX21lZGlhRW5kcG9pbnQoTWVkaWFFbmRwb2ludDo6Y3JlYXRlKCp0aGlzKSkKICAgICAsIG1f
c2RwUHJvY2Vzc29yKHN0ZDo6dW5pcXVlX3B0cjxTRFBQcm9jZXNzb3I+KG5ldyBTRFBQcm9jZXNz
b3IobV9jbGllbnQtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkpKQogICAgICwgbV9jbmFtZShy
YW5kb21TdHJpbmcoMTYpKQogICAgICwgbV9pY2VVZnJhZyhyYW5kb21TdHJpbmcoNCkpCiAgICAg
LCBtX2ljZVBhc3N3b3JkKHJhbmRvbVN0cmluZygyMikpCiB7Ci0gICAgbV9tZWRpYUVuZHBvaW50
ID0gTWVkaWFFbmRwb2ludDo6Y3JlYXRlKCp0aGlzKTsKICAgICBBU1NFUlQobV9tZWRpYUVuZHBv
aW50KTsKIAogICAgIG1fZGVmYXVsdEF1ZGlvUGF5bG9hZHMgPSBtX21lZGlhRW5kcG9pbnQtPmdl
dERlZmF1bHRBdWRpb1BheWxvYWRzKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tZWRpYXN0cmVhbS9NZWRpYUVuZHBvaW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21lZGlhc3RyZWFtL01lZGlhRW5kcG9pbnQuY3BwCmluZGV4IDQ5NDc5MzguLjNkMzdmY2Qg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlhRW5k
cG9pbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21lZGlhc3RyZWFtL01lZGlh
RW5kcG9pbnQuY3BwCkBAIC0zMywxMSArMzMsNTEgQEAKICNpZiBFTkFCTEUoV0VCX1JUQykKICNp
bmNsdWRlICJNZWRpYUVuZHBvaW50LmgiCiAKKyNpbmNsdWRlICJNZWRpYVBheWxvYWQuaCIKKyNp
bmNsdWRlICJSZWFsdGltZU1lZGlhU291cmNlLmgiCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
c3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxNZWRpYUVuZHBvaW50PiBjcmVhdGVNZWRpYUVuZHBvaW50
KE1lZGlhRW5kcG9pbnRDbGllbnQmKQorY2xhc3MgRW1wdHlSZWFsdGltZU1lZGlhU291cmNlIDog
cHVibGljIFJlYWx0aW1lTWVkaWFTb3VyY2UgeworcHVibGljOgorICAgIHN0YXRpYyBSZWY8RW1w
dHlSZWFsdGltZU1lZGlhU291cmNlPiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZigqbmV3IEVt
cHR5UmVhbHRpbWVNZWRpYVNvdXJjZSgpKTsgfQorCisgICAgUmVmUHRyPFJlYWx0aW1lTWVkaWFT
b3VyY2VDYXBhYmlsaXRpZXM+IGNhcGFiaWxpdGllcygpIG92ZXJyaWRlIHsgcmV0dXJuIG51bGxw
dHI7IH0KKyAgICBjb25zdCBSZWFsdGltZU1lZGlhU291cmNlU2V0dGluZ3MmIHNldHRpbmdzKCkg
b3ZlcnJpZGUgeyByZXR1cm4gbV9zb3VyY2VTZXR0aW5nczsgfQorCitwcml2YXRlOgorICAgIEVt
cHR5UmVhbHRpbWVNZWRpYVNvdXJjZSgpCisgICAgICAgIDogUmVhbHRpbWVNZWRpYVNvdXJjZShl
bXB0eVN0cmluZygpLCBSZWFsdGltZU1lZGlhU291cmNlOjpOb25lLCBlbXB0eVN0cmluZygpKQor
ICAgICAgICB7IH0KKworICAgIFJlYWx0aW1lTWVkaWFTb3VyY2VTZXR0aW5ncyBtX3NvdXJjZVNl
dHRpbmdzOworfTsKKworY2xhc3MgRW1wdHlNZWRpYUVuZHBvaW50IDogcHVibGljIE1lZGlhRW5k
cG9pbnQgeworcHVibGljOgorICAgIEVtcHR5TWVkaWFFbmRwb2ludChNZWRpYUVuZHBvaW50Q2xp
ZW50JikgeyB9CisKKyAgICB2b2lkIHNldENvbmZpZ3VyYXRpb24oUmVmUHRyPE1lZGlhRW5kcG9p
bnRDb25maWd1cmF0aW9uPiYmKSBvdmVycmlkZSB7IH0KKworICAgIHZvaWQgZ2VuZXJhdGVEdGxz
SW5mbygpIG92ZXJyaWRlIHsgfQorICAgIE1lZGlhUGF5bG9hZFZlY3RvciBnZXREZWZhdWx0QXVk
aW9QYXlsb2FkcygpIG92ZXJyaWRlIHsgcmV0dXJuIE1lZGlhUGF5bG9hZFZlY3RvcigpOyB9Cisg
ICAgTWVkaWFQYXlsb2FkVmVjdG9yIGdldERlZmF1bHRWaWRlb1BheWxvYWRzKCkgb3ZlcnJpZGUg
eyByZXR1cm4gTWVkaWFQYXlsb2FkVmVjdG9yKCk7IH0KKyAgICBNZWRpYVBheWxvYWRWZWN0b3Ig
ZmlsdGVyUGF5bG9hZHMoY29uc3QgTWVkaWFQYXlsb2FkVmVjdG9yJiwgY29uc3QgTWVkaWFQYXls
b2FkVmVjdG9yJikgb3ZlcnJpZGUgeyByZXR1cm4gTWVkaWFQYXlsb2FkVmVjdG9yKCk7IH0KKwor
ICAgIFVwZGF0ZVJlc3VsdCB1cGRhdGVSZWNlaXZlQ29uZmlndXJhdGlvbihNZWRpYUVuZHBvaW50
U2Vzc2lvbkNvbmZpZ3VyYXRpb24qLCBib29sKSBvdmVycmlkZSB7IHJldHVybiBVcGRhdGVSZXN1
bHQ6OkZhaWxlZDsgfQorICAgIFVwZGF0ZVJlc3VsdCB1cGRhdGVTZW5kQ29uZmlndXJhdGlvbihN
ZWRpYUVuZHBvaW50U2Vzc2lvbkNvbmZpZ3VyYXRpb24qLCBjb25zdCBSZWFsdGltZU1lZGlhU291
cmNlTWFwJiwgYm9vbCkgb3ZlcnJpZGUgeyByZXR1cm4gVXBkYXRlUmVzdWx0OjpGYWlsZWQ7IH0K
KworICAgIHZvaWQgYWRkUmVtb3RlQ2FuZGlkYXRlKEljZUNhbmRpZGF0ZSYsIGNvbnN0IFN0cmlu
ZyYsIGNvbnN0IFN0cmluZyYsIGNvbnN0IFN0cmluZyYpIG92ZXJyaWRlIHsgfQorCisgICAgUmVm
PFJlYWx0aW1lTWVkaWFTb3VyY2U+IGNyZWF0ZU11dGVkUmVtb3RlU291cmNlKGNvbnN0IFN0cmlu
ZyYsIFJlYWx0aW1lTWVkaWFTb3VyY2U6OlR5cGUpIG92ZXJyaWRlIHsgcmV0dXJuIEVtcHR5UmVh
bHRpbWVNZWRpYVNvdXJjZTo6Y3JlYXRlKCk7IH0KKyAgICB2b2lkIHJlcGxhY2VTZW5kU291cmNl
KFJlYWx0aW1lTWVkaWFTb3VyY2UmLCBjb25zdCBTdHJpbmcmKSBvdmVycmlkZSB7IH0KKworICAg
IHZvaWQgc3RvcCgpIG92ZXJyaWRlIHsgfQorfTsKKworc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxN
ZWRpYUVuZHBvaW50PiBjcmVhdGVNZWRpYUVuZHBvaW50KE1lZGlhRW5kcG9pbnRDbGllbnQmIGNs
aWVudCkKIHsKLSAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4gc3RkOjptYWtlX3VuaXF1
ZTxFbXB0eU1lZGlhRW5kcG9pbnQ+KGNsaWVudCk7CiB9CiAKIENyZWF0ZU1lZGlhRW5kcG9pbnQg
TWVkaWFFbmRwb2ludDo6Y3JlYXRlID0gY3JlYXRlTWVkaWFFbmRwb2ludDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>