<?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>84743</bug_id>
          
          <creation_ts>2012-04-24 11:28:13 -0700</creation_ts>
          <short_desc>JavaScriptAudioNode unexpectedly not called</short_desc>
          <delta_ts>2017-07-18 08:29:41 -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>NEW</bug_status>
          <resolution></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>
          <dependson>85818</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Raymond Toy">rtoy</reporter>
          <assigned_to name="Raymond Toy">rtoy</assigned_to>
          <cc>abarth</cc>
    
    <cc>dominicc</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>608874</commentid>
    <comment_count>0</comment_count>
    <who name="Raymond Toy">rtoy</who>
    <bug_when>2012-04-24 11:28:13 -0700</bug_when>
    <thetext>JavaScriptAudioNode not called unexpectedly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>608875</commentid>
    <comment_count>1</comment_count>
      <attachid>138608</attachid>
    <who name="Raymond Toy">rtoy</who>
    <bug_when>2012-04-24 11:28:57 -0700</bug_when>
    <thetext>Created attachment 138608
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617430</commentid>
    <comment_count>2</comment_count>
      <attachid>138608</attachid>
    <who name="Dominic Cooney">dominicc</who>
    <bug_when>2012-05-07 00:07:56 -0700</bug_when>
    <thetext>Comment on attachment 138608
WIP

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

Some comments inline. Sorry for the delay!

&gt; Source/WebCore/ChangeLog:8
&gt; +        No new tests. (OOPS!)

This will have tests at some point?

&gt; Source/WebCore/ChangeLog:10
&gt; +        * Modules/webaudio/JavaScriptAudioNode.cpp:

I think you need to add the ActiveDOMObject extended attribute to the interface definition in JavaScriptAudioNode.idl. This triggers CodeGeneratorV8.pm to generate a toActiveDOMObject method on the V8JavaScriptAudioNode wrapper. You could add a breakpoint to GCPrologueVisitor::visitDOMWrapper and see if it gets called with objects that are actually JavaScriptAudioNode.

&gt; Source/WebCore/Modules/webaudio/JavaScriptAudioNode.cpp:-83
&gt; -    ASSERT_UNUSED(numberOfInputChannels, numberOfInputChannels &gt; 0);

What necessitated commenting this out?

&gt; Source/WebCore/Modules/webaudio/JavaScriptAudioNode.cpp:96
&gt; +    fprintf(stderr, &quot;~JavaScriptAudioNode: %p\n&quot;, this);

Assuming this logging will go away.

&gt; Source/WebCore/Modules/webaudio/JavaScriptAudioNode.cpp:128
&gt; +    ActiveDOMObject::unsetPendingActivity(this);

Can you give some details in how this works? What is the typical lifecycle of a JavaScriptAudioNode?

&gt; Source/WebCore/Modules/webaudio/JavaScriptAudioNode.cpp:214
&gt; +

Delete this blank line.

&gt; Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.h:63
&gt; +    // As an audio source, we will never propagate silence.

Why is this relevant to this change?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617756</commentid>
    <comment_count>3</comment_count>
      <attachid>138608</attachid>
    <who name="Raymond Toy">rtoy</who>
    <bug_when>2012-05-07 11:24:12 -0700</bug_when>
    <thetext>Comment on attachment 138608
WIP

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

&gt;&gt; Source/WebCore/ChangeLog:8
&gt;&gt; +        No new tests. (OOPS!)
&gt; 
&gt; This will have tests at some point?

I will try, but I have not been able to come up with any layout tests that work.  Chris says it could be difficult because of the why offline audio contexts work.

&gt;&gt; Source/WebCore/ChangeLog:10
&gt;&gt; +        * Modules/webaudio/JavaScriptAudioNode.cpp:
&gt; 
&gt; I think you need to add the ActiveDOMObject extended attribute to the interface definition in JavaScriptAudioNode.idl. This triggers CodeGeneratorV8.pm to generate a toActiveDOMObject method on the V8JavaScriptAudioNode wrapper. You could add a breakpoint to GCPrologueVisitor::visitDOMWrapper and see if it gets called with objects that are actually JavaScriptAudioNode.

Add ActiveDOMObject to the idl seems to make it work.  At least the audio continues to play as expected instead of being chopped up.

Still investigating your suggestions.

&gt;&gt; Source/WebCore/Modules/webaudio/JavaScriptAudioNode.cpp:-83
&gt;&gt; -    ASSERT_UNUSED(numberOfInputChannels, numberOfInputChannels &gt; 0);
&gt; 
&gt; What necessitated commenting this out?

The demo code I was using specified 0 input channels, triggering this assert.  I need to investigate whether 0 inputs is really allows for a JavaScriptAudioNode.

&gt;&gt; Source/WebCore/Modules/webaudio/JavaScriptAudioNode.cpp:96
&gt;&gt; +    fprintf(stderr, &quot;~JavaScriptAudioNode: %p\n&quot;, this);
&gt; 
&gt; Assuming this logging will go away.

Yes.

&gt;&gt; Source/WebCore/Modules/webaudio/JavaScriptAudioNode.cpp:128
&gt;&gt; +    ActiveDOMObject::unsetPendingActivity(this);
&gt; 
&gt; Can you give some details in how this works? What is the typical lifecycle of a JavaScriptAudioNode?

A JavaScriptAudioNode should stay alive as long as inputs are connected.  But with the recent addition of silence hints and tail processing, it&apos;s unclear how this works.  Before tail processing was added, the node should go away when all inputs are disconnected.

&gt;&gt; Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.h:63
&gt;&gt; +    // As an audio source, we will never propagate silence.
&gt; 
&gt; Why is this relevant to this change?

This is actually an oversight when the silence hint change was added.  I needed this to make sure this node would produce output even if the inputs are all silent.  (Without this, silent inputs imply silent outputs, causing no processing to be done at all by the node.)

A new bug will be filed for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>618075</commentid>
    <comment_count>4</comment_count>
      <attachid>140616</attachid>
    <who name="Raymond Toy">rtoy</who>
    <bug_when>2012-05-07 16:25:10 -0700</bug_when>
    <thetext>Created attachment 140616
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>618081</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-07 16:29:51 -0700</bug_when>
    <thetext>Attachment 140616 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/ChangeLog:8:  You should remove the &apos;No new tests&apos; and either add and list tests, or explain why no new tests were possible.  [changelog/nonewtests] [5]
Total errors found: 1 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>618165</commentid>
    <comment_count>6</comment_count>
      <attachid>140616</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-07 17:38:18 -0700</bug_when>
    <thetext>Comment on attachment 140616
Patch

Attachment 140616 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/12655131</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>618177</commentid>
    <comment_count>7</comment_count>
      <attachid>140616</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-05-07 17:51:17 -0700</bug_when>
    <thetext>Comment on attachment 140616
Patch

Attachment 140616 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/12642484</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138608</attachid>
            <date>2012-04-24 11:28:57 -0700</date>
            <delta_ts>2012-05-07 16:25:08 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-84743-20120424112856.patch</filename>
            <type>text/plain</type>
            <size>7411</size>
            <attacher name="Raymond Toy">rtoy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0OTAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjBmODYxNzdiNWM3N2Qy
NzIwNDMyODI0ZTVjNjljM2RlMjY2ODg1OS4uNTNhYmJmMzI5MmEwYjhmMjlkNjQxYWJjZGYyYzY1
NTAwMjgwZmZhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTA0LTI0ICBSYXlt
b25kIFRveSAgPHJ0b3lAZ29vZ2xlLmNvbT4KKworICAgICAgICBKYXZhU2NyaXB0QXVkaW9Ob2Rl
IG5vdCBjYWxsZWQgdW5leHBlY3RlZGx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NDc0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gKE9PUFMhKQorCisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9KYXZhU2NyaXB0QXVkaW9Ob2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okph
dmFTY3JpcHRBdWRpb05vZGU6OkphdmFTY3JpcHRBdWRpb05vZGUpOgorICAgICAgICAoV2ViQ29y
ZTo6SmF2YVNjcmlwdEF1ZGlvTm9kZTo6fkphdmFTY3JpcHRBdWRpb05vZGUpOgorICAgICAgICAo
V2ViQ29yZTo6SmF2YVNjcmlwdEF1ZGlvTm9kZTo6aW5pdGlhbGl6ZSk6CisgICAgICAgIChXZWJD
b3JlOjpKYXZhU2NyaXB0QXVkaW9Ob2RlOjp1bmluaXRpYWxpemUpOgorICAgICAgICAoV2ViQ29y
ZTo6SmF2YVNjcmlwdEF1ZGlvTm9kZTo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpKYXZh
U2NyaXB0QXVkaW9Ob2RlOjpmaXJlUHJvY2Vzc0V2ZW50RGlzcGF0Y2gpOgorICAgICAgICAoV2Vi
Q29yZTo6SmF2YVNjcmlwdEF1ZGlvTm9kZTo6ZmlyZVByb2Nlc3NFdmVudCk6CisgICAgICAgICog
TW9kdWxlcy93ZWJhdWRpby9KYXZhU2NyaXB0QXVkaW9Ob2RlLmg6CisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9NZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaDoKKyAgICAgICAgKE1lZGlh
RWxlbWVudEF1ZGlvU291cmNlTm9kZSk6CisKIDIwMTItMDQtMjMgIE1pY2hhxYIgUGFrdcWCYSB2
ZWwgUnV0a2EgIDxtLnBha3VsYUBzYW1zdW5nLmNvbT4KICAgICAgICAgW0VGTF1bV0syXSBGaXgg
YnVpbGQgYnJlYWsgd2hlbiBub24tY3Jvc3MgcGxhdGZvcm0gQ09OVEVYVF9NRU5VUyBhcmUgZW5h
YmxlZC4KICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg0
MTM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0phdmFTY3Jp
cHRBdWRpb05vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9KYXZhU2Ny
aXB0QXVkaW9Ob2RlLmNwcAppbmRleCA4MWMxZGM3NmJkMTViOTg1NWFmOGJkYTYyOTBhNGU3YjM5
NGU3ODNiLi4wMTc3ZjQwMmY5NWU0M2UzMDE1ZjM0NTdiYWIwYWVhNDIxNTlhMTgyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0phdmFTY3JpcHRBdWRpb05vZGUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSmF2YVNjcmlwdEF1ZGlv
Tm9kZS5jcHAKQEAgLTY5LDYgKzY5LDcgQEAgUGFzc1JlZlB0cjxKYXZhU2NyaXB0QXVkaW9Ob2Rl
PiBKYXZhU2NyaXB0QXVkaW9Ob2RlOjpjcmVhdGUoQXVkaW9Db250ZXh0KiBjb250ZXgKIAogSmF2
YVNjcmlwdEF1ZGlvTm9kZTo6SmF2YVNjcmlwdEF1ZGlvTm9kZShBdWRpb0NvbnRleHQqIGNvbnRl
eHQsIGZsb2F0IHNhbXBsZVJhdGUsIHNpemVfdCBidWZmZXJTaXplLCB1bnNpZ25lZCBudW1iZXJP
ZklucHV0Q2hhbm5lbHMsIHVuc2lnbmVkIG51bWJlck9mT3V0cHV0Q2hhbm5lbHMpCiAgICAgOiBB
dWRpb05vZGUoY29udGV4dCwgc2FtcGxlUmF0ZSkKKyAgICAsIEFjdGl2ZURPTU9iamVjdChjb250
ZXh0LT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIHRoaXMpCiAgICAgLCBtX2RvdWJsZUJ1ZmZl
ckluZGV4KDApCiAgICAgLCBtX2RvdWJsZUJ1ZmZlckluZGV4Rm9yRXZlbnQoMCkKICAgICAsIG1f
YnVmZmVyU2l6ZShidWZmZXJTaXplKQpAQCAtODAsNyArODEsNyBAQCBKYXZhU2NyaXB0QXVkaW9O
b2RlOjpKYXZhU2NyaXB0QXVkaW9Ob2RlKEF1ZGlvQ29udGV4dCogY29udGV4dCwgZmxvYXQgc2Ft
cGxlUmF0ZQogICAgICAgICBtX2J1ZmZlclNpemUgPSBBdWRpb05vZGU6OlByb2Nlc3NpbmdTaXpl
SW5GcmFtZXM7CiAKICAgICAvLyBGSVhNRTogV2Ugc3RpbGwgbmVlZCB0byBpbXBsZW1lbnQgbnVt
YmVyT2ZJbnB1dENoYW5uZWxzLgotICAgIEFTU0VSVF9VTlVTRUQobnVtYmVyT2ZJbnB1dENoYW5u
ZWxzLCBudW1iZXJPZklucHV0Q2hhbm5lbHMgPiAwKTsKKy8vICAgIEFTU0VSVF9VTlVTRUQobnVt
YmVyT2ZJbnB1dENoYW5uZWxzLCBudW1iZXJPZklucHV0Q2hhbm5lbHMgPiAwKTsKIAogICAgIGFk
ZElucHV0KGFkb3B0UHRyKG5ldyBBdWRpb05vZGVJbnB1dCh0aGlzKSkpOwogICAgIGFkZE91dHB1
dChhZG9wdFB0cihuZXcgQXVkaW9Ob2RlT3V0cHV0KHRoaXMsIG51bWJlck9mT3V0cHV0Q2hhbm5l
bHMpKSk7CkBAIC05Miw2ICs5Myw3IEBAIEphdmFTY3JpcHRBdWRpb05vZGU6OkphdmFTY3JpcHRB
dWRpb05vZGUoQXVkaW9Db250ZXh0KiBjb250ZXh0LCBmbG9hdCBzYW1wbGVSYXRlCiAKIEphdmFT
Y3JpcHRBdWRpb05vZGU6On5KYXZhU2NyaXB0QXVkaW9Ob2RlKCkKIHsKKyAgICBmcHJpbnRmKHN0
ZGVyciwgIn5KYXZhU2NyaXB0QXVkaW9Ob2RlOiAlcFxuIiwgdGhpcyk7CiAgICAgdW5pbml0aWFs
aXplKCk7CiB9CiAKQEAgLTEwOSw2ICsxMTEsOSBAQCB2b2lkIEphdmFTY3JpcHRBdWRpb05vZGU6
OmluaXRpYWxpemUoKQogICAgICAgICBtX291dHB1dEJ1ZmZlcnMuYXBwZW5kKEF1ZGlvQnVmZmVy
OjpjcmVhdGUodGhpcy0+b3V0cHV0KDApLT5udW1iZXJPZkNoYW5uZWxzKCksIGJ1ZmZlclNpemUo
KSwgc2FtcGxlUmF0ZSkpOwogICAgIH0KIAorICAgIGZwcmludGYoc3RkZXJyLCAiKioqc2V0UGVu
ZGluZ0FjdGl2aXR5XG4iKTsKKyAgICBBY3RpdmVET01PYmplY3Q6OnNldFBlbmRpbmdBY3Rpdml0
eSh0aGlzKTsKKyAgICAKICAgICBBdWRpb05vZGU6OmluaXRpYWxpemUoKTsKIH0KIApAQCAtMTIw
LDExICsxMjUsMTYgQEAgdm9pZCBKYXZhU2NyaXB0QXVkaW9Ob2RlOjp1bmluaXRpYWxpemUoKQog
ICAgIG1faW5wdXRCdWZmZXJzLmNsZWFyKCk7CiAgICAgbV9vdXRwdXRCdWZmZXJzLmNsZWFyKCk7
CiAKKyAgICBBY3RpdmVET01PYmplY3Q6OnVuc2V0UGVuZGluZ0FjdGl2aXR5KHRoaXMpOwogICAg
IEF1ZGlvTm9kZTo6dW5pbml0aWFsaXplKCk7CiB9CiAKIHZvaWQgSmF2YVNjcmlwdEF1ZGlvTm9k
ZTo6cHJvY2VzcyhzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKQogeworICAgIGlmIChtX2lzUmVxdWVz
dE91dHN0YW5kaW5nKSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IGZyYW1lc1RvUHJv
Y2VzcyA9ICVsdSwgcmVxdWVzdE91dHN0YW5kaW5nPSAlZFxuIiwKKyAgICAgICAgICAgICAgICBf
X0ZVTkNUSU9OX18sIGZyYW1lc1RvUHJvY2VzcywgbV9pc1JlcXVlc3RPdXRzdGFuZGluZyk7Cisg
ICAgfQogICAgIC8vIERpc2N1c3Npb24gYWJvdXQgaW5wdXRzIGFuZCBvdXRwdXRzOgogICAgIC8v
IEFzIGluIG90aGVyIEF1ZGlvTm9kZXMsIEphdmFTY3JpcHRBdWRpb05vZGUgdXNlcyBhbiBBdWRp
b0J1cyBmb3IgaXRzIGlucHV0IGFuZCBvdXRwdXQgKHNlZSBpbnB1dEJ1cyBhbmQgb3V0cHV0QnVz
IGJlbG93KS4KICAgICAvLyBBZGRpdGlvbmFsbHksIHRoZXJlIGlzIGEgZG91YmxlLWJ1ZmZlcmlu
ZyBmb3IgaW5wdXQgYW5kIG91dHB1dCB3aGljaCBpcyBleHBvc2VkIGRpcmVjdGx5IHRvIEphdmFT
Y3JpcHQgKHNlZSBpbnB1dEJ1ZmZlciBhbmQgb3V0cHV0QnVmZmVyIGJlbG93KS4KQEAgLTE5Niwx
NCArMjA2LDE3IEBAIHZvaWQgSmF2YVNjcmlwdEF1ZGlvTm9kZTo6cHJvY2VzcyhzaXplX3QgZnJh
bWVzVG9Qcm9jZXNzKQogICAgICAgICBpZiAobV9pc1JlcXVlc3RPdXRzdGFuZGluZykgewogICAg
ICAgICAgICAgLy8gV2UncmUgbGF0ZSBpbiBoYW5kbGluZyB0aGUgcHJldmlvdXMgcmVxdWVzdC4g
IFRoZSBtYWluIHRocmVhZCBtdXN0IGJlIHZlcnkgYnVzeS4KICAgICAgICAgICAgIC8vIFRoZSBi
ZXN0IHdlIGNhbiBkbyBpcyBjbGVhciBvdXQgdGhlIGJ1ZmZlciBvdXJzZWxmIGhlcmUuCisgICAg
ICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkJ1c3ksIHNvIHplcm9cbiIpOwogICAgICAgICAgICAg
b3V0cHV0QnVmZmVyLT56ZXJvKCk7ICAgICAgICAgICAgCiAgICAgICAgIH0gZWxzZSB7CiAgICAg
ICAgICAgICAvLyBSZWZlcmVuY2Ugb3Vyc2VsZiBzbyB3ZSBkb24ndCBhY2NpZGVudGFsbHkgZ2V0
IGRlbGV0ZWQgYmVmb3JlIGZpcmVQcm9jZXNzRXZlbnQoKSBnZXRzIGNhbGxlZC4KICAgICAgICAg
ICAgIHJlZigpOworCiAgICAgICAgICAgICAKICAgICAgICAgICAgIC8vIEZpcmUgdGhlIGV2ZW50
IG9uIHRoZSBtYWluIHRocmVhZCwgbm90IHRoaXMgb25lICh3aGljaCBpcyB0aGUgcmVhbHRpbWUg
YXVkaW8gdGhyZWFkKS4KICAgICAgICAgICAgIG1fZG91YmxlQnVmZmVySW5kZXhGb3JFdmVudCA9
IG1fZG91YmxlQnVmZmVySW5kZXg7CiAgICAgICAgICAgICBtX2lzUmVxdWVzdE91dHN0YW5kaW5n
ID0gdHJ1ZTsKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiY2FsbE9uTWFpblRocmVhZFxu
Iik7CiAgICAgICAgICAgICBjYWxsT25NYWluVGhyZWFkKGZpcmVQcm9jZXNzRXZlbnREaXNwYXRj
aCwgdGhpcyk7CiAgICAgICAgIH0KIApAQCAtMjIyLDEyICsyMzUsMTQgQEAgdm9pZCBKYXZhU2Ny
aXB0QXVkaW9Ob2RlOjpmaXJlUHJvY2Vzc0V2ZW50RGlzcGF0Y2godm9pZCogdXNlckRhdGEpCiAK
ICAgICAvLyBEZS1yZWZlcmVuY2UgdG8gbWF0Y2ggdGhlIHJlZigpIGNhbGwgaW4gcHJvY2Vzcygp
LgogICAgIGpzQXVkaW9Ob2RlLT5kZXJlZigpOworLy8gICAganNBdWRpb05vZGUtPkFjdGl2ZURP
TU9iamVjdDo6dW5zZXRQZW5kaW5nQWN0aXZpdHkoanNBdWRpb05vZGUpOwogfQogCiB2b2lkIEph
dmFTY3JpcHRBdWRpb05vZGU6OmZpcmVQcm9jZXNzRXZlbnQoKQogewogICAgIEFTU0VSVChpc01h
aW5UaHJlYWQoKSAmJiBtX2lzUmVxdWVzdE91dHN0YW5kaW5nKTsKLSAgICAKKworICAgIGZwcmlu
dGYoc3RkZXJyLCAiJXM6ICVwXG4iLCBfX0ZVTkNUSU9OX18sIHRoaXMpOwogICAgIGJvb2wgaXNJ
bmRleEdvb2QgPSBtX2RvdWJsZUJ1ZmZlckluZGV4Rm9yRXZlbnQgPCAyOwogICAgIEFTU0VSVChp
c0luZGV4R29vZCk7CiAgICAgaWYgKCFpc0luZGV4R29vZCkKQEAgLTI0NSw2ICsyNjAsNyBAQCB2
b2lkIEphdmFTY3JpcHRBdWRpb05vZGU6OmZpcmVQcm9jZXNzRXZlbnQoKQogICAgICAgICBtX2lz
UmVxdWVzdE91dHN0YW5kaW5nID0gZmFsc2U7CiAgICAgICAgIAogICAgICAgICAvLyBDYWxsIHRo
ZSBKYXZhU2NyaXB0IGV2ZW50IGhhbmRsZXIgd2hpY2ggd2lsbCBkbyB0aGUgYXVkaW8gcHJvY2Vz
c2luZy4KKyAgICAgICAgZnByaW50ZihzdGRlcnIsICIgJXM6ICVwIGRpc3BhdGNoaW5nIGV2ZW50
XG4iLCBfX0ZVTkNUSU9OX18sIHRoaXMpOwogICAgICAgICBkaXNwYXRjaEV2ZW50KEF1ZGlvUHJv
Y2Vzc2luZ0V2ZW50OjpjcmVhdGUoaW5wdXRCdWZmZXIsIG91dHB1dEJ1ZmZlcikpOwogICAgIH0K
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSmF2YVNjcmlw
dEF1ZGlvTm9kZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9KYXZhU2NyaXB0
QXVkaW9Ob2RlLmgKaW5kZXggYjk0MGUxYThkNWQ2YmM1NDI2OWRkZGU0NGRmNjJkZDkxMjNkZDY4
OC4uOThlMThkNDZhZWFjOGZiMTAzYzE1MzQwNjBkODBjYzcxMGU5ODlmZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9KYXZhU2NyaXB0QXVkaW9Ob2RlLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9KYXZhU2NyaXB0QXVkaW9Ob2RlLmgK
QEAgLTQ3LDcgKzQ3LDcgQEAgY2xhc3MgQXVkaW9Qcm9jZXNzaW5nRXZlbnQ7CiAvLyBBdWRpb0J1
ZmZlcnMgZm9yIGVhY2ggaW5wdXQgYW5kIG91dHB1dC4KIAogLy8gRklYTUU6IEV2ZW50VGFyZ2V0
IHNob3VsZCBiZSBpbnRyb2R1Y2VkIGF0IHRoZSBiYXNlIG9mIHRoZSBpbmhlcml0YW5jZSBoaWVy
YXJjaHkgKGkuZS4sIGFzIGEgYmFzZSBjbGFzcyBmb3IgQXVkaW9Ob2RlKS4KLWNsYXNzIEphdmFT
Y3JpcHRBdWRpb05vZGUgOiBwdWJsaWMgQXVkaW9Ob2RlLCBwdWJsaWMgRXZlbnRUYXJnZXQgewor
Y2xhc3MgSmF2YVNjcmlwdEF1ZGlvTm9kZSA6IHB1YmxpYyBBdWRpb05vZGUsIHB1YmxpYyBBY3Rp
dmVET01PYmplY3QsIHB1YmxpYyBFdmVudFRhcmdldCB7CiBwdWJsaWM6CiAgICAgLy8gYnVmZmVy
U2l6ZSBtdXN0IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nIHZhbHVlczogMjU2LCA1MTIsIDEwMjQs
IDIwNDgsIDQwOTYsIDgxOTIsIDE2Mzg0LgogICAgIC8vIFRoaXMgdmFsdWUgY29udHJvbHMgaG93
IGZyZXF1ZW50bHkgdGhlIG9uYXVkaW9wcm9jZXNzIGV2ZW50IGhhbmRsZXIgaXMgY2FsbGVkIGFu
ZCBob3cgbWFueSBzYW1wbGUtZnJhbWVzIG5lZWQgdG8gYmUgcHJvY2Vzc2VkIGVhY2ggY2FsbC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50
QXVkaW9Tb3VyY2VOb2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL01lZGlh
RWxlbWVudEF1ZGlvU291cmNlTm9kZS5oCmluZGV4IDA2ZWM3ZTE2YjQ0MmExMGMyZjQ4ZTI3NzZj
ZDJjYzQ0Njc5ZTVmMTguLmNiZjdiNTAyNGVjMWNjMDEwOTYxYzlkNzY2ZWViYjRmZDhjMjI1Y2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vTWVkaWFFbGVtZW50
QXVkaW9Tb3VyY2VOb2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9N
ZWRpYUVsZW1lbnRBdWRpb1NvdXJjZU5vZGUuaApAQCAtNjAsNiArNjAsOSBAQCBwdWJsaWM6CiBw
cml2YXRlOgogICAgIE1lZGlhRWxlbWVudEF1ZGlvU291cmNlTm9kZShBdWRpb0NvbnRleHQqLCBI
VE1MTWVkaWFFbGVtZW50Kik7CiAKKyAgICAvLyBBcyBhbiBhdWRpbyBzb3VyY2UsIHdlIHdpbGwg
bmV2ZXIgcHJvcGFnYXRlIHNpbGVuY2UuCisgICAgdmlydHVhbCBib29sIHByb3BhZ2F0ZXNTaWxl
bmNlKCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gZmFsc2U7IH0KKwogICAgIFJlZlB0cjxIVE1M
TWVkaWFFbGVtZW50PiBtX21lZGlhRWxlbWVudDsKICAgICBNdXRleCBtX3Byb2Nlc3NMb2NrOwog
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140616</attachid>
            <date>2012-05-07 16:25:10 -0700</date>
            <delta_ts>2012-05-07 17:51:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84743-20120507162509.patch</filename>
            <type>text/plain</type>
            <size>8371</size>
            <attacher name="Raymond Toy">rtoy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2Mjk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDI3MzZkMTEwOWRjNjNh
NjlmNzVhYWEwZWVjNjI5YzdkMTFhMDUyMS4uY2RhN2RhNDM3NzUyNDRmMDk3ZmQ5MTQ1YjJiMjBh
NWI0Nzg0NzdlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTA1LTA3ICBSYXlt
b25kIFRveSAgPHJ0b3lAZ29vZ2xlLmNvbT4KKworICAgICAgICBKYXZhU2NyaXB0QXVkaW9Ob2Rl
IHVuZXhwZWN0ZWRseSBub3QgY2FsbGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04NDc0MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gKE9PUFMhKQorCisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9KYXZhU2NyaXB0QXVkaW9Ob2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okph
dmFTY3JpcHRBdWRpb05vZGU6OkphdmFTY3JpcHRBdWRpb05vZGUpOgorICAgICAgICAoV2ViQ29y
ZTo6SmF2YVNjcmlwdEF1ZGlvTm9kZTo6fkphdmFTY3JpcHRBdWRpb05vZGUpOgorICAgICAgICAo
V2ViQ29yZTo6SmF2YVNjcmlwdEF1ZGlvTm9kZTo6aW5pdGlhbGl6ZSk6CisgICAgICAgIChXZWJD
b3JlOjpKYXZhU2NyaXB0QXVkaW9Ob2RlOjp1bmluaXRpYWxpemUpOgorICAgICAgICAoV2ViQ29y
ZTo6SmF2YVNjcmlwdEF1ZGlvTm9kZTo6cHJvY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpKYXZh
U2NyaXB0QXVkaW9Ob2RlOjpmaXJlUHJvY2Vzc0V2ZW50RGlzcGF0Y2gpOgorICAgICAgICAoV2Vi
Q29yZTo6SmF2YVNjcmlwdEF1ZGlvTm9kZTo6ZmlyZVByb2Nlc3NFdmVudCk6CisgICAgICAgICog
TW9kdWxlcy93ZWJhdWRpby9KYXZhU2NyaXB0QXVkaW9Ob2RlLmg6CisgICAgICAgICogTW9kdWxl
cy93ZWJhdWRpby9KYXZhU2NyaXB0QXVkaW9Ob2RlLmlkbDoKKwogMjAxMi0wNS0wNyAgQ3NhYmEg
T3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQub3JnPgogCiAgICAgICAgIEJ1aWxkZml4IGZvciBi
dWdneSBHQ0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSmF2
YVNjcmlwdEF1ZGlvTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0ph
dmFTY3JpcHRBdWRpb05vZGUuY3BwCmluZGV4IDdmNTQxZDVhMzE2ZjUzNWUxZjZlMGEyOGM1ZjAw
NTc0NmM0ZjFlYmMuLjlmZDYyNTI2ZTM2NzczZDYxMTRlMTA1OTI4NGQyMGRiMjJkYzU5ZmUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSmF2YVNjcmlwdEF1ZGlv
Tm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9KYXZhU2NyaXB0
QXVkaW9Ob2RlLmNwcApAQCAtNjksNiArNjksNyBAQCBQYXNzUmVmUHRyPEphdmFTY3JpcHRBdWRp
b05vZGU+IEphdmFTY3JpcHRBdWRpb05vZGU6OmNyZWF0ZShBdWRpb0NvbnRleHQqIGNvbnRleAog
CiBKYXZhU2NyaXB0QXVkaW9Ob2RlOjpKYXZhU2NyaXB0QXVkaW9Ob2RlKEF1ZGlvQ29udGV4dCog
Y29udGV4dCwgZmxvYXQgc2FtcGxlUmF0ZSwgc2l6ZV90IGJ1ZmZlclNpemUsIHVuc2lnbmVkIG51
bWJlck9mSW5wdXRDaGFubmVscywgdW5zaWduZWQgbnVtYmVyT2ZPdXRwdXRDaGFubmVscykKICAg
ICA6IEF1ZGlvTm9kZShjb250ZXh0LCBzYW1wbGVSYXRlKQorICAgICwgQWN0aXZlRE9NT2JqZWN0
KGNvbnRleHQtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgdGhpcykKICAgICAsIG1fZG91Ymxl
QnVmZmVySW5kZXgoMCkKICAgICAsIG1fZG91YmxlQnVmZmVySW5kZXhGb3JFdmVudCgwKQogICAg
ICwgbV9idWZmZXJTaXplKGJ1ZmZlclNpemUpCkBAIC05NCw2ICs5NSw3IEBAIEphdmFTY3JpcHRB
dWRpb05vZGU6OkphdmFTY3JpcHRBdWRpb05vZGUoQXVkaW9Db250ZXh0KiBjb250ZXh0LCBmbG9h
dCBzYW1wbGVSYXRlCiAKIEphdmFTY3JpcHRBdWRpb05vZGU6On5KYXZhU2NyaXB0QXVkaW9Ob2Rl
KCkKIHsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIn5KYXZhU2NyaXB0QXVkaW9Ob2RlOiAlcFxuIiwg
dGhpcyk7CiAgICAgdW5pbml0aWFsaXplKCk7CiB9CiAKQEAgLTExNCw2ICsxMTYsOSBAQCB2b2lk
IEphdmFTY3JpcHRBdWRpb05vZGU6OmluaXRpYWxpemUoKQogICAgICAgICBtX291dHB1dEJ1ZmZl
cnMuYXBwZW5kKG91dHB1dEJ1ZmZlcik7CiAgICAgfQogCisgICAgZnByaW50ZihzdGRlcnIsICIq
KipzZXRQZW5kaW5nQWN0aXZpdHlcbiIpOworICAgIEFjdGl2ZURPTU9iamVjdDo6c2V0UGVuZGlu
Z0FjdGl2aXR5KHRoaXMpOworICAgIAogICAgIEF1ZGlvTm9kZTo6aW5pdGlhbGl6ZSgpOwogfQog
CkBAIC0xMjUsMTEgKzEzMCwxNiBAQCB2b2lkIEphdmFTY3JpcHRBdWRpb05vZGU6OnVuaW5pdGlh
bGl6ZSgpCiAgICAgbV9pbnB1dEJ1ZmZlcnMuY2xlYXIoKTsKICAgICBtX291dHB1dEJ1ZmZlcnMu
Y2xlYXIoKTsKIAorICAgIEFjdGl2ZURPTU9iamVjdDo6dW5zZXRQZW5kaW5nQWN0aXZpdHkodGhp
cyk7CiAgICAgQXVkaW9Ob2RlOjp1bmluaXRpYWxpemUoKTsKIH0KIAogdm9pZCBKYXZhU2NyaXB0
QXVkaW9Ob2RlOjpwcm9jZXNzKHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCiB7CisgICAgaWYgKG1f
aXNSZXF1ZXN0T3V0c3RhbmRpbmcpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogZnJh
bWVzVG9Qcm9jZXNzID0gJWx1LCByZXF1ZXN0T3V0c3RhbmRpbmc9ICVkXG4iLAorICAgICAgICAg
ICAgICAgIF9fRlVOQ1RJT05fXywgZnJhbWVzVG9Qcm9jZXNzLCBtX2lzUmVxdWVzdE91dHN0YW5k
aW5nKTsKKyAgICB9CiAgICAgLy8gRGlzY3Vzc2lvbiBhYm91dCBpbnB1dHMgYW5kIG91dHB1dHM6
CiAgICAgLy8gQXMgaW4gb3RoZXIgQXVkaW9Ob2RlcywgSmF2YVNjcmlwdEF1ZGlvTm9kZSB1c2Vz
IGFuIEF1ZGlvQnVzIGZvciBpdHMgaW5wdXQgYW5kIG91dHB1dCAoc2VlIGlucHV0QnVzIGFuZCBv
dXRwdXRCdXMgYmVsb3cpLgogICAgIC8vIEFkZGl0aW9uYWxseSwgdGhlcmUgaXMgYSBkb3VibGUt
YnVmZmVyaW5nIGZvciBpbnB1dCBhbmQgb3V0cHV0IHdoaWNoIGlzIGV4cG9zZWQgZGlyZWN0bHkg
dG8gSmF2YVNjcmlwdCAoc2VlIGlucHV0QnVmZmVyIGFuZCBvdXRwdXRCdWZmZXIgYmVsb3cpLgpA
QCAtMTUxLDggKzE2MSwxMiBAQCB2b2lkIEphdmFTY3JpcHRBdWRpb05vZGU6OnByb2Nlc3Moc2l6
ZV90IGZyYW1lc1RvUHJvY2VzcykKICAgICBBdWRpb0J1ZmZlciogb3V0cHV0QnVmZmVyID0gbV9v
dXRwdXRCdWZmZXJzW2RvdWJsZUJ1ZmZlckluZGV4XS5nZXQoKTsKIAogICAgIC8vIENoZWNrIHRo
ZSBjb25zaXN0ZW5jeSBvZiBpbnB1dCBhbmQgb3V0cHV0IGJ1ZmZlcnMuCi0gICAgYm9vbCBidWZm
ZXJzQXJlR29vZCA9IGlucHV0QnVmZmVyICYmIG91dHB1dEJ1ZmZlciAmJiBidWZmZXJTaXplKCkg
PT0gaW5wdXRCdWZmZXItPmxlbmd0aCgpICYmIGJ1ZmZlclNpemUoKSA9PSBvdXRwdXRCdWZmZXIt
Pmxlbmd0aCgpCi0gICAgICAgICYmIG1fYnVmZmVyUmVhZFdyaXRlSW5kZXggKyBmcmFtZXNUb1By
b2Nlc3MgPD0gYnVmZmVyU2l6ZSgpOworICAgIHVuc2lnbmVkIG51bWJlck9mSW5wdXRDaGFubmVs
cyA9IG1faW50ZXJuYWxJbnB1dEJ1cy5udW1iZXJPZkNoYW5uZWxzKCk7CisgICAgYm9vbCBidWZm
ZXJzQXJlR29vZCA9IG91dHB1dEJ1ZmZlciAmJiBidWZmZXJTaXplKCkgPT0gb3V0cHV0QnVmZmVy
LT5sZW5ndGgoKSAmJiBtX2J1ZmZlclJlYWRXcml0ZUluZGV4ICsgZnJhbWVzVG9Qcm9jZXNzIDw9
IGJ1ZmZlclNpemUoKTsKKworICAgIGlmIChudW1iZXJPZklucHV0Q2hhbm5lbHMpCisgICAgICAg
IGJ1ZmZlcnNBcmVHb29kID0gYnVmZmVyc0FyZUdvb2QgJiYgaW5wdXRCdWZmZXIgJiYgYnVmZmVy
U2l6ZSgpID09IGlucHV0QnVmZmVyLT5sZW5ndGgoKTsKKwogICAgIEFTU0VSVChidWZmZXJzQXJl
R29vZCk7CiAgICAgaWYgKCFidWZmZXJzQXJlR29vZCkKICAgICAgICAgcmV0dXJuOwpAQCAtMTYz
LDcgKzE3Nyw2IEBAIHZvaWQgSmF2YVNjcmlwdEF1ZGlvTm9kZTo6cHJvY2VzcyhzaXplX3QgZnJh
bWVzVG9Qcm9jZXNzKQogICAgIGlmICghaXNGcmFtZXNUb1Byb2Nlc3NHb29kKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICB1bnNpZ25lZCBudW1iZXJPZklucHV0Q2hhbm5lbHMgPSBtX2ludGVybmFs
SW5wdXRCdXMubnVtYmVyT2ZDaGFubmVscygpOwogICAgIHVuc2lnbmVkIG51bWJlck9mT3V0cHV0
Q2hhbm5lbHMgPSBvdXRwdXRCdXMtPm51bWJlck9mQ2hhbm5lbHMoKTsKIAogICAgIGJvb2wgY2hh
bm5lbHNBcmVHb29kID0gKG51bWJlck9mSW5wdXRDaGFubmVscyA9PSBtX251bWJlck9mSW5wdXRD
aGFubmVscykgJiYgKG51bWJlck9mT3V0cHV0Q2hhbm5lbHMgPT0gbV9udW1iZXJPZk91dHB1dENo
YW5uZWxzKTsKQEAgLTE5Miw2ICsyMDUsNyBAQCB2b2lkIEphdmFTY3JpcHRBdWRpb05vZGU6OnBy
b2Nlc3Moc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKICAgICAgICAgaWYgKG1faXNSZXF1ZXN0T3V0
c3RhbmRpbmcpIHsKICAgICAgICAgICAgIC8vIFdlJ3JlIGxhdGUgaW4gaGFuZGxpbmcgdGhlIHBy
ZXZpb3VzIHJlcXVlc3QuICBUaGUgbWFpbiB0aHJlYWQgbXVzdCBiZSB2ZXJ5IGJ1c3kuCiAgICAg
ICAgICAgICAvLyBUaGUgYmVzdCB3ZSBjYW4gZG8gaXMgY2xlYXIgb3V0IHRoZSBidWZmZXIgb3Vy
c2VsZiBoZXJlLgorICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJCdXN5LCBzbyB6ZXJvXG4i
KTsKICAgICAgICAgICAgIG91dHB1dEJ1ZmZlci0+emVybygpOyAgICAgICAgICAgIAogICAgICAg
ICB9IGVsc2UgewogICAgICAgICAgICAgLy8gUmVmZXJlbmNlIG91cnNlbGYgc28gd2UgZG9uJ3Qg
YWNjaWRlbnRhbGx5IGdldCBkZWxldGVkIGJlZm9yZSBmaXJlUHJvY2Vzc0V2ZW50KCkgZ2V0cyBj
YWxsZWQuCkBAIC0yMDAsNiArMjE0LDcgQEAgdm9pZCBKYXZhU2NyaXB0QXVkaW9Ob2RlOjpwcm9j
ZXNzKHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCiAgICAgICAgICAgICAvLyBGaXJlIHRoZSBldmVu
dCBvbiB0aGUgbWFpbiB0aHJlYWQsIG5vdCB0aGlzIG9uZSAod2hpY2ggaXMgdGhlIHJlYWx0aW1l
IGF1ZGlvIHRocmVhZCkuCiAgICAgICAgICAgICBtX2RvdWJsZUJ1ZmZlckluZGV4Rm9yRXZlbnQg
PSBtX2RvdWJsZUJ1ZmZlckluZGV4OwogICAgICAgICAgICAgbV9pc1JlcXVlc3RPdXRzdGFuZGlu
ZyA9IHRydWU7CisgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImNhbGxPbk1haW5UaHJlYWRc
biIpOwogICAgICAgICAgICAgY2FsbE9uTWFpblRocmVhZChmaXJlUHJvY2Vzc0V2ZW50RGlzcGF0
Y2gsIHRoaXMpOwogICAgICAgICB9CiAKQEAgLTIxOCwxMiArMjMzLDE0IEBAIHZvaWQgSmF2YVNj
cmlwdEF1ZGlvTm9kZTo6ZmlyZVByb2Nlc3NFdmVudERpc3BhdGNoKHZvaWQqIHVzZXJEYXRhKQog
CiAgICAgLy8gRGUtcmVmZXJlbmNlIHRvIG1hdGNoIHRoZSByZWYoKSBjYWxsIGluIHByb2Nlc3Mo
KS4KICAgICBqc0F1ZGlvTm9kZS0+ZGVyZWYoKTsKKy8vICAgIGpzQXVkaW9Ob2RlLT5BY3RpdmVE
T01PYmplY3Q6OnVuc2V0UGVuZGluZ0FjdGl2aXR5KGpzQXVkaW9Ob2RlKTsKIH0KIAogdm9pZCBK
YXZhU2NyaXB0QXVkaW9Ob2RlOjpmaXJlUHJvY2Vzc0V2ZW50KCkKIHsKICAgICBBU1NFUlQoaXNN
YWluVGhyZWFkKCkgJiYgbV9pc1JlcXVlc3RPdXRzdGFuZGluZyk7Ci0gICAgCisKKyAgICBmcHJp
bnRmKHN0ZGVyciwgIiVzOiAlcFxuIiwgX19GVU5DVElPTl9fLCB0aGlzKTsKICAgICBib29sIGlz
SW5kZXhHb29kID0gbV9kb3VibGVCdWZmZXJJbmRleEZvckV2ZW50IDwgMjsKICAgICBBU1NFUlQo
aXNJbmRleEdvb2QpOwogICAgIGlmICghaXNJbmRleEdvb2QpCkBAIC0yMzEsOCArMjQ4LDggQEAg
dm9pZCBKYXZhU2NyaXB0QXVkaW9Ob2RlOjpmaXJlUHJvY2Vzc0V2ZW50KCkKICAgICAgICAgCiAg
ICAgQXVkaW9CdWZmZXIqIGlucHV0QnVmZmVyID0gbV9pbnB1dEJ1ZmZlcnNbbV9kb3VibGVCdWZm
ZXJJbmRleEZvckV2ZW50XS5nZXQoKTsKICAgICBBdWRpb0J1ZmZlciogb3V0cHV0QnVmZmVyID0g
bV9vdXRwdXRCdWZmZXJzW21fZG91YmxlQnVmZmVySW5kZXhGb3JFdmVudF0uZ2V0KCk7Ci0gICAg
QVNTRVJUKGlucHV0QnVmZmVyICYmIG91dHB1dEJ1ZmZlcik7Ci0gICAgaWYgKCFpbnB1dEJ1ZmZl
ciB8fCAhb3V0cHV0QnVmZmVyKQorICAgIEFTU0VSVChvdXRwdXRCdWZmZXIpOworICAgIGlmICgh
b3V0cHV0QnVmZmVyKQogICAgICAgICByZXR1cm47CiAKICAgICAvLyBBdm9pZCBmaXJpbmcgdGhl
IGV2ZW50IGlmIHRoZSBkb2N1bWVudCBoYXMgYWxyZWFkeSBnb25lIGF3YXkuCkBAIC0yNDEsNiAr
MjU4LDcgQEAgdm9pZCBKYXZhU2NyaXB0QXVkaW9Ob2RlOjpmaXJlUHJvY2Vzc0V2ZW50KCkKICAg
ICAgICAgbV9pc1JlcXVlc3RPdXRzdGFuZGluZyA9IGZhbHNlOwogICAgICAgICAKICAgICAgICAg
Ly8gQ2FsbCB0aGUgSmF2YVNjcmlwdCBldmVudCBoYW5kbGVyIHdoaWNoIHdpbGwgZG8gdGhlIGF1
ZGlvIHByb2Nlc3NpbmcuCisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiICVzOiAlcCBkaXNwYXRj
aGluZyBldmVudFxuIiwgX19GVU5DVElPTl9fLCB0aGlzKTsKICAgICAgICAgZGlzcGF0Y2hFdmVu
dChBdWRpb1Byb2Nlc3NpbmdFdmVudDo6Y3JlYXRlKGlucHV0QnVmZmVyLCBvdXRwdXRCdWZmZXIp
KTsKICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlv
L0phdmFTY3JpcHRBdWRpb05vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8v
SmF2YVNjcmlwdEF1ZGlvTm9kZS5oCmluZGV4IDQwOThjZmM4OTIzYzcyODA5NmZkNWQ1OTI3ZjVk
MzdjZGZhNGZkZWQuLjliYzliYTg1YWIwN2I0NzA4MDI4YzNmNGNlYjAzMDkzZGFlZjEyNjQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSmF2YVNjcmlwdEF1ZGlv
Tm9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSmF2YVNjcmlwdEF1
ZGlvTm9kZS5oCkBAIC00OCw3ICs0OCw3IEBAIGNsYXNzIEF1ZGlvUHJvY2Vzc2luZ0V2ZW50Owog
Ly8gQXVkaW9CdWZmZXJzIGZvciBlYWNoIGlucHV0IGFuZCBvdXRwdXQuCiAKIC8vIEZJWE1FOiBF
dmVudFRhcmdldCBzaG91bGQgYmUgaW50cm9kdWNlZCBhdCB0aGUgYmFzZSBvZiB0aGUgaW5oZXJp
dGFuY2UgaGllcmFyY2h5IChpLmUuLCBhcyBhIGJhc2UgY2xhc3MgZm9yIEF1ZGlvTm9kZSkuCi1j
bGFzcyBKYXZhU2NyaXB0QXVkaW9Ob2RlIDogcHVibGljIEF1ZGlvTm9kZSwgcHVibGljIEV2ZW50
VGFyZ2V0IHsKK2NsYXNzIEphdmFTY3JpcHRBdWRpb05vZGUgOiBwdWJsaWMgQXVkaW9Ob2RlLCBw
dWJsaWMgQWN0aXZlRE9NT2JqZWN0LCBwdWJsaWMgRXZlbnRUYXJnZXQgewogcHVibGljOgogICAg
IC8vIGJ1ZmZlclNpemUgbXVzdCBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZyB2YWx1ZXM6IDI1Niwg
NTEyLCAxMDI0LCAyMDQ4LCA0MDk2LCA4MTkyLCAxNjM4NC4KICAgICAvLyBUaGlzIHZhbHVlIGNv
bnRyb2xzIGhvdyBmcmVxdWVudGx5IHRoZSBvbmF1ZGlvcHJvY2VzcyBldmVudCBoYW5kbGVyIGlz
IGNhbGxlZCBhbmQgaG93IG1hbnkgc2FtcGxlLWZyYW1lcyBuZWVkIHRvIGJlIHByb2Nlc3NlZCBl
YWNoIGNhbGwuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0ph
dmFTY3JpcHRBdWRpb05vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9K
YXZhU2NyaXB0QXVkaW9Ob2RlLmlkbAppbmRleCA5N2RhMGMxNmQzM2NhYzgyYzliYTcyM2YwNTU1
MzEyNDI2ZWU3YTY4Li4xNjUwYzU2OTYxMzM2NzllNGQ5MzAzYjA3MmVlY2M4NDViMmQ2NzJjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0phdmFTY3JpcHRBdWRp
b05vZGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vSmF2YVNjcmlw
dEF1ZGlvTm9kZS5pZGwKQEAgLTI2LDYgKzI2LDcgQEAgbW9kdWxlIGF1ZGlvIHsKICAgICAvLyBG
b3IgcmVhbC10aW1lIGF1ZGlvIHN0cmVhbSBzeW50aGVzaXMvcHJvY2Vzc2luZyBpbiBKYXZhU2Ny
aXB0IAogICAgIGludGVyZmFjZSBbCiAgICAgICAgIENvbmRpdGlvbmFsPVdFQl9BVURJTywKKyAg
ICAgICAgQWN0aXZlRE9NT2JqZWN0LAogICAgICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKICAg
ICAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24sCiAgICAgICAgIEV2ZW50VGFyZ2V0Cg==
</data>
<flag name="commit-queue"
          id="146574"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
      

    </bug>

</bugzilla>