<?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>83143</bug_id>
          
          <creation_ts>2012-04-04 04:07:37 -0700</creation_ts>
          <short_desc>MediaStream API: MediaStreams stops proper cleanup to take place during a page reload.</short_desc>
          <delta_ts>2012-04-18 17:25:23 -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>
          
          <blocked>56459</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tommy Widenflycht">tommyw</reporter>
          <assigned_to name="Tommy Widenflycht">tommyw</assigned_to>
          <cc>abarth</cc>
    
    <cc>fischman</cc>
    
    <cc>ojan</cc>
    
    <cc>s.choi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>595396</commentid>
    <comment_count>0</comment_count>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-04-04 04:07:37 -0700</bug_when>
    <thetext>To fix this I have converted MediaStream and LocalMediaStream to be ActiveDOMObjects.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>595398</commentid>
    <comment_count>1</comment_count>
      <attachid>135553</attachid>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-04-04 04:11:25 -0700</bug_when>
    <thetext>Created attachment 135553
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>595401</commentid>
    <comment_count>2</comment_count>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-04-04 04:14:17 -0700</bug_when>
    <thetext>I think the main problem was having the ScriptExecutionContext stored in a RefPtr which likely caused a circular reference. However switching to ActiveDOMObjects also gives the automatic calling of the stop() function which is an added bonus.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>595714</commentid>
    <comment_count>3</comment_count>
      <attachid>135553</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-04-04 11:06:04 -0700</bug_when>
    <thetext>Comment on attachment 135553
Patch

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

This looks mostly fine, but I&apos;m going to mark it R- because of the IDL / ActiveDOMObject thing.  I&apos;ve also left you a couple other things to think about for the next iteration.

&gt; Source/WebCore/Modules/mediastream/LocalMediaStream.h:41
&gt; +    // ActiveDOMObject and idl

Woah.  Should we use [ImplementedAs] to avoid having this one function play both roles?  It&apos;s fine if one calls the other, but it&apos;s better to do that explicitly rather than having a name collision like this.

&gt; Source/WebCore/Modules/mediastream/MediaStream.cpp:135
&gt; +void MediaStream::stop()
&gt; +{
&gt; +}

If you don&apos;t need stop(), you can just use a ContextDestructionObserver rather than ActiveDOMObject.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>596422</commentid>
    <comment_count>4</comment_count>
      <attachid>135788</attachid>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-04-05 02:41:09 -0700</bug_when>
    <thetext>Created attachment 135788
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>596425</commentid>
    <comment_count>5</comment_count>
      <attachid>135553</attachid>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2012-04-05 02:43:32 -0700</bug_when>
    <thetext>Comment on attachment 135553
Patch

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

&gt;&gt; Source/WebCore/Modules/mediastream/LocalMediaStream.h:41
&gt;&gt; +    // ActiveDOMObject and idl
&gt; 
&gt; Woah.  Should we use [ImplementedAs] to avoid having this one function play both roles?  It&apos;s fine if one calls the other, but it&apos;s better to do that explicitly rather than having a name collision like this.

Fixed. And I learnt something new today as well :)

&gt;&gt; Source/WebCore/Modules/mediastream/MediaStream.cpp:135
&gt;&gt; +}
&gt; 
&gt; If you don&apos;t need stop(), you can just use a ContextDestructionObserver rather than ActiveDOMObject.

MediaStream doesn&apos;t but LocalMediaStream does. Removed the empty implementation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>597442</commentid>
    <comment_count>6</comment_count>
      <attachid>135788</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-04-06 10:13:36 -0700</bug_when>
    <thetext>Comment on attachment 135788
Patch

Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>597489</commentid>
    <comment_count>7</comment_count>
      <attachid>135788</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-06 11:07:32 -0700</bug_when>
    <thetext>Comment on attachment 135788
Patch

Clearing flags on attachment: 135788

Committed r113460: &lt;http://trac.webkit.org/changeset/113460&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>597490</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-06 11:07:37 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>135553</attachid>
            <date>2012-04-04 04:11:25 -0700</date>
            <delta_ts>2012-04-05 02:43:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-83143-20120404131123.patch</filename>
            <type>text/plain</type>
            <size>7767</size>
            <attacher name="Tommy Widenflycht">tommyw</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyODM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjg1YWQwNmU5ZGQxNDVi
YzYzYzNlNWY2Y2U5MjNlMzU2ODZiZWYzMS4uZjBlODZhNDAxMmViZTJkNDE3YjFkNzI2NjkyMDE2
NzY5NzQzOGI3YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTA0LTA0ICBUb21t
eSBXaWRlbmZseWNodCAgPHRvbW15d0Bnb29nbGUuY29tPgorCisgICAgICAgIE1lZGlhU3RyZWFt
IEFQSTogTWVkaWFTdHJlYW1zIHN0b3BzIHByb3BlciBjbGVhbnVwIHRvIHRha2UgcGxhY2UgZHVy
aW5nIGEgcGFnZSByZWxvYWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD04MzE0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFRvIGZpeCB0aGlzIEkgaGF2ZSBjb252ZXJ0ZWQgTWVkaWFTdHJlYW0gYW5kIExv
Y2FsTWVkaWFTdHJlYW0gdG8gYmUgQWN0aXZlRE9NT2JqZWN0cy4KKworICAgICAgICBIYXZlIG5v
IGlkZWEgaG93IHRvIHdyaXRlIGEgdGVzdCB0aGF0IHN1Y2Nlc2Z1bGx5IHZlcmlmaWVzIHRoaXMu
IEkgaGF2ZSBkb25lIG1hbnVhbCB0ZXN0aW5nCisgICAgICAgIHRvIHZlcmlmeSB0aGF0IHByb3Bl
ciB0ZWFyLWRvd24gbm93IHRha2VzIHBsYWNlLgorCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0
cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxvY2FsTWVkaWFT
dHJlYW06OmNyZWF0ZSk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlh
U3RyZWFtLmg6CisgICAgICAgIChMb2NhbE1lZGlhU3RyZWFtKToKKyAgICAgICAgKiBNb2R1bGVz
L21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU3Ry
ZWFtOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW06Ok1lZGlhU3RyZWFt
KToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFtOjpzdG9wKToKKyAgICAgICAgKFdlYkNv
cmUpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW06OnNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQpOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uaDoKKyAgICAg
ICAgKE1lZGlhU3RyZWFtKToKKwogMjAxMi0wNC0wMiAgUGF0cmljayBHYW5zdGVyZXIgIDxwYXJv
Z2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBCdWlsZCBmaXggZm9yIEVOQUJMRShTVkcpICYmICFF
TkFCTEUoRklMVEVSUykgYWZ0ZXIgcjExMjgxMy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVhbS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0uY3BwCmluZGV4IDMxYmEyNWJm
Y2NlM2M5M2UxYmVhOTU4MWE5ZDBkMGI4M2RlYzgxYjguLjJjYjMzY2RhM2MyYmYxNThhMDEwMjcy
MzY1OWFhYzY2NTJmYmRkOTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVhbS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmNwcApAQCAtMzUsNyArMzUsOSBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIFBhc3NSZWZQdHI8TG9jYWxNZWRpYVN0cmVhbT4gTG9jYWxNZWRp
YVN0cmVhbTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNvbnN0IE1l
ZGlhU3RyZWFtU291cmNlVmVjdG9yJiBhdWRpb1NvdXJjZXMsIGNvbnN0IE1lZGlhU3RyZWFtU291
cmNlVmVjdG9yJiB2aWRlb1NvdXJjZXMpCiB7Ci0gICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBMb2Nh
bE1lZGlhU3RyZWFtKGNvbnRleHQsIGF1ZGlvU291cmNlcywgdmlkZW9Tb3VyY2VzKSk7CisgICAg
UmVmUHRyPExvY2FsTWVkaWFTdHJlYW0+IHN0cmVhbSA9IGFkb3B0UmVmKG5ldyBMb2NhbE1lZGlh
U3RyZWFtKGNvbnRleHQsIGF1ZGlvU291cmNlcywgdmlkZW9Tb3VyY2VzKSk7CisgICAgc3RyZWFt
LT5zdXNwZW5kSWZOZWVkZWQoKTsKKyAgICByZXR1cm4gc3RyZWFtLnJlbGVhc2UoKTsKIH0KIAog
TG9jYWxNZWRpYVN0cmVhbTo6TG9jYWxNZWRpYVN0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBjb250ZXh0LCBjb25zdCBNZWRpYVN0cmVhbVNvdXJjZVZlY3RvciYgYXVkaW9Tb3VyY2VzLCBj
b25zdCBNZWRpYVN0cmVhbVNvdXJjZVZlY3RvciYgdmlkZW9Tb3VyY2VzKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmggYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0uaAppbmRl
eCA4Yzk1ODA4NWFiYjkxYzE1MzViYjdlM2JlMDMzYzY2NGM2YTViNWY4Li45ODZhZTM5MTAxNDgx
NjEyMGI5OTQ1YTllOTNmZjYxYTZlN2MwOWY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0uaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0uaApAQCAtMzgsMTAgKzM4LDEx
IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxMb2NhbE1lZGlhU3RyZWFtPiBjcmVh
dGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IE1lZGlhU3RyZWFtU291cmNlVmVjdG9y
JiBhdWRpb1NvdXJjZXMsIGNvbnN0IE1lZGlhU3RyZWFtU291cmNlVmVjdG9yJiB2aWRlb1NvdXJj
ZXMpOwogICAgIHZpcnR1YWwgfkxvY2FsTWVkaWFTdHJlYW0oKTsKIAotICAgIHZvaWQgc3RvcCgp
OworICAgIC8vIEFjdGl2ZURPTU9iamVjdCBhbmQgaWRsCisgICAgdmlydHVhbCB2b2lkIHN0b3Ao
KSBPVkVSUklERTsKIAogICAgIC8vIEV2ZW50VGFyZ2V0Ci0gICAgdmlydHVhbCBjb25zdCBBdG9t
aWNTdHJpbmcmIGludGVyZmFjZU5hbWUoKSBjb25zdDsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21p
Y1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0IE9WRVJSSURFOwogCiBwcml2YXRlOgogICAg
IExvY2FsTWVkaWFTdHJlYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNvbnN0IE1lZGlhU3Ry
ZWFtU291cmNlVmVjdG9yJiBhdWRpb1NvdXJjZXMsIGNvbnN0IE1lZGlhU3RyZWFtU291cmNlVmVj
dG9yJiB2aWRlb1NvdXJjZXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
c3RyZWFtL01lZGlhU3RyZWFtLmNwcAppbmRleCAwMWYxZTA0ZTYzMzM4MzgwNTQxNmQ1Y2E2NDRi
MTllY2IyMWE4MzJkLi4zYjRhMGQwNWZjMTM3YTBlOTVmMjc4MDY2Y2RkYjhlMTA1ZTM0NDRiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFt
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFt
LmNwcApAQCAtNzYsMTYgKzc2LDIxIEBAIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+IE1lZGlhU3Ry
ZWFtOjpjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFzCiAKICAgICBS
ZWZQdHI8TWVkaWFTdHJlYW1EZXNjcmlwdG9yPiBkZXNjcmlwdG9yID0gTWVkaWFTdHJlYW1EZXNj
cmlwdG9yOjpjcmVhdGUoY3JlYXRlQ2Fub25pY2FsVVVJRFN0cmluZygpLCBhdWRpb1NvdXJjZXMs
IHZpZGVvU291cmNlcyk7CiAgICAgTWVkaWFTdHJlYW1DZW50ZXI6Omluc3RhbmNlKCkuZGlkQ29u
c3RydWN0TWVkaWFTdHJlYW0oZGVzY3JpcHRvci5nZXQoKSk7Ci0gICAgcmV0dXJuIGFkb3B0UmVm
KG5ldyBNZWRpYVN0cmVhbShjb250ZXh0LCBkZXNjcmlwdG9yLnJlbGVhc2UoKSkpOworCisgICAg
UmVmUHRyPE1lZGlhU3RyZWFtPiBzdHJlYW0gPSBhZG9wdFJlZihuZXcgTWVkaWFTdHJlYW0oY29u
dGV4dCwgZGVzY3JpcHRvci5yZWxlYXNlKCkpKTsKKyAgICBzdHJlYW0tPnN1c3BlbmRJZk5lZWRl
ZCgpOworICAgIHJldHVybiBzdHJlYW0ucmVsZWFzZSgpOwogfQogCiBQYXNzUmVmUHRyPE1lZGlh
U3RyZWFtPiBNZWRpYVN0cmVhbTo6Y3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRl
eHQsIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW1EZXNjcmlwdG9yPiBzdHJlYW1EZXNjcmlwdG9yKQog
ewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgTWVkaWFTdHJlYW0oY29udGV4dCwgc3RyZWFtRGVz
Y3JpcHRvcikpOworICAgIFJlZlB0cjxNZWRpYVN0cmVhbT4gc3RyZWFtID0gYWRvcHRSZWYobmV3
IE1lZGlhU3RyZWFtKGNvbnRleHQsIHN0cmVhbURlc2NyaXB0b3IpKTsKKyAgICBzdHJlYW0tPnN1
c3BlbmRJZk5lZWRlZCgpOworICAgIHJldHVybiBzdHJlYW0ucmVsZWFzZSgpOwogfQogCiBNZWRp
YVN0cmVhbTo6TWVkaWFTdHJlYW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUGFz
c1JlZlB0cjxNZWRpYVN0cmVhbURlc2NyaXB0b3I+IHN0cmVhbURlc2NyaXB0b3IpCi0gICAgOiBt
X3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQoY29udGV4dCkKKyAgICA6IEFjdGl2ZURPTU9iamVjdChj
b250ZXh0LCB0aGlzKQogICAgICwgbV9kZXNjcmlwdG9yKHN0cmVhbURlc2NyaXB0b3IpCiB7CiAg
ICAgbV9kZXNjcmlwdG9yLT5zZXRPd25lcih0aGlzKTsKQEAgLTEyNSw2ICsxMzAsMTAgQEAgdm9p
ZCBNZWRpYVN0cmVhbTo6c3RyZWFtRW5kZWQoKQogICAgIGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNy
ZWF0ZShldmVudE5hbWVzKCkuZW5kZWRFdmVudCwgZmFsc2UsIGZhbHNlKSk7CiB9CiAKK3ZvaWQg
TWVkaWFTdHJlYW06OnN0b3AoKQoreworfQorCiBjb25zdCBBdG9taWNTdHJpbmcmIE1lZGlhU3Ry
ZWFtOjppbnRlcmZhY2VOYW1lKCkgY29uc3QKIHsKICAgICByZXR1cm4gZXZlbnROYW1lcygpLmlu
dGVyZmFjZUZvck1lZGlhU3RyZWFtOwpAQCAtMTMyLDcgKzE0MSw3IEBAIGNvbnN0IEF0b21pY1N0
cmluZyYgTWVkaWFTdHJlYW06OmludGVyZmFjZU5hbWUoKSBjb25zdAogCiBTY3JpcHRFeGVjdXRp
b25Db250ZXh0KiBNZWRpYVN0cmVhbTo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0CiB7
Ci0gICAgcmV0dXJuIG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC5nZXQoKTsKKyAgICByZXR1cm4g
QWN0aXZlRE9NT2JqZWN0OjpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7CiB9CiAKIEV2ZW50VGFy
Z2V0RGF0YSogTWVkaWFTdHJlYW06OmV2ZW50VGFyZ2V0RGF0YSgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLmggYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3RyZWFtLmgKaW5kZXggMGRiNDc4NzlmMTc0
ZjNlMmZlMjJiODkwMDE3MGIwNDc1M2U3OWI4NS4uNzU4MDI4M2ZhMjBiN2I5ZWVjOTgzMzJlN2Fj
YmNjMjBlZjEwMGU5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9NZWRpYVN0cmVhbS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJl
YW0vTWVkaWFTdHJlYW0uaApAQCAtMjgsNiArMjgsNyBAQAogCiAjaWYgRU5BQkxFKE1FRElBX1NU
UkVBTSkKIAorI2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgogI2luY2x1ZGUgIkV2ZW50VGFy
Z2V0LmgiCiAjaW5jbHVkZSAiTWVkaWFTdHJlYW1EZXNjcmlwdG9yLmgiCiAjaW5jbHVkZSAiTWVk
aWFTdHJlYW1UcmFja0xpc3QuaCIKQEAgLTM4LDcgKzM5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogCi1jbGFzcyBNZWRpYVN0cmVhbSA6
IHB1YmxpYyBSZWZDb3VudGVkPE1lZGlhU3RyZWFtPiwgcHVibGljIE1lZGlhU3RyZWFtRGVzY3Jp
cHRvck93bmVyLCBwdWJsaWMgRXZlbnRUYXJnZXQgeworY2xhc3MgTWVkaWFTdHJlYW0gOiBwdWJs
aWMgUmVmQ291bnRlZDxNZWRpYVN0cmVhbT4sIHB1YmxpYyBNZWRpYVN0cmVhbURlc2NyaXB0b3JP
d25lciwgcHVibGljIEV2ZW50VGFyZ2V0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKIHB1Ymxp
YzoKICAgICAvLyBNdXN0IG1hdGNoIHRoZSBjb25zdGFudHMgaW4gdGhlIC5pZGwgZmlsZS4KICAg
ICBlbnVtIFJlYWR5U3RhdGUgewpAQCAtNjMsOCArNjQsMTEgQEAgcHVibGljOgogICAgIE1lZGlh
U3RyZWFtRGVzY3JpcHRvciogZGVzY3JpcHRvcigpIGNvbnN0IHsgcmV0dXJuIG1fZGVzY3JpcHRv
ci5nZXQoKTsgfQogCiAgICAgLy8gRXZlbnRUYXJnZXQKLSAgICB2aXJ0dWFsIGNvbnN0IEF0b21p
Y1N0cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0OwotICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0OworICAgIHZpcnR1YWwg
Y29uc3QgQXRvbWljU3RyaW5nJiBpbnRlcmZhY2VOYW1lKCkgY29uc3QgT1ZFUlJJREU7CisgICAg
dmlydHVhbCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkg
Y29uc3QgT1ZFUlJJREU7CisKKyAgICAvLyBBY3RpdmVET01PYmplY3QKKyAgICB2aXJ0dWFsIHZv
aWQgc3RvcCgpIE9WRVJSSURFOwogCiAgICAgdXNpbmcgUmVmQ291bnRlZDxNZWRpYVN0cmVhbT46
OnJlZjsKICAgICB1c2luZyBSZWZDb3VudGVkPE1lZGlhU3RyZWFtPjo6ZGVyZWY7CkBAIC03Miwx
OSArNzYsMTcgQEAgcHVibGljOgogcHJvdGVjdGVkOgogICAgIE1lZGlhU3RyZWFtKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtRGVzY3JpcHRvcj4pOwogCi0g
ICAgLy8gRXZlbnRUYXJnZXQgaW1wbGVtZW50YXRpb24uCi0gICAgdmlydHVhbCBFdmVudFRhcmdl
dERhdGEqIGV2ZW50VGFyZ2V0RGF0YSgpOwotICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBl
bnN1cmVFdmVudFRhcmdldERhdGEoKTsKKyAgICAvLyBFdmVudFRhcmdldAorICAgIHZpcnR1YWwg
RXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKSBPVkVSUklERTsKKyAgICB2aXJ0dWFs
IEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZlbnRUYXJnZXREYXRhKCkgT1ZFUlJJREU7CiAKIHBy
aXZhdGU6Ci0gICAgLy8gRXZlbnRUYXJnZXQgaW1wbGVtZW50YXRpb24uCi0gICAgdmlydHVhbCB2
b2lkIHJlZkV2ZW50VGFyZ2V0KCkgeyByZWYoKTsgfQotICAgIHZpcnR1YWwgdm9pZCBkZXJlZkV2
ZW50VGFyZ2V0KCkgeyBkZXJlZigpOyB9CisgICAgLy8gRXZlbnRUYXJnZXQKKyAgICB2aXJ0dWFs
IHZvaWQgcmVmRXZlbnRUYXJnZXQoKSBPVkVSUklERSB7IHJlZigpOyB9CisgICAgdmlydHVhbCB2
b2lkIGRlcmVmRXZlbnRUYXJnZXQoKSBPVkVSUklERSB7IGRlcmVmKCk7IH0KIAogICAgIEV2ZW50
VGFyZ2V0RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKIAotICAgIFJlZlB0cjxTY3JpcHRFeGVjdXRp
b25Db250ZXh0PiBtX3NjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7Ci0KICAgICBSZWZQdHI8TWVkaWFT
dHJlYW1UcmFja0xpc3Q+IG1fYXVkaW9UcmFja3M7CiAgICAgUmVmUHRyPE1lZGlhU3RyZWFtVHJh
Y2tMaXN0PiBtX3ZpZGVvVHJhY2tzOwogICAgIFJlZlB0cjxNZWRpYVN0cmVhbURlc2NyaXB0b3I+
IG1fZGVzY3JpcHRvcjsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>135788</attachid>
            <date>2012-04-05 02:41:09 -0700</date>
            <delta_ts>2012-04-06 11:07:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-83143-20120405114107.patch</filename>
            <type>text/plain</type>
            <size>8319</size>
            <attacher name="Tommy Widenflycht">tommyw</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEzMzA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDEwYzAwZTcwOGVkY2Mz
YjJlZWIzN2ZkZTc1NDMwYzk1NjIwNzBjYS4uODZmYTM2YmFjNTMzYWM0MWI4ZmFmMzY2Yzk2Njcx
ZDg2OGY2OTJhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTA0LTA1ICBUb21t
eSBXaWRlbmZseWNodCAgPHRvbW15d0Bnb29nbGUuY29tPgorCisgICAgICAgIE1lZGlhU3RyZWFt
IEFQSTogTWVkaWFTdHJlYW1zIHN0b3BzIHByb3BlciBjbGVhbnVwIHRvIHRha2UgcGxhY2UgZHVy
aW5nIGEgcGFnZSByZWxvYWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD04MzE0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFRvIGZpeCB0aGlzIEkgaGF2ZSBjb252ZXJ0ZWQgTWVkaWFTdHJlYW0gYW5kIExv
Y2FsTWVkaWFTdHJlYW0gdG8gYmUgQWN0aXZlRE9NT2JqZWN0cy4KKworICAgICAgICBIYXZlIG5v
IGlkZWEgaG93IHRvIHdyaXRlIGEgdGVzdCB0aGF0IHN1Y2Nlc2Z1bGx5IHZlcmlmaWVzIHRoaXMu
IEkgaGF2ZSBkb25lIG1hbnVhbCB0ZXN0aW5nCisgICAgICAgIHRvIHZlcmlmeSB0aGF0IHByb3Bl
ciB0ZWFyLWRvd24gbm93IHRha2VzIHBsYWNlLgorCisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0
cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxvY2FsTWVkaWFT
dHJlYW06OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpMb2NhbE1lZGlhU3RyZWFtOjpzdG9w
RnVuY3Rpb24pOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogTW9kdWxlcy9tZWRpYXN0
cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmg6CisgICAgICAgIChMb2NhbE1lZGlhU3RyZWFtKToKKyAg
ICAgICAgKiBNb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0uaWRsOgorICAgICAg
ICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6TWVkaWFTdHJlYW06OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVN0cmVhbTo6
TWVkaWFTdHJlYW0pOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW06OnNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQpOgorICAgICAgICAqIE1vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0u
aDoKKyAgICAgICAgKE1lZGlhU3RyZWFtKToKKwogMjAxMi0wNC0wNSAgU3VkYXJzYW5hIE5hZ2lu
ZW5pICA8c3VkYXJzYW5hLm5hZ2luZW5pQGxpbnV4LmludGVsLmNvbT4KIAogICAgICAgICBbRUZM
XSBrZXljb2RlIHRyYW5zbGF0aW9uIGlzIHdyb25nIGZvciBmdW5jdGlvbiBrZXlzCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0u
Y3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9Mb2NhbE1lZGlhU3RyZWFt
LmNwcAppbmRleCAzMWJhMjViZmNjZTNjOTNlMWJlYTk1ODFhOWQwZDBiODNkZWM4MWI4Li45MmZh
Njk4NWIxYjg0YTMzZmZlMmY2OWFlNWY3ZjliZDliODI3ZmMxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFTdHJlYW0uY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTG9jYWxNZWRpYVN0cmVhbS5jcHAKQEAg
LTM1LDcgKzM1LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBQYXNzUmVmUHRyPExvY2FsTWVk
aWFTdHJlYW0+IExvY2FsTWVkaWFTdHJlYW06OmNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBjb250ZXh0LCBjb25zdCBNZWRpYVN0cmVhbVNvdXJjZVZlY3RvciYgYXVkaW9Tb3VyY2VzLCBj
b25zdCBNZWRpYVN0cmVhbVNvdXJjZVZlY3RvciYgdmlkZW9Tb3VyY2VzKQogewotICAgIHJldHVy
biBhZG9wdFJlZihuZXcgTG9jYWxNZWRpYVN0cmVhbShjb250ZXh0LCBhdWRpb1NvdXJjZXMsIHZp
ZGVvU291cmNlcykpOworICAgIFJlZlB0cjxMb2NhbE1lZGlhU3RyZWFtPiBzdHJlYW0gPSBhZG9w
dFJlZihuZXcgTG9jYWxNZWRpYVN0cmVhbShjb250ZXh0LCBhdWRpb1NvdXJjZXMsIHZpZGVvU291
cmNlcykpOworICAgIHN0cmVhbS0+c3VzcGVuZElmTmVlZGVkKCk7CisgICAgcmV0dXJuIHN0cmVh
bS5yZWxlYXNlKCk7CiB9CiAKIExvY2FsTWVkaWFTdHJlYW06OkxvY2FsTWVkaWFTdHJlYW0oU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgY29uc3QgTWVkaWFTdHJlYW1Tb3VyY2VWZWN0
b3ImIGF1ZGlvU291cmNlcywgY29uc3QgTWVkaWFTdHJlYW1Tb3VyY2VWZWN0b3ImIHZpZGVvU291
cmNlcykKQEAgLTQ0LDYgKzQ2LDExIEBAIExvY2FsTWVkaWFTdHJlYW06OkxvY2FsTWVkaWFTdHJl
YW0oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgY29uc3QgTWVkaWFTCiB7CiB9CiAK
K3ZvaWQgTG9jYWxNZWRpYVN0cmVhbTo6c3RvcEZ1bmN0aW9uKCkKK3sKKyAgICBzdG9wKCk7Cit9
CisKIHZvaWQgTG9jYWxNZWRpYVN0cmVhbTo6c3RvcCgpCiB7CiAgICAgaWYgKCFtX3N0b3BUaW1l
ci5pc0FjdGl2ZSgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0
cmVhbS9Mb2NhbE1lZGlhU3RyZWFtLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3Ry
ZWFtL0xvY2FsTWVkaWFTdHJlYW0uaAppbmRleCA4Yzk1ODA4NWFiYjkxYzE1MzViYjdlM2JlMDMz
YzY2NGM2YTViNWY4Li43NjE4MDVlY2EwMjgyYzYzYzY5YzMwMGIxYjdhMjMwYmYyZmFhNWVkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFT
dHJlYW0uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVk
aWFTdHJlYW0uaApAQCAtMzgsMTAgKzM4LDEzIEBAIHB1YmxpYzoKICAgICBzdGF0aWMgUGFzc1Jl
ZlB0cjxMb2NhbE1lZGlhU3RyZWFtPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIGNv
bnN0IE1lZGlhU3RyZWFtU291cmNlVmVjdG9yJiBhdWRpb1NvdXJjZXMsIGNvbnN0IE1lZGlhU3Ry
ZWFtU291cmNlVmVjdG9yJiB2aWRlb1NvdXJjZXMpOwogICAgIHZpcnR1YWwgfkxvY2FsTWVkaWFT
dHJlYW0oKTsKIAotICAgIHZvaWQgc3RvcCgpOworICAgIHZvaWQgc3RvcEZ1bmN0aW9uKCk7CisK
KyAgICAvLyBBY3RpdmVET01PYmplY3QKKyAgICB2aXJ0dWFsIHZvaWQgc3RvcCgpIE9WRVJSSURF
OwogCiAgICAgLy8gRXZlbnRUYXJnZXQKLSAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYg
aW50ZXJmYWNlTmFtZSgpIGNvbnN0OworICAgIHZpcnR1YWwgY29uc3QgQXRvbWljU3RyaW5nJiBp
bnRlcmZhY2VOYW1lKCkgY29uc3QgT1ZFUlJJREU7CiAKIHByaXZhdGU6CiAgICAgTG9jYWxNZWRp
YVN0cmVhbShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgY29uc3QgTWVkaWFTdHJlYW1Tb3VyY2VW
ZWN0b3ImIGF1ZGlvU291cmNlcywgY29uc3QgTWVkaWFTdHJlYW1Tb3VyY2VWZWN0b3ImIHZpZGVv
U291cmNlcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFt
L0xvY2FsTWVkaWFTdHJlYW0uaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVh
bS9Mb2NhbE1lZGlhU3RyZWFtLmlkbAppbmRleCA0OTM2MGZmZjJlNWFlMjE1NGMyNDkzMTgwZDIy
OGVmZTc1NmNlZGVjLi5mZGI4MjI1NzBhYmJmYzhkMTBiMjBhNTJiZGZmNGQ3NTYzOTI2MDVkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL0xvY2FsTWVkaWFT
dHJlYW0uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTG9jYWxN
ZWRpYVN0cmVhbS5pZGwKQEAgLTMwLDcgKzMwLDcgQEAgbW9kdWxlIGNvcmUgewogICAgICAgICBF
dmVudFRhcmdldCwKICAgICAgICAgSlNHZW5lcmF0ZVRvSlNPYmplY3QKICAgICBdIExvY2FsTWVk
aWFTdHJlYW0gOiBNZWRpYVN0cmVhbSB7Ci0gICAgICAgIHZvaWQgc3RvcCgpOworICAgICAgICBb
SW1wbGVtZW50ZWRBcz1zdG9wRnVuY3Rpb25dIHZvaWQgc3RvcCgpOwogICAgIH07CiAKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0u
Y3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5jcHAK
aW5kZXggMDFmMWUwNGU2MzMzODM4MDU0MTZkNWNhNjQ0YjE5ZWNiMjFhODMyZC4uMTIyN2E3ZTc1
NTE3ZDhjOTgyN2ZiMWNiNDZlYWQ2NjQ3ZTFlNDc2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS5jcHAKQEAgLTc2LDE2ICs3NiwyMSBA
QCBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBNZWRpYVN0cmVhbTo6Y3JlYXRlKFNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhcwogCiAgICAgUmVmUHRyPE1lZGlhU3RyZWFtRGVzY3Jp
cHRvcj4gZGVzY3JpcHRvciA9IE1lZGlhU3RyZWFtRGVzY3JpcHRvcjo6Y3JlYXRlKGNyZWF0ZUNh
bm9uaWNhbFVVSURTdHJpbmcoKSwgYXVkaW9Tb3VyY2VzLCB2aWRlb1NvdXJjZXMpOwogICAgIE1l
ZGlhU3RyZWFtQ2VudGVyOjppbnN0YW5jZSgpLmRpZENvbnN0cnVjdE1lZGlhU3RyZWFtKGRlc2Ny
aXB0b3IuZ2V0KCkpOwotICAgIHJldHVybiBhZG9wdFJlZihuZXcgTWVkaWFTdHJlYW0oY29udGV4
dCwgZGVzY3JpcHRvci5yZWxlYXNlKCkpKTsKKworICAgIFJlZlB0cjxNZWRpYVN0cmVhbT4gc3Ry
ZWFtID0gYWRvcHRSZWYobmV3IE1lZGlhU3RyZWFtKGNvbnRleHQsIGRlc2NyaXB0b3IucmVsZWFz
ZSgpKSk7CisgICAgc3RyZWFtLT5zdXNwZW5kSWZOZWVkZWQoKTsKKyAgICByZXR1cm4gc3RyZWFt
LnJlbGVhc2UoKTsKIH0KIAogUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4gTWVkaWFTdHJlYW06OmNy
ZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPE1lZGlhU3Ry
ZWFtRGVzY3JpcHRvcj4gc3RyZWFtRGVzY3JpcHRvcikKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYo
bmV3IE1lZGlhU3RyZWFtKGNvbnRleHQsIHN0cmVhbURlc2NyaXB0b3IpKTsKKyAgICBSZWZQdHI8
TWVkaWFTdHJlYW0+IHN0cmVhbSA9IGFkb3B0UmVmKG5ldyBNZWRpYVN0cmVhbShjb250ZXh0LCBz
dHJlYW1EZXNjcmlwdG9yKSk7CisgICAgc3RyZWFtLT5zdXNwZW5kSWZOZWVkZWQoKTsKKyAgICBy
ZXR1cm4gc3RyZWFtLnJlbGVhc2UoKTsKIH0KIAogTWVkaWFTdHJlYW06Ok1lZGlhU3RyZWFtKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW1EZXNj
cmlwdG9yPiBzdHJlYW1EZXNjcmlwdG9yKQotICAgIDogbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0
KGNvbnRleHQpCisgICAgOiBBY3RpdmVET01PYmplY3QoY29udGV4dCwgdGhpcykKICAgICAsIG1f
ZGVzY3JpcHRvcihzdHJlYW1EZXNjcmlwdG9yKQogewogICAgIG1fZGVzY3JpcHRvci0+c2V0T3du
ZXIodGhpcyk7CkBAIC0xMzIsNyArMTM3LDcgQEAgY29uc3QgQXRvbWljU3RyaW5nJiBNZWRpYVN0
cmVhbTo6aW50ZXJmYWNlTmFtZSgpIGNvbnN0CiAKIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIE1l
ZGlhU3RyZWFtOjpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3QKIHsKLSAgICByZXR1cm4g
bV9zY3JpcHRFeGVjdXRpb25Db250ZXh0LmdldCgpOworICAgIHJldHVybiBBY3RpdmVET01PYmpl
Y3Q6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKIH0KIAogRXZlbnRUYXJnZXREYXRhKiBNZWRp
YVN0cmVhbTo6ZXZlbnRUYXJnZXREYXRhKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0vTWVkaWFTdHJlYW0uaAppbmRleCAwZGI0Nzg3OWYxNzRmM2UyZmUyMmI4OTAw
MTcwYjA0NzUzZTc5Yjg1Li5iNDkzMjg2ZWJjNzcyZjU5ZWJiMTNlYThlYTNlODQxMDc3YjJhNjcw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtL01lZGlhU3Ry
ZWFtLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYXN0cmVhbS9NZWRpYVN0cmVh
bS5oCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogCisjaW5j
bHVkZSAiQWN0aXZlRE9NT2JqZWN0LmgiCiAjaW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKICNpbmNs
dWRlICJNZWRpYVN0cmVhbURlc2NyaXB0b3IuaCIKICNpbmNsdWRlICJNZWRpYVN0cmVhbVRyYWNr
TGlzdC5oIgpAQCAtMzgsNyArMzksNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiAKLWNsYXNzIE1lZGlhU3RyZWFtIDogcHVibGljIFJlZkNv
dW50ZWQ8TWVkaWFTdHJlYW0+LCBwdWJsaWMgTWVkaWFTdHJlYW1EZXNjcmlwdG9yT3duZXIsIHB1
YmxpYyBFdmVudFRhcmdldCB7CitjbGFzcyBNZWRpYVN0cmVhbSA6IHB1YmxpYyBSZWZDb3VudGVk
PE1lZGlhU3RyZWFtPiwgcHVibGljIE1lZGlhU3RyZWFtRGVzY3JpcHRvck93bmVyLCBwdWJsaWMg
RXZlbnRUYXJnZXQsIHB1YmxpYyBBY3RpdmVET01PYmplY3QgewogcHVibGljOgogICAgIC8vIE11
c3QgbWF0Y2ggdGhlIGNvbnN0YW50cyBpbiB0aGUgLmlkbCBmaWxlLgogICAgIGVudW0gUmVhZHlT
dGF0ZSB7CkBAIC02Myw4ICs2NCw4IEBAIHB1YmxpYzoKICAgICBNZWRpYVN0cmVhbURlc2NyaXB0
b3IqIGRlc2NyaXB0b3IoKSBjb25zdCB7IHJldHVybiBtX2Rlc2NyaXB0b3IuZ2V0KCk7IH0KIAog
ICAgIC8vIEV2ZW50VGFyZ2V0Ci0gICAgdmlydHVhbCBjb25zdCBBdG9taWNTdHJpbmcmIGludGVy
ZmFjZU5hbWUoKSBjb25zdDsKLSAgICB2aXJ0dWFsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdDsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0
cmluZyYgaW50ZXJmYWNlTmFtZSgpIGNvbnN0IE9WRVJSSURFOworICAgIHZpcnR1YWwgU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IE9WRVJSSURF
OwogCiAgICAgdXNpbmcgUmVmQ291bnRlZDxNZWRpYVN0cmVhbT46OnJlZjsKICAgICB1c2luZyBS
ZWZDb3VudGVkPE1lZGlhU3RyZWFtPjo6ZGVyZWY7CkBAIC03MiwxOSArNzMsMTcgQEAgcHVibGlj
OgogcHJvdGVjdGVkOgogICAgIE1lZGlhU3RyZWFtKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQ
YXNzUmVmUHRyPE1lZGlhU3RyZWFtRGVzY3JpcHRvcj4pOwogCi0gICAgLy8gRXZlbnRUYXJnZXQg
aW1wbGVtZW50YXRpb24uCi0gICAgdmlydHVhbCBFdmVudFRhcmdldERhdGEqIGV2ZW50VGFyZ2V0
RGF0YSgpOwotICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBlbnN1cmVFdmVudFRhcmdldERh
dGEoKTsKKyAgICAvLyBFdmVudFRhcmdldAorICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBl
dmVudFRhcmdldERhdGEoKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSog
ZW5zdXJlRXZlbnRUYXJnZXREYXRhKCkgT1ZFUlJJREU7CiAKIHByaXZhdGU6Ci0gICAgLy8gRXZl
bnRUYXJnZXQgaW1wbGVtZW50YXRpb24uCi0gICAgdmlydHVhbCB2b2lkIHJlZkV2ZW50VGFyZ2V0
KCkgeyByZWYoKTsgfQotICAgIHZpcnR1YWwgdm9pZCBkZXJlZkV2ZW50VGFyZ2V0KCkgeyBkZXJl
ZigpOyB9CisgICAgLy8gRXZlbnRUYXJnZXQKKyAgICB2aXJ0dWFsIHZvaWQgcmVmRXZlbnRUYXJn
ZXQoKSBPVkVSUklERSB7IHJlZigpOyB9CisgICAgdmlydHVhbCB2b2lkIGRlcmVmRXZlbnRUYXJn
ZXQoKSBPVkVSUklERSB7IGRlcmVmKCk7IH0KIAogICAgIEV2ZW50VGFyZ2V0RGF0YSBtX2V2ZW50
VGFyZ2V0RGF0YTsKIAotICAgIFJlZlB0cjxTY3JpcHRFeGVjdXRpb25Db250ZXh0PiBtX3Njcmlw
dEV4ZWN1dGlvbkNvbnRleHQ7Ci0KICAgICBSZWZQdHI8TWVkaWFTdHJlYW1UcmFja0xpc3Q+IG1f
YXVkaW9UcmFja3M7CiAgICAgUmVmUHRyPE1lZGlhU3RyZWFtVHJhY2tMaXN0PiBtX3ZpZGVvVHJh
Y2tzOwogICAgIFJlZlB0cjxNZWRpYVN0cmVhbURlc2NyaXB0b3I+IG1fZGVzY3JpcHRvcjsK
</data>

          </attachment>
      

    </bug>

</bugzilla>