<?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>85191</bug_id>
          
          <creation_ts>2012-04-30 07:16:03 -0700</creation_ts>
          <short_desc>MediaStream should not be an ActiveDOMObject</short_desc>
          <delta_ts>2012-05-07 08:02:14 -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>WebCore Misc.</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="Adam Bergkvist">adam.bergkvist</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>ojan</cc>
    
    <cc>per-erik.brodin</cc>
    
    <cc>tommyw</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>612609</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2012-04-30 07:16:03 -0700</bug_when>
    <thetext>The model with MediaStreamDescriptor and MediaStream (and LocalMediaStream) allows the JavaScript objects (MediaStream and LocalMediaStream) to be cleaned up while the MediaStreamDescriptor lives on to manage the stream in the platform. This happens for example when a URL is created to represent a MediaStream (using createObjectURL). The MediaStreamDescriptor is put into the MediaStreamRegistry and even though the MediaStream object is lost, the URL still works since the descriptor is kept in the registry.

The changes introduced in r113460 turned MediaStream and LocalMediaStream into ActiveDOMObjects. On page reload, LocalMediaStream calls MediaStreamCenter::didStopLocalMediaStream() via its ActiveDOMObject::stop() method. However, when a page reload occurs, the LocalMediaStream object may have been cleaned up already. As a result, the behavior is different since MediaStreamCenter::didStopLocalMediaStream() is called when the LocalMediaStream object exists, but not if only the MediaStreamDescriptor is left. One way to make the behavior consistent would be to call MediaStreamCenter::didStopLocalMediaStream() when the descriptor is cleaned up, cause then we wouldn&apos;t be dependent on the LocalMediaStream object being alive. However, calling MediaStreamCenter::didStopLocalMediaStream() might not be the correct thing to do when all references to the descriptor are lost since there can be MediaStream objects constructed from the tracks of the LocalMediaStream that should continue to work. MediaStreamCenter::didStopLocalMediaStream() was intended for LocalMediaStream.stop() which is used to revoke access to devices; that should not necessarily happen when the descriptor of a LocalMediaStream is cleaned up. If it&apos;s necessary for some ports to signal to the platform that a MediaStreamDescriptor is cleaned up, then I would suggest adding a new function, willDestroyMediaStreamDescriptor(), to the MediaStreamCenter interface.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>612611</commentid>
    <comment_count>1</comment_count>
      <attachid>139448</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2012-04-30 07:22:26 -0700</bug_when>
    <thetext>Created attachment 139448
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>614129</commentid>
    <comment_count>2</comment_count>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-05-02 02:44:17 -0700</bug_when>
    <thetext>After discussing this with Adam I agree that this is the best solution.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>614358</commentid>
    <comment_count>3</comment_count>
      <attachid>139448</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-05-02 09:34:22 -0700</bug_when>
    <thetext>Comment on attachment 139448
Proposed patch

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

I didn&apos;t quite follow all the details in Comment #0, but if you and Tommy agree that this is the right thing to do, I&apos;m willing to believe it.  :)

&gt; Source/WebCore/ChangeLog:8
&gt; +        Made MediaStream a ContextDestructionObserver instead.

Consider copying the text from comment #0 in the but to the ChangeLog.  That&apos;s really helpful information and it would be nice to have it in the ChangeLog rather than a click away in the bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>615157</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2012-05-03 04:17:38 -0700</bug_when>
    <thetext>Thank you. I&apos;ll update the ChangeLog before committing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>616217</commentid>
    <comment_count>5</comment_count>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-05-04 07:54:28 -0700</bug_when>
    <thetext>Will you be committing this patch soon?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617449</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2012-05-07 01:18:51 -0700</bug_when>
    <thetext>I&apos;ll commit it today.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617560</commentid>
    <comment_count>7</comment_count>
      <attachid>140518</attachid>
    <who name="Adam Bergkvist">adam.bergkvist</who>
    <bug_when>2012-05-07 06:21:25 -0700</bug_when>
    <thetext>Created attachment 140518
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617602</commentid>
    <comment_count>8</comment_count>
      <attachid>140518</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-07 08:01:59 -0700</bug_when>
    <thetext>Comment on attachment 140518
Patch for landing

Clearing flags on attachment: 140518

Committed r116311: &lt;http://trac.webkit.org/changeset/116311&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617603</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-07 08:02:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>139448</attachid>
            <date>2012-04-30 07:22:26 -0700</date>
            <delta_ts>2012-05-07 06:21:25 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>mediastream_cdo_1.patch</filename>
            <type>text/plain</type>
            <size>6273</size>
            <attacher name="Adam Bergkvist">adam.bergkvist</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5ZGQ0NzJlLi40OWQxM2Q0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUg
QEAKKzIwMTItMDQtMzAgIEFkYW0gQmVyZ2t2aXN0ICA8YWRhbS5iZXJna3Zpc3RAZXJpY3Nzb24u
Y29tPgorCisgICAgICAgIE1lZGlhU3RyZWFtIHNob3VsZCBub3QgYmUgYW4gQWN0aXZlRE9NT2Jq
ZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTE5
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1hZGUg
TWVkaWFTdHJlYW0gYSBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlciBpbnN0ZWFkLgorCisgICAg
ICAgIEN1cnJlbnRseSBub3QgdGVzdGFibGUuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3Ry
ZWFtL0xvY2FsTWVkaWFTdHJlYW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TG9jYWxNZWRpYVN0
cmVhbTo6Y3JlYXRlKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFT
dHJlYW0uaDoKKyAgICAgICAgKExvY2FsTWVkaWFTdHJlYW0pOgorICAgICAgICAqIE1vZHVsZXMv
bWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVhbS5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRp
YXN0cmVhbS9NZWRpYVN0cmVhbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVN0cmVhbTo6
Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFtOjpNZWRpYVN0cmVhbSk6Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVN0cmVhbTo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCk6Cisg
ICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5oOgorCiAyMDEyLTA0LTMw
ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBQcm90ZWN0IGN1
cnJlbnQgZWxlbWVudCBpbiBIVE1MTGlua0VsZW1lbnQ6OnNldENTU1N0eWxlU2hlZXQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVh
bS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJl
YW0uY3BwCmluZGV4IDkyZmE2OTguLjMxYmEyNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVhbS5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmNwcApAQCAtMzUsOSAr
MzUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFBhc3NSZWZQdHI8TG9jYWxNZWRpYVN0cmVh
bT4gTG9jYWxNZWRpYVN0cmVhbTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRl
eHQsIGNvbnN0IE1lZGlhU3RyZWFtU291cmNlVmVjdG9yJiBhdWRpb1NvdXJjZXMsIGNvbnN0IE1l
ZGlhU3RyZWFtU291cmNlVmVjdG9yJiB2aWRlb1NvdXJjZXMpCiB7Ci0gICAgUmVmUHRyPExvY2Fs
TWVkaWFTdHJlYW0+IHN0cmVhbSA9IGFkb3B0UmVmKG5ldyBMb2NhbE1lZGlhU3RyZWFtKGNvbnRl
eHQsIGF1ZGlvU291cmNlcywgdmlkZW9Tb3VyY2VzKSk7Ci0gICAgc3RyZWFtLT5zdXNwZW5kSWZO
ZWVkZWQoKTsKLSAgICByZXR1cm4gc3RyZWFtLnJlbGVhc2UoKTsKKyAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IExvY2FsTWVkaWFTdHJlYW0oY29udGV4dCwgYXVkaW9Tb3VyY2VzLCB2aWRlb1NvdXJj
ZXMpKTsKIH0KIAogTG9jYWxNZWRpYVN0cmVhbTo6TG9jYWxNZWRpYVN0cmVhbShTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBNZWRpYVN0cmVhbVNvdXJjZVZlY3RvciYgYXVk
aW9Tb3VyY2VzLCBjb25zdCBNZWRpYVN0cmVhbVNvdXJjZVZlY3RvciYgdmlkZW9Tb3VyY2VzKQpA
QCAtNDYsMTEgKzQ0LDYgQEAgTG9jYWxNZWRpYVN0cmVhbTo6TG9jYWxNZWRpYVN0cmVhbShTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBNZWRpYVMKIHsKIH0KIAotdm9pZCBM
b2NhbE1lZGlhU3RyZWFtOjpzdG9wRnVuY3Rpb24oKQotewotICAgIHN0b3AoKTsKLX0KLQogdm9p
ZCBMb2NhbE1lZGlhU3RyZWFtOjpzdG9wKCkKIHsKICAgICBpZiAoIW1fc3RvcFRpbWVyLmlzQWN0
aXZlKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xv
Y2FsTWVkaWFTdHJlYW0uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTG9j
YWxNZWRpYVN0cmVhbS5oCmluZGV4IDc2MTgwNWUuLjY4ZWQzZDEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVhbS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVhbS5oCkBAIC0z
OCwxMCArMzgsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8TG9jYWxNZWRpYVN0
cmVhbT4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBjb25zdCBNZWRpYVN0cmVhbVNv
dXJjZVZlY3RvciYgYXVkaW9Tb3VyY2VzLCBjb25zdCBNZWRpYVN0cmVhbVNvdXJjZVZlY3RvciYg
dmlkZW9Tb3VyY2VzKTsKICAgICB2aXJ0dWFsIH5Mb2NhbE1lZGlhU3RyZWFtKCk7CiAKLSAgICB2
b2lkIHN0b3BGdW5jdGlvbigpOwotCi0gICAgLy8gQWN0aXZlRE9NT2JqZWN0Ci0gICAgdmlydHVh
bCB2b2lkIHN0b3AoKSBPVkVSUklERTsKKyAgICB2b2lkIHN0b3AoKTsKIAogICAgIC8vIEV2ZW50
VGFyZ2V0CiAgICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBj
b25zdCBPVkVSUklERTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFz
dHJlYW0vTG9jYWxNZWRpYVN0cmVhbS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0uaWRsCmluZGV4IDdhYWRkYzMuLmU5OTQ0Y2YgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVh
bS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlh
U3RyZWFtLmlkbApAQCAtMjksNyArMjksNyBAQCBtb2R1bGUgY29yZSB7CiAgICAgICAgIEpTR2Vu
ZXJhdGVUb05hdGl2ZU9iamVjdCwKICAgICAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QKICAgICBd
IExvY2FsTWVkaWFTdHJlYW0gOiBNZWRpYVN0cmVhbSB7Ci0gICAgICAgIFtJbXBsZW1lbnRlZEFz
PXN0b3BGdW5jdGlvbl0gdm9pZCBzdG9wKCk7CisgICAgICAgIHZvaWQgc3RvcCgpOwogICAgIH07
CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVk
aWFTdHJlYW0uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0
cmVhbS5jcHAKaW5kZXggMTIyN2E3ZS4uNzllM2Y0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5jcHAKQEAgLTMyLDcgKzMyLDYgQEAK
ICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCiAjaW5jbHVkZSAiTWVkaWFTdHJlYW1DZW50ZXIu
aCIKICNpbmNsdWRlICJNZWRpYVN0cmVhbVNvdXJjZS5oIgotI2luY2x1ZGUgIlNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQuaCIKICNpbmNsdWRlICJVVUlELmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
QEAgLTc3LDIwICs3NiwxNiBAQCBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBNZWRpYVN0cmVhbTo6
Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhcwogICAgIFJlZlB0cjxN
ZWRpYVN0cmVhbURlc2NyaXB0b3I+IGRlc2NyaXB0b3IgPSBNZWRpYVN0cmVhbURlc2NyaXB0b3I6
OmNyZWF0ZShjcmVhdGVDYW5vbmljYWxVVUlEU3RyaW5nKCksIGF1ZGlvU291cmNlcywgdmlkZW9T
b3VyY2VzKTsKICAgICBNZWRpYVN0cmVhbUNlbnRlcjo6aW5zdGFuY2UoKS5kaWRDb25zdHJ1Y3RN
ZWRpYVN0cmVhbShkZXNjcmlwdG9yLmdldCgpKTsKIAotICAgIFJlZlB0cjxNZWRpYVN0cmVhbT4g
c3RyZWFtID0gYWRvcHRSZWYobmV3IE1lZGlhU3RyZWFtKGNvbnRleHQsIGRlc2NyaXB0b3IucmVs
ZWFzZSgpKSk7Ci0gICAgc3RyZWFtLT5zdXNwZW5kSWZOZWVkZWQoKTsKLSAgICByZXR1cm4gc3Ry
ZWFtLnJlbGVhc2UoKTsKKyAgICByZXR1cm4gYWRvcHRSZWYobmV3IE1lZGlhU3RyZWFtKGNvbnRl
eHQsIGRlc2NyaXB0b3IucmVsZWFzZSgpKSk7CiB9CiAKIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+
IE1lZGlhU3RyZWFtOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFz
c1JlZlB0cjxNZWRpYVN0cmVhbURlc2NyaXB0b3I+IHN0cmVhbURlc2NyaXB0b3IpCiB7Ci0gICAg
UmVmUHRyPE1lZGlhU3RyZWFtPiBzdHJlYW0gPSBhZG9wdFJlZihuZXcgTWVkaWFTdHJlYW0oY29u
dGV4dCwgc3RyZWFtRGVzY3JpcHRvcikpOwotICAgIHN0cmVhbS0+c3VzcGVuZElmTmVlZGVkKCk7
Ci0gICAgcmV0dXJuIHN0cmVhbS5yZWxlYXNlKCk7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBN
ZWRpYVN0cmVhbShjb250ZXh0LCBzdHJlYW1EZXNjcmlwdG9yKSk7CiB9CiAKIE1lZGlhU3RyZWFt
OjpNZWRpYVN0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRy
PE1lZGlhU3RyZWFtRGVzY3JpcHRvcj4gc3RyZWFtRGVzY3JpcHRvcikKLSAgICA6IEFjdGl2ZURP
TU9iamVjdChjb250ZXh0LCB0aGlzKQorICAgIDogQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIo
Y29udGV4dCkKICAgICAsIG1fZGVzY3JpcHRvcihzdHJlYW1EZXNjcmlwdG9yKQogewogICAgIG1f
ZGVzY3JpcHRvci0+c2V0T3duZXIodGhpcyk7CkBAIC0xMzcsNyArMTMyLDcgQEAgY29uc3QgQXRv
bWljU3RyaW5nJiBNZWRpYVN0cmVhbTo6aW50ZXJmYWNlTmFtZSgpIGNvbnN0CiAKIFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIE1lZGlhU3RyZWFtOjpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29u
c3QKIHsKLSAgICByZXR1cm4gQWN0aXZlRE9NT2JqZWN0OjpzY3JpcHRFeGVjdXRpb25Db250ZXh0
KCk7CisgICAgcmV0dXJuIENvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyOjpzY3JpcHRFeGVjdXRp
b25Db250ZXh0KCk7CiB9CiAKIEV2ZW50VGFyZ2V0RGF0YSogTWVkaWFTdHJlYW06OmV2ZW50VGFy
Z2V0RGF0YSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L01lZGlhU3RyZWFtLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlh
U3RyZWFtLmgKaW5kZXggYjQ5MzI4Ni4uZjZhOThkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uaApAQCAtMjgsNyArMjgsNyBAQAogCiAj
aWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKIAotI2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgor
I2luY2x1ZGUgIkNvbnRleHREZXN0cnVjdGlvbk9ic2VydmVyLmgiCiAjaW5jbHVkZSAiRXZlbnRU
YXJnZXQuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVhbURlc2NyaXB0b3IuaCIKICNpbmNsdWRlICJN
ZWRpYVN0cmVhbVRyYWNrTGlzdC5oIgpAQCAtMzcsOSArMzcsNyBAQAogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKLWNsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Ci0KLWNsYXNzIE1lZGlhU3Ry
ZWFtIDogcHVibGljIFJlZkNvdW50ZWQ8TWVkaWFTdHJlYW0+LCBwdWJsaWMgTWVkaWFTdHJlYW1E
ZXNjcmlwdG9yT3duZXIsIHB1YmxpYyBFdmVudFRhcmdldCwgcHVibGljIEFjdGl2ZURPTU9iamVj
dCB7CitjbGFzcyBNZWRpYVN0cmVhbSA6IHB1YmxpYyBSZWZDb3VudGVkPE1lZGlhU3RyZWFtPiwg
cHVibGljIE1lZGlhU3RyZWFtRGVzY3JpcHRvck93bmVyLCBwdWJsaWMgRXZlbnRUYXJnZXQsIHB1
YmxpYyBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlciB7CiBwdWJsaWM6CiAgICAgLy8gTXVzdCBt
YXRjaCB0aGUgY29uc3RhbnRzIGluIHRoZSAuaWRsIGZpbGUuCiAgICAgZW51bSBSZWFkeVN0YXRl
IHsK
</data>
<flag name="review"
          id="145087"
          type_id="1"
          status="+"
          setter="abarth"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140518</attachid>
            <date>2012-05-07 06:21:25 -0700</date>
            <delta_ts>2012-05-07 08:01:59 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>mediastream_cdo-land.patch</filename>
            <type>text/plain</type>
            <size>8369</size>
            <attacher name="Adam Bergkvist">adam.bergkvist</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0MjY5Yzg2Li42ODY5ZWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTQg
QEAKKzIwMTItMDUtMDcgIEFkYW0gQmVyZ2t2aXN0ICA8YWRhbS5iZXJna3Zpc3RAZXJpY3Nzb24u
Y29tPgorCisgICAgICAgIE1lZGlhU3RyZWFtIHNob3VsZCBub3QgYmUgYW4gQWN0aXZlRE9NT2Jq
ZWN0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NTE5
MQorCisgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCisKKyAgICAgICAgVGhlIG1vZGVs
IHdpdGggTWVkaWFTdHJlYW1EZXNjcmlwdG9yIGFuZCBNZWRpYVN0cmVhbSAoYW5kIExvY2FsTWVk
aWFTdHJlYW0pCisgICAgICAgIGFsbG93cyB0aGUgSmF2YVNjcmlwdCBvYmplY3RzIChNZWRpYVN0
cmVhbSBhbmQgTG9jYWxNZWRpYVN0cmVhbSkgdG8gYmUKKyAgICAgICAgY2xlYW5lZCB1cCB3aGls
ZSB0aGUgTWVkaWFTdHJlYW1EZXNjcmlwdG9yIGxpdmVzIG9uIHRvIG1hbmFnZSB0aGUgc3RyZWFt
IGluCisgICAgICAgIHRoZSBwbGF0Zm9ybS4gVGhpcyBoYXBwZW5zIGZvciBleGFtcGxlIHdoZW4g
YSBVUkwgaXMgY3JlYXRlZCB0byByZXByZXNlbnQKKyAgICAgICAgYSBNZWRpYVN0cmVhbSAodXNp
bmcgY3JlYXRlT2JqZWN0VVJMKCkpLiBJbiB0aGF0IGNhc2UsIHRoZSBNZWRpYVN0cmVhbURlc2Ny
aXB0b3IKKyAgICAgICAgaXMgcHV0IGludG8gdGhlIE1lZGlhU3RyZWFtUmVnaXN0cnkgYW5kIGV2
ZW4gdGhvdWdoIHRoZSBNZWRpYVN0cmVhbSBvYmplY3QgaXMKKyAgICAgICAgbG9zdCwgdGhlIFVS
TCBzdGlsbCB3b3JrcyBzaW5jZSB0aGUgZGVzY3JpcHRvciBpcyBrZXB0IGluIHRoZSByZWdpc3Ry
eS4KKworICAgICAgICBUaGUgY2hhbmdlcyBpbnRyb2R1Y2VkIGluIHIxMTM0NjAgKGh0dHA6Ly93
ZWJraXQub3JnL2IvODMxNDMpIHR1cm5lZAorICAgICAgICBNZWRpYVN0cmVhbSBhbmQgTG9jYWxN
ZWRpYVN0cmVhbSBpbnRvIEFjdGl2ZURPTU9iamVjdHMuIEZvciBleGFtcGxlIG9uIHBhZ2UKKyAg
ICAgICAgcmVsb2FkLCBMb2NhbE1lZGlhU3RyZWFtIGNhbGxzIE1lZGlhU3RyZWFtQ2VudGVyOjpk
aWRTdG9wTG9jYWxNZWRpYVN0cmVhbSgpCisgICAgICAgIHZpYSBpdHMgQWN0aXZlRE9NT2JqZWN0
OjpzdG9wKCkgbWV0aG9kLiBIb3dldmVyLCB3aGVuIGEgcGFnZSByZWxvYWQgb2NjdXJzLAorICAg
ICAgICB0aGUgTG9jYWxNZWRpYVN0cmVhbSBvYmplY3QgbWF5IGhhdmUgYmVlbiBjbGVhbmVkIHVw
IGFscmVhZHkgYW5kCisgICAgICAgIE1lZGlhU3RyZWFtQ2VudGVyOjpkaWRTdG9wTG9jYWxNZWRp
YVN0cmVhbSgpIHdpbGwgbm90IGJlIGNhbGxlZC4KKworICAgICAgICBPbmUgd2F5IHRvIG1ha2Ug
dGhlIGJlaGF2aW9yIGNvbnNpc3RlbnQgd291bGQgYmUgdG8gY2FsbAorICAgICAgICBNZWRpYVN0
cmVhbUNlbnRlcjo6ZGlkU3RvcExvY2FsTWVkaWFTdHJlYW0oKSB3aGVuIHRoZSBkZXNjcmlwdG9y
IGlzIGNsZWFuZWQgdXAsCisgICAgICAgIGNhdXNlIHRoZW4gd2Ugd291bGRuJ3QgYmUgZGVwZW5k
ZW50IG9uIHRoZSBMb2NhbE1lZGlhU3RyZWFtIG9iamVjdCBiZWluZyBhbGl2ZS4KKyAgICAgICAg
SG93ZXZlciwgY2FsbGluZyBNZWRpYVN0cmVhbUNlbnRlcjo6ZGlkU3RvcExvY2FsTWVkaWFTdHJl
YW0oKSBtaWdodCBub3QgYmUgdGhlCisgICAgICAgIGNvcnJlY3QgdGhpbmcgdG8gZG8gd2hlbiBh
bGwgcmVmZXJlbmNlcyB0byB0aGUgZGVzY3JpcHRvciBhcmUgbG9zdCBzaW5jZSB0aGVyZQorICAg
ICAgICBjYW4gYmUgTWVkaWFTdHJlYW0gb2JqZWN0cyBjb25zdHJ1Y3RlZCBmcm9tIHRoZSB0cmFj
a3Mgb2YgdGhlIExvY2FsTWVkaWFTdHJlYW0KKyAgICAgICAgdGhhdCBzaG91bGQgY29udGludWUg
dG8gd29yay4gTWVkaWFTdHJlYW1DZW50ZXI6OmRpZFN0b3BMb2NhbE1lZGlhU3RyZWFtKCkgd2Fz
CisgICAgICAgIGludGVuZGVkIGZvciBMb2NhbE1lZGlhU3RyZWFtLnN0b3AoKSB3aGljaCBpcyB1
c2VkIHRvIHJldm9rZSBhY2Nlc3MgdG8gZGV2aWNlczsKKyAgICAgICAgdGhhdCBzaG91bGQgbm90
IG5lY2Vzc2FyaWx5IGhhcHBlbiB3aGVuIHRoZSBkZXNjcmlwdG9yIG9mIGEgTG9jYWxNZWRpYVN0
cmVhbSBpcworICAgICAgICBjbGVhbmVkIHVwLiBJZiBpdCdzIG5lY2Vzc2FyeSBmb3Igc29tZSBw
b3J0cyB0byBzaWduYWwgdG8gdGhlIHBsYXRmb3JtIHRoYXQgYQorICAgICAgICBNZWRpYVN0cmVh
bURlc2NyaXB0b3IgaXMgY2xlYW5lZCB1cCwgdGhlbiBJIHdvdWxkIHN1Z2dlc3QgYWRkaW5nIGEg
bmV3IGZ1bmN0aW9uLAorICAgICAgICB3aWxsRGVzdHJveU1lZGlhU3RyZWFtRGVzY3JpcHRvcigp
LCB0byB0aGUgTWVkaWFTdHJlYW1DZW50ZXIgaW50ZXJmYWNlLgorCisgICAgICAgIFRoZSBjdXJy
ZW50IHJlc29sdXRpb24gaXMgdG8gbWFrZSBNZWRpYVN0cmVhbSBhIENvbnRleHREZXN0cnVjdGlv
bk9ic2VydmVyCisgICAgICAgIGluc3RlYWQgb2YgYW4gQWN0aXZlRE9NT2JqZWN0LgorCisgICAg
ICAgIEN1cnJlbnRseSBub3QgdGVzdGFibGUuCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3Ry
ZWFtL0xvY2FsTWVkaWFTdHJlYW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TG9jYWxNZWRpYVN0
cmVhbTo6Y3JlYXRlKToKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFT
dHJlYW0uaDoKKyAgICAgICAgKExvY2FsTWVkaWFTdHJlYW0pOgorICAgICAgICAqIE1vZHVsZXMv
bWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVhbS5pZGw6CisgICAgICAgICogTW9kdWxlcy9tZWRp
YXN0cmVhbS9NZWRpYVN0cmVhbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVN0cmVhbTo6
Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFtOjpNZWRpYVN0cmVhbSk6Cisg
ICAgICAgIChXZWJDb3JlOjpNZWRpYVN0cmVhbTo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCk6Cisg
ICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5oOgorCiAKIDIwMTItMDUt
MDcgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0uY3BwIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmNwcAppbmRl
eCA3NjI2NTE5Li5jY2IwZGQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVhbS5jcHAKQEAgLTM1LDkgKzM1LDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBQYXNzUmVmUHRyPExvY2FsTWVkaWFTdHJlYW0+IExvY2FsTWVk
aWFTdHJlYW06OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBN
ZWRpYVN0cmVhbVNvdXJjZVZlY3RvciYgYXVkaW9Tb3VyY2VzLCBjb25zdCBNZWRpYVN0cmVhbVNv
dXJjZVZlY3RvciYgdmlkZW9Tb3VyY2VzKQogewotICAgIFJlZlB0cjxMb2NhbE1lZGlhU3RyZWFt
PiBzdHJlYW0gPSBhZG9wdFJlZihuZXcgTG9jYWxNZWRpYVN0cmVhbShjb250ZXh0LCBhdWRpb1Nv
dXJjZXMsIHZpZGVvU291cmNlcykpOwotICAgIHN0cmVhbS0+c3VzcGVuZElmTmVlZGVkKCk7Ci0g
ICAgcmV0dXJuIHN0cmVhbS5yZWxlYXNlKCk7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBMb2Nh
bE1lZGlhU3RyZWFtKGNvbnRleHQsIGF1ZGlvU291cmNlcywgdmlkZW9Tb3VyY2VzKSk7CiB9CiAK
IExvY2FsTWVkaWFTdHJlYW06OkxvY2FsTWVkaWFTdHJlYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogY29udGV4dCwgY29uc3QgTWVkaWFTdHJlYW1Tb3VyY2VWZWN0b3ImIGF1ZGlvU291cmNlcywg
Y29uc3QgTWVkaWFTdHJlYW1Tb3VyY2VWZWN0b3ImIHZpZGVvU291cmNlcykKQEAgLTQ1LDExICs0
Myw2IEBAIExvY2FsTWVkaWFTdHJlYW06OkxvY2FsTWVkaWFTdHJlYW0oU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogY29udGV4dCwgY29uc3QgTWVkaWFTCiB7CiB9CiAKLXZvaWQgTG9jYWxNZWRpYVN0
cmVhbTo6c3RvcEZ1bmN0aW9uKCkKLXsKLSAgICBzdG9wKCk7Ci19Ci0KIHZvaWQgTG9jYWxNZWRp
YVN0cmVhbTo6c3RvcCgpCiB7CiAgICAgaWYgKHJlYWR5U3RhdGUoKSA9PSBFTkRFRCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVh
bS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlhU3RyZWFt
LmgKaW5kZXggNzc3MDMyMC4uMzg2YWIxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmgKQEAgLTM3LDEwICszNyw3IEBA
IHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxMb2NhbE1lZGlhU3RyZWFtPiBjcmVhdGUo
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IE1lZGlhU3RyZWFtU291cmNlVmVjdG9yJiBh
dWRpb1NvdXJjZXMsIGNvbnN0IE1lZGlhU3RyZWFtU291cmNlVmVjdG9yJiB2aWRlb1NvdXJjZXMp
OwogICAgIHZpcnR1YWwgfkxvY2FsTWVkaWFTdHJlYW0oKTsKIAotICAgIHZvaWQgc3RvcEZ1bmN0
aW9uKCk7Ci0KLSAgICAvLyBBY3RpdmVET01PYmplY3QKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcCgp
IE9WRVJSSURFOworICAgIHZvaWQgc3RvcCgpOwogCiAgICAgLy8gRXZlbnRUYXJnZXQKICAgICB2
aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0IE9WRVJSSURF
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1l
ZGlhU3RyZWFtLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTG9jYWxN
ZWRpYVN0cmVhbS5pZGwKaW5kZXggN2FhZGRjMy4uZTk5NDRjZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0uaWRsCkBA
IC0yOSw3ICsyOSw3IEBAIG1vZHVsZSBjb3JlIHsKICAgICAgICAgSlNHZW5lcmF0ZVRvTmF0aXZl
T2JqZWN0LAogICAgICAgICBKU0dlbmVyYXRlVG9KU09iamVjdAogICAgIF0gTG9jYWxNZWRpYVN0
cmVhbSA6IE1lZGlhU3RyZWFtIHsKLSAgICAgICAgW0ltcGxlbWVudGVkQXM9c3RvcEZ1bmN0aW9u
XSB2b2lkIHN0b3AoKTsKKyAgICAgICAgdm9pZCBzdG9wKCk7CiAgICAgfTsKIAogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLmNwcAppbmRl
eCAxMjI3YTdlLi43OWUzZjRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL01lZGlhU3RyZWFtLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL01lZGlhU3RyZWFtLmNwcApAQCAtMzIsNyArMzIsNiBAQAogI2luY2x1ZGUgIkV4
Y2VwdGlvbkNvZGUuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVhbUNlbnRlci5oIgogI2luY2x1ZGUg
Ik1lZGlhU3RyZWFtU291cmNlLmgiCi0jaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5o
IgogI2luY2x1ZGUgIlVVSUQuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNzcsMjAgKzc2
LDE2IEBAIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+IE1lZGlhU3RyZWFtOjpjcmVhdGUoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzCiAgICAgUmVmUHRyPE1lZGlhU3RyZWFtRGVz
Y3JpcHRvcj4gZGVzY3JpcHRvciA9IE1lZGlhU3RyZWFtRGVzY3JpcHRvcjo6Y3JlYXRlKGNyZWF0
ZUNhbm9uaWNhbFVVSURTdHJpbmcoKSwgYXVkaW9Tb3VyY2VzLCB2aWRlb1NvdXJjZXMpOwogICAg
IE1lZGlhU3RyZWFtQ2VudGVyOjppbnN0YW5jZSgpLmRpZENvbnN0cnVjdE1lZGlhU3RyZWFtKGRl
c2NyaXB0b3IuZ2V0KCkpOwogCi0gICAgUmVmUHRyPE1lZGlhU3RyZWFtPiBzdHJlYW0gPSBhZG9w
dFJlZihuZXcgTWVkaWFTdHJlYW0oY29udGV4dCwgZGVzY3JpcHRvci5yZWxlYXNlKCkpKTsKLSAg
ICBzdHJlYW0tPnN1c3BlbmRJZk5lZWRlZCgpOwotICAgIHJldHVybiBzdHJlYW0ucmVsZWFzZSgp
OworICAgIHJldHVybiBhZG9wdFJlZihuZXcgTWVkaWFTdHJlYW0oY29udGV4dCwgZGVzY3JpcHRv
ci5yZWxlYXNlKCkpKTsKIH0KIAogUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4gTWVkaWFTdHJlYW06
OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPE1lZGlh
U3RyZWFtRGVzY3JpcHRvcj4gc3RyZWFtRGVzY3JpcHRvcikKIHsKLSAgICBSZWZQdHI8TWVkaWFT
dHJlYW0+IHN0cmVhbSA9IGFkb3B0UmVmKG5ldyBNZWRpYVN0cmVhbShjb250ZXh0LCBzdHJlYW1E
ZXNjcmlwdG9yKSk7Ci0gICAgc3RyZWFtLT5zdXNwZW5kSWZOZWVkZWQoKTsKLSAgICByZXR1cm4g
c3RyZWFtLnJlbGVhc2UoKTsKKyAgICByZXR1cm4gYWRvcHRSZWYobmV3IE1lZGlhU3RyZWFtKGNv
bnRleHQsIHN0cmVhbURlc2NyaXB0b3IpKTsKIH0KIAogTWVkaWFTdHJlYW06Ok1lZGlhU3RyZWFt
KFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW1E
ZXNjcmlwdG9yPiBzdHJlYW1EZXNjcmlwdG9yKQotICAgIDogQWN0aXZlRE9NT2JqZWN0KGNvbnRl
eHQsIHRoaXMpCisgICAgOiBDb250ZXh0RGVzdHJ1Y3Rpb25PYnNlcnZlcihjb250ZXh0KQogICAg
ICwgbV9kZXNjcmlwdG9yKHN0cmVhbURlc2NyaXB0b3IpCiB7CiAgICAgbV9kZXNjcmlwdG9yLT5z
ZXRPd25lcih0aGlzKTsKQEAgLTEzNyw3ICsxMzIsNyBAQCBjb25zdCBBdG9taWNTdHJpbmcmIE1l
ZGlhU3RyZWFtOjppbnRlcmZhY2VOYW1lKCkgY29uc3QKIAogU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCogTWVkaWFTdHJlYW06OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdAogewotICAgIHJl
dHVybiBBY3RpdmVET01PYmplY3Q6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKKyAgICByZXR1
cm4gQ29udGV4dERlc3RydWN0aW9uT2JzZXJ2ZXI6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsK
IH0KIAogRXZlbnRUYXJnZXREYXRhKiBNZWRpYVN0cmVhbTo6ZXZlbnRUYXJnZXREYXRhKCkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0u
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uaAppbmRl
eCBiNDkzMjg2Li5mNmE5OGRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhc3RyZWFtL01lZGlhU3RyZWFtLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YXN0cmVhbS9NZWRpYVN0cmVhbS5oCkBAIC0yOCw3ICsyOCw3IEBACiAKICNpZiBFTkFCTEUoTUVE
SUFfU1RSRUFNKQogCi0jaW5jbHVkZSAiQWN0aXZlRE9NT2JqZWN0LmgiCisjaW5jbHVkZSAiQ29u
dGV4dERlc3RydWN0aW9uT2JzZXJ2ZXIuaCIKICNpbmNsdWRlICJFdmVudFRhcmdldC5oIgogI2lu
Y2x1ZGUgIk1lZGlhU3RyZWFtRGVzY3JpcHRvci5oIgogI2luY2x1ZGUgIk1lZGlhU3RyZWFtVHJh
Y2tMaXN0LmgiCkBAIC0zNyw5ICszNyw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xh
c3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKLQotY2xhc3MgTWVkaWFTdHJlYW0gOiBwdWJsaWMg
UmVmQ291bnRlZDxNZWRpYVN0cmVhbT4sIHB1YmxpYyBNZWRpYVN0cmVhbURlc2NyaXB0b3JPd25l
ciwgcHVibGljIEV2ZW50VGFyZ2V0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNzIE1l
ZGlhU3RyZWFtIDogcHVibGljIFJlZkNvdW50ZWQ8TWVkaWFTdHJlYW0+LCBwdWJsaWMgTWVkaWFT
dHJlYW1EZXNjcmlwdG9yT3duZXIsIHB1YmxpYyBFdmVudFRhcmdldCwgcHVibGljIENvbnRleHRE
ZXN0cnVjdGlvbk9ic2VydmVyIHsKIHB1YmxpYzoKICAgICAvLyBNdXN0IG1hdGNoIHRoZSBjb25z
dGFudHMgaW4gdGhlIC5pZGwgZmlsZS4KICAgICBlbnVtIFJlYWR5U3RhdGUgewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>