<?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>81221</bug_id>
          
          <creation_ts>2012-03-15 07:58:00 -0700</creation_ts>
          <short_desc>Expose attack, release as DynamicsCompressorNode&apos;s attributes.</short_desc>
          <delta_ts>2012-04-18 19:33:08 -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>Web Audio</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>81316</dependson>
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Gao Chun">chun.gao</reporter>
          <assigned_to name="Raymond Toy">rtoy</assigned_to>
          <cc>abarth</cc>
    
    <cc>crogers</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>ojan</cc>
    
    <cc>rtoy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>579385</commentid>
    <comment_count>0</comment_count>
    <who name="Gao Chun">chun.gao</who>
    <bug_when>2012-03-15 07:58:00 -0700</bug_when>
    <thetext>According to spec, attack, release should be implemented as DynamicsCompressorNode&apos;s attributes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579399</commentid>
    <comment_count>1</comment_count>
      <attachid>132053</attachid>
    <who name="Gao Chun">chun.gao</who>
    <bug_when>2012-03-15 08:17:58 -0700</bug_when>
    <thetext>Created attachment 132053
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579492</commentid>
    <comment_count>2</comment_count>
      <attachid>132053</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-03-15 10:33:22 -0700</bug_when>
    <thetext>Comment on attachment 132053
Patch

Attachment 132053 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/11956687</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580202</commentid>
    <comment_count>3</comment_count>
      <attachid>132053</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-15 23:56:26 -0700</bug_when>
    <thetext>Comment on attachment 132053
Patch

Clearing flags on attachment: 132053

Committed r110951: &lt;http://trac.webkit.org/changeset/110951&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580203</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-15 23:56:30 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580218</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-16 00:17:46 -0700</bug_when>
    <thetext>crogers: Why did you mark this patch for commit when the mac-ews said this would fail to compile on Mac?

http://build.webkit.org/builders/Lion%20Intel%20Release%20%28Build%29/builds/7596</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580222</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-16 00:19:50 -0700</bug_when>
    <thetext>DOMDynamicsCompressorNode conflicts with NSObject method release</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580753</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-03-16 11:56:37 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; crogers: Why did you mark this patch for commit when the mac-ews said this would fail to compile on Mac?
&gt; 
&gt; http://build.webkit.org/builders/Lion%20Intel%20Release%20%28Build%29/builds/7596

Sorry Adam, my bad - should have caught this...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580766</commentid>
    <comment_count>8</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-03-16 12:05:44 -0700</bug_when>
    <thetext>Kentaro Hara, adding you as possibly somebody who could help with the code generator problem.

It seems that CodeGeneratorObjC.pm does not like to deal with JS attributes which are named &quot;release&quot; as in this patch since it somehow conflicts with the Obj-C release method.  Do you have a suggestion for an easy fix to the code generator?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581222</commentid>
    <comment_count>9</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-16 19:37:11 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Kentaro Hara, adding you as possibly somebody who could help with the code generator problem.
&gt; 
&gt; It seems that CodeGeneratorObjC.pm does not like to deal with JS attributes which are named &quot;release&quot; as in this patch since it somehow conflicts with the Obj-C release method.  Do you have a suggestion for an easy fix to the code generator?

You can use [ImplementedAs=releaseFunction]. See https://trac.webkit.org/wiki/WebKitIDL#ImplementedAs</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>582056</commentid>
    <comment_count>10</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-03-19 12:32:37 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; Kentaro Hara, adding you as possibly somebody who could help with the code generator problem.
&gt; &gt; 
&gt; &gt; It seems that CodeGeneratorObjC.pm does not like to deal with JS attributes which are named &quot;release&quot; as in this patch since it somehow conflicts with the Obj-C release method.  Do you have a suggestion for an easy fix to the code generator?
&gt; 
&gt; You can use [ImplementedAs=releaseFunction]. See https://trac.webkit.org/wiki/WebKitIDL#ImplementedAs

Kentaro, thank you very much for the suggestion.  But it appears that [ImplementedAs] is for &quot;methods&quot; and not &quot;attributes&quot;.  I tried the following:


        readonly attribute [ImplementedAs=releaseTime] AudioParam release; // in Seconds

But,  [ImplementedAs] was apparently ignored and the glue code continued to call into DynamicsCompressorNode::release()  (instead of releaseTime)

Any ideas?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>582550</commentid>
    <comment_count>11</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-19 17:56:50 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; Kentaro, thank you very much for the suggestion.  But it appears that [ImplementedAs] is for &quot;methods&quot; and not &quot;attributes&quot;.  I tried the following:
&gt; 
&gt; 
&gt;         readonly attribute [ImplementedAs=releaseTime] AudioParam release; // in Seconds
&gt; 
&gt; But,  [ImplementedAs] was apparently ignored and the glue code continued to call into DynamicsCompressorNode::release()  (instead of releaseTime)
&gt; 
&gt; Any ideas?

Thanks, we should fix the code generator to support [ImplementedAs] for attributes. Would you file the bug?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>582601</commentid>
    <comment_count>12</comment_count>
    <who name="Gao Chun">chun.gao</who>
    <bug_when>2012-03-19 19:01:19 -0700</bug_when>
    <thetext>Thanks for providing these suggestion. When I remove &quot;release&quot; from the &quot;conflictMethod&quot; blacklist in CodeGeneratorObjC.pm, I can successfully build webkit with this patch and it also works well. The file DOMDynamicsCompressorNode.mm and DOMDynamicsCompressorNode.h generated from DynamicsCompressorNode.idl were not compiled actually. And they are also not used by any other files. It may be not necessary to generate OBJC files for all IDL files. And maybe a new rule is need to generate OBJC files from IDL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>582604</commentid>
    <comment_count>13</comment_count>
    <who name="Gao Chun">chun.gao</who>
    <bug_when>2012-03-19 19:08:05 -0700</bug_when>
    <thetext>The issue still exist.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589575</commentid>
    <comment_count>14</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-03-27 19:02:28 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; The issue still exist.

Chun, could you please try re-uploading the patch with:

readonly attribute [ImplementedAs=releaseTime] AudioParam release;

(and then changing the method name to &quot;releaseTime()&quot;)

Kentaro has landed the fix for this:
https://bugs.webkit.org/show_bug.cgi?id=81605

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589722</commentid>
    <comment_count>15</comment_count>
      <attachid>134231</attachid>
    <who name="Gao Chun">chun.gao</who>
    <bug_when>2012-03-28 00:55:27 -0700</bug_when>
    <thetext>Created attachment 134231
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589729</commentid>
    <comment_count>16</comment_count>
      <attachid>134231</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-03-28 01:12:28 -0700</bug_when>
    <thetext>Comment on attachment 134231
Patch

Attachment 134231 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/12147980</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>589761</commentid>
    <comment_count>17</comment_count>
    <who name="Gao Chun">chun.gao</who>
    <bug_when>2012-03-28 02:05:59 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; (In reply to comment #13)
&gt; &gt; The issue still exist.
&gt; 
&gt; Chun, could you please try re-uploading the patch with:
&gt; 
&gt; readonly attribute [ImplementedAs=releaseTime] AudioParam release;
&gt; 
&gt; (and then changing the method name to &quot;releaseTime()&quot;)
&gt; 
&gt; Kentaro has landed the fix for this:
&gt; https://bugs.webkit.org/show_bug.cgi?id=81605
&gt; 
&gt; Thanks!

Hi Chris, I pushed a new patch, but it still can not be successfully build on Mac.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590111</commentid>
    <comment_count>18</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-03-28 10:37:07 -0700</bug_when>
    <thetext>Kentaro, any ideas why the [ImplementedAs] is still not working?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590593</commentid>
    <comment_count>19</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-28 16:43:16 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; Kentaro, any ideas why the [ImplementedAs] is still not working?

Would you paste the IDL file and the generated code that fails to build? I am happy to take a look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590595</commentid>
    <comment_count>20</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-28 16:46:48 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; Kentaro, any ideas why the [ImplementedAs] is still not working?

FYI, This is the patch that I landed: https://bugs.webkit.org/attachment.cgi?id=133483&amp;action=review Is there any issue around the change in ObjC/DOMTestObj.h and ObjC/DOMTestObj.mm?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590605</commentid>
    <comment_count>21</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-03-28 16:55:47 -0700</bug_when>
    <thetext>(In reply to comment #19)
&gt; (In reply to comment #18)
&gt; &gt; Kentaro, any ideas why the [ImplementedAs] is still not working?
&gt; 
&gt; Would you paste the IDL file and the generated code that fails to build? I am happy to take a look.

Hi Kentaro, the interesting part of the IDL is here:
readonly attribute [ImplementedAs=releaseTime] AudioParam release; // in Seconds

You can see in the patch in DynamicsCompressorNode.h that the method is called releaseTime():
AudioParam* releaseTime() { return m_release.get(); }

The mac port (EWS bot) still seems unhappy?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590627</commentid>
    <comment_count>22</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-28 17:08:41 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; readonly attribute [ImplementedAs=releaseTime] AudioParam release; // in Seconds
&gt; 
&gt; You can see in the patch in DynamicsCompressorNode.h that the method is called releaseTime():
&gt; AudioParam* releaseTime() { return m_release.get(); }
&gt; 
&gt; The mac port (EWS bot) still seems unhappy?

Ah, maybe the problem is not the method name in WebCore but the method name in ObjC-generated code. [ImplementedAs] just changes the method name in WebCore (e.g. release -&gt; releaseTime), and it doesn&apos;t change the method name in ObjC-generated code. Specifically,

 680 - (int)strawberry
 681{
 682    WebCore::JSMainThreadNullState state;
 683    return IMPL-&gt;blueberry();
 684}

should be (int)getStrawberry or something like that, to avoid name conflict.

BTW, do you want release() in ObjC? If not, the simplest approach is just to skip generating code for release() in CodeGeneratorObjC.pm. (There are already a lot of attributes/methods that are skipped in ObjC.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590691</commentid>
    <comment_count>23</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-03-28 18:09:21 -0700</bug_when>
    <thetext>(In reply to comment #22)
&gt; (In reply to comment #21)
&gt; &gt; readonly attribute [ImplementedAs=releaseTime] AudioParam release; // in Seconds
&gt; &gt; 
&gt; &gt; You can see in the patch in DynamicsCompressorNode.h that the method is called releaseTime():
&gt; &gt; AudioParam* releaseTime() { return m_release.get(); }
&gt; &gt; 
&gt; &gt; The mac port (EWS bot) still seems unhappy?
&gt; 
&gt; Ah, maybe the problem is not the method name in WebCore but the method name in ObjC-generated code. [ImplementedAs] just changes the method name in WebCore (e.g. release -&gt; releaseTime), and it doesn&apos;t change the method name in ObjC-generated code. Specifically,
&gt; 
&gt;  680 - (int)strawberry
&gt;  681{
&gt;  682    WebCore::JSMainThreadNullState state;
&gt;  683    return IMPL-&gt;blueberry();
&gt;  684}
&gt; 
&gt; should be (int)getStrawberry or something like that, to avoid name conflict.
&gt; 
&gt; BTW, do you want release() in ObjC? If not, the simplest approach is just to skip generating code for release() in CodeGeneratorObjC.pm. (There are already a lot of attributes/methods that are skipped in ObjC.)

Kentaro, thanks for the answer.  I guess we don&apos;t need an ObjC binding for this.  How can I skip generating code for release in the IDL file?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590707</commentid>
    <comment_count>24</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-28 18:26:08 -0700</bug_when>
    <thetext>(In reply to comment #23)
&gt; Kentaro, thanks for the answer.  I guess we don&apos;t need an ObjC binding for this.  How can I skip generating code for release in the IDL file?

We cannot do it in the IDL file and need to skip it in CodeGeneratorObjC.pm.

But things are a bit confusing. CodeGeneratorGObject.pm and CodeGeneratorCPP.pm already have SkipAttribute(), SkipFunction() and ShouldSkipType(), which judge if we should skip generating code for each attribute/method. On the other hand, CodeGeneratorObjC.pm does not yet have something like that. There are a lot of attributes/methods that CodeGeneratorObjC.pm cannot generate correctly, but they are not skipped,  and CodeGeneratorObjC.pm just generates &quot;meaningless&quot; code.

So the right fix would be

- Add SkipAttribute() to CodeGeneratorObjC.pm, just like CodeGeneratorGObject.pm.
- Add release() to SkipAttribute().

In the future, maybe we want to

- Add SkipFunction() to CodeGeneratorObjC.pm.
- Add more attributes/methods to SkipAttribute()/SkipFunction() in CodeGeneratorObjC.pm, so that &quot;meaningless&quot; code is not generated
- Rename ShouldSkipType() in CodeGeneratorCPP.pm to SkipAttribute()/SkipFunction(), for consistency.

Of course, you need to do them in this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>598709</commentid>
    <comment_count>25</comment_count>
      <attachid>136328</attachid>
    <who name="Raymond Toy">rtoy</who>
    <bug_when>2012-04-09 16:01:44 -0700</bug_when>
    <thetext>Created attachment 136328
Fix DynamicsCompressorNode idl issue with ObjC release() method.

This is a very minimal patch that fixes the release() issue with the DynamicsCompressorNode idl.  I did not copy SkipAttribute() from CodeGeneratorsGObject.pm and Kentaro suggested.  That didn&apos;t work for me and caused an error about a change in the public API of HMLEElement.  I stripped it down to the bare minimum to remove the conflict with release().

Please review this and let me know if this is the correct approach; I&apos;m not at all familiar with these scripts to generate the bindings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>598767</commentid>
    <comment_count>26</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-04-09 16:57:17 -0700</bug_when>
    <thetext>(In reply to comment #25)
&gt; Created an attachment (id=136328) [details]
&gt; Fix DynamicsCompressorNode idl issue with ObjC release() method.
&gt; 
&gt; This is a very minimal patch that fixes the release() issue with the DynamicsCompressorNode idl.  I did not copy SkipAttribute() from CodeGeneratorsGObject.pm and Kentaro suggested.  That didn&apos;t work for me and caused an error about a change in the public API of HMLEElement.  I stripped it down to the bare minimum to remove the conflict with release().
&gt; 
&gt; Please review this and let me know if this is the correct approach; I&apos;m not at all familiar with these scripts to generate the bindings.

Raymond, it looks like you forgot to include the original changes along with your build fix.  Please re-upload patch.

Also, did you check that the .release attribute is actually exposed in the DynamicsCompressorNode on the mac port?  It should be pretty easy to check by setting a break-point on a sample which creates this node (granular.html for example) and looking at the JS object in the developer tools inspector.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>598844</commentid>
    <comment_count>27</comment_count>
      <attachid>136363</attachid>
    <who name="Raymond Toy">rtoy</who>
    <bug_when>2012-04-09 18:37:07 -0700</bug_when>
    <thetext>Created attachment 136363
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>598850</commentid>
    <comment_count>28</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-09 18:40:49 -0700</bug_when>
    <thetext>Attachment 136363 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/weba...&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 8 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>598860</commentid>
    <comment_count>29</comment_count>
    <who name="Raymond Toy">rtoy</who>
    <bug_when>2012-04-09 18:47:16 -0700</bug_when>
    <thetext>(In reply to comment #26)
&gt; (In reply to comment #25)
&gt; &gt; Created an attachment (id=136328) [details] [details]
&gt; &gt; Fix DynamicsCompressorNode idl issue with ObjC release() method.
&gt; &gt; 
&gt; &gt; This is a very minimal patch that fixes the release() issue with the DynamicsCompressorNode idl.  I did not copy SkipAttribute() from CodeGeneratorsGObject.pm and Kentaro suggested.  That didn&apos;t work for me and caused an error about a change in the public API of HMLEElement.  I stripped it down to the bare minimum to remove the conflict with release().
&gt; &gt; 
&gt; &gt; Please review this and let me know if this is the correct approach; I&apos;m not at all familiar with these scripts to generate the bindings.
&gt; 
&gt; Raymond, it looks like you forgot to include the original changes along with your build fix.  Please re-upload patch.

Oops.  Didn&apos;t mean to do that.  New patch uploaded.
&gt; 
&gt; Also, did you check that the .release attribute is actually exposed in the DynamicsCompressorNode on the mac port?  It should be pretty easy to check by setting a break-point on a sample which creates this node (granular.html for example) and looking at the JS object in the developer tools inspector.

What I already did was to look at box2d and used the inspector to create a new dynamics compressor node.  I looked at the object and saw that there a release attribute.  I did not inspect the attribute itself, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>598865</commentid>
    <comment_count>30</comment_count>
      <attachid>136368</attachid>
    <who name="Raymond Toy">rtoy</who>
    <bug_when>2012-04-09 18:51:00 -0700</bug_when>
    <thetext>Created attachment 136368
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>599775</commentid>
    <comment_count>31</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-04-10 16:22:07 -0700</bug_when>
    <thetext>Eric, can you please confirm if the fix to CodeGeneratorObjC.pm is the right approach?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600385</commentid>
    <comment_count>32</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2012-04-11 10:37:06 -0700</bug_when>
    <thetext>(In reply to comment #31)
&gt; Eric, can you please confirm if the fix to CodeGeneratorObjC.pm is the right approach?

Sorry Chris, I have no idea :-(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600452</commentid>
    <comment_count>33</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-04-11 11:42:32 -0700</bug_when>
    <thetext>Kentaro, can you please confirm if the fix to CodeGeneratorObjC.pm is the right approach?

Thanks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605024</commentid>
    <comment_count>34</comment_count>
      <attachid>136368</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-04-18 13:13:55 -0700</bug_when>
    <thetext>Comment on attachment 136368
Patch

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

&gt; Source/WebCore/Modules/webaudio/DynamicsCompressorNode.h:56
&gt; +    AudioParam* releaseTime() { return m_release.get(); }

Now this can just be release() by removing [ImplementedAs=releaseTime].

&gt; Source/WebCore/Modules/webaudio/DynamicsCompressorNode.idl:35
&gt; +        readonly attribute [ImplementedAs=releaseTime] AudioParam release; // in Seconds

[ImplementedAs=releaseTime] is no longer needed, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605031</commentid>
    <comment_count>35</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-04-18 13:18:42 -0700</bug_when>
    <thetext>(In reply to comment #34)
&gt; (From update of attachment 136368 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=136368&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/DynamicsCompressorNode.h:56
&gt; &gt; +    AudioParam* releaseTime() { return m_release.get(); }
&gt; 
&gt; Now this can just be release() by removing [ImplementedAs=releaseTime].
&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/DynamicsCompressorNode.idl:35
&gt; &gt; +        readonly attribute [ImplementedAs=releaseTime] AudioParam release; // in Seconds
&gt; 
&gt; [ImplementedAs=releaseTime] is no longer needed, right?

Yes, I think it can now be simplified as you suggest.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605161</commentid>
    <comment_count>36</comment_count>
      <attachid>137785</attachid>
    <who name="Raymond Toy">rtoy</who>
    <bug_when>2012-04-18 15:30:51 -0700</bug_when>
    <thetext>Created attachment 137785
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605164</commentid>
    <comment_count>37</comment_count>
      <attachid>137785</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-04-18 15:33:18 -0700</bug_when>
    <thetext>Comment on attachment 137785
Patch

r+ for the IDL part and ObjC part. I am not familiar with the webaudio part though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605168</commentid>
    <comment_count>38</comment_count>
      <attachid>137785</attachid>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-04-18 15:35:39 -0700</bug_when>
    <thetext>Comment on attachment 137785
Patch

Web Audio part looks fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605303</commentid>
    <comment_count>39</comment_count>
      <attachid>137785</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-18 19:33:01 -0700</bug_when>
    <thetext>Comment on attachment 137785
Patch

Clearing flags on attachment: 137785

Committed r114603: &lt;http://trac.webkit.org/changeset/114603&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605304</commentid>
    <comment_count>40</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-18 19:33:08 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132053</attachid>
            <date>2012-03-15 08:17:58 -0700</date>
            <delta_ts>2012-03-16 00:41:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81221-20120315232057.patch</filename>
            <type>text/plain</type>
            <size>7650</size>
            <attacher name="Gao Chun">chun.gao</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEwODM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTk2NjZmZTVmNjE4MDVk
NWI1ODI0YmYzZTYxODg3MmMwNjQxNWQzNS4uYzBkNzdmNTUzYmIyNTE4ZmUyZTBjNjAwMDZiNTNj
MTJiYmE1NjU4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTAzLTE1ICBHYW8g
Q2h1biAgPGNodW4uZ2FvQGludGVsLmNvbT4KKworICAgICAgICBFeHBvc2UgYXR0YWNrLCByZWxl
YXNlIGFzIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUncyBhdHRyaWJ1dGVzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODEyMjEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiB3ZWJhdWRpby9keW5hbWlj
c2NvbXByZXNzb3ItYmFzaWMuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vRHluYW1p
Y3NDb21wcmVzc29yLmg6CisgICAgICAgIChEeW5hbWljc0NvbXByZXNzb3IpOgorICAgICAgICAq
IHdlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
RHluYW1pY3NDb21wcmVzc29yTm9kZTo6RHluYW1pY3NDb21wcmVzc29yTm9kZSk6CisgICAgICAg
IChXZWJDb3JlOjpEeW5hbWljc0NvbXByZXNzb3JOb2RlOjpwcm9jZXNzKToKKyAgICAgICAgKiB3
ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmg6CisgICAgICAgIChXZWJDb3JlOjpEeW5h
bWljc0NvbXByZXNzb3JOb2RlOjphdHRhY2spOgorICAgICAgICAoV2ViQ29yZTo6RHluYW1pY3ND
b21wcmVzc29yTm9kZTo6cmVsZWFzZSk6CisgICAgICAgIChEeW5hbWljc0NvbXByZXNzb3JOb2Rl
KToKKyAgICAgICAgKiB3ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbDoKKwogMjAx
Mi0wMy0xNCAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgogCiAgICAgICAg
IEFYRGVzY3JpcHRpb24gZm9yIEhUTUw1IGZvb3RlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vYXVkaW8vRHluYW1pY3NDb21wcmVzc29yLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9hdWRpby9EeW5hbWljc0NvbXByZXNzb3IuaAppbmRleCA1MjAxMzI4OTg0MTk0NWRh
NzNmZGE2NjBiZTFmMmI3Y2Q2MTkxMzgxLi5mNzgxYWZlN2I5NzIyOTMwZTZmMjU0ZWNjMzM0ZDk3
NzUyZGQ2NmVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EeW5h
bWljc0NvbXByZXNzb3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EeW5h
bWljc0NvbXByZXNzb3IuaApAQCAtODUsOCArODUsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgdW5zaWdu
ZWQgbV9udW1iZXJPZkNoYW5uZWxzOwogCiAgICAgLy8gbV9wYXJhbWV0ZXJzIGhvbGRzIHRoZSB0
d2Vha2FibGUgY29tcHJlc3NvciBwYXJhbWV0ZXJzLgotICAgIC8vIEZJWE1FOiBleHBvc2Ugc29t
ZSBvZiB0aGUgbW9zdCBpbXBvcnRhbnQgb25lcyAoc3VjaCBhcyB0aHJlc2hvbGQsIGF0dGFjaywg
cmVsZWFzZSkKLSAgICAvLyBhcyBEeW5hbWljc0NvbXByZXNzb3JOb2RlIGF0dHJpYnV0ZXMuCiAg
ICAgZmxvYXQgbV9wYXJhbWV0ZXJzW1BhcmFtTGFzdF07CiAgICAgdm9pZCBpbml0aWFsaXplUGFy
YW1ldGVycygpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93ZWJhdWRpby9EeW5hbWlj
c0NvbXByZXNzb3JOb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dlYmF1ZGlvL0R5bmFtaWNzQ29t
cHJlc3Nvck5vZGUuY3BwCmluZGV4IGVmNzA0NzkwNzJjYzM1MDY2NzNkNjFlOWNjZWZhNDgwMGZh
N2YwMzYuLmM0ZTM4OTg5N2NlMzMwZmRhODhmMDkzZmY5OTEzNDAwN2Q2MTc0ZDMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuY3BwCkBA
IC01MCwxMSArNTAsMTUgQEAgRHluYW1pY3NDb21wcmVzc29yTm9kZTo6RHluYW1pY3NDb21wcmVz
c29yTm9kZShBdWRpb0NvbnRleHQqIGNvbnRleHQsIGZsb2F0IHNhbXAKICAgICBtX2tuZWUgPSBB
dWRpb1BhcmFtOjpjcmVhdGUoImtuZWUiLCAzMCwgMCwgNDApOwogICAgIG1fcmF0aW8gPSBBdWRp
b1BhcmFtOjpjcmVhdGUoInJhdGlvIiwgMTIsIDEsIDIwKTsKICAgICBtX3JlZHVjdGlvbiA9IEF1
ZGlvUGFyYW06OmNyZWF0ZSgicmVkdWN0aW9uIiwgMCwgLTIwLCAwKTsKKyAgICBtX2F0dGFjayA9
IEF1ZGlvUGFyYW06OmNyZWF0ZSgiYXR0YWNrIiwgMC4wMDMsIDAsIDEpOworICAgIG1fcmVsZWFz
ZSA9IEF1ZGlvUGFyYW06OmNyZWF0ZSgicmVsZWFzZSIsIDAuMjUwLCAwLCAxKTsKIAogICAgIG1f
dGhyZXNob2xkLT5zZXRDb250ZXh0KGNvbnRleHQpOwogICAgIG1fa25lZS0+c2V0Q29udGV4dChj
b250ZXh0KTsKICAgICBtX3JhdGlvLT5zZXRDb250ZXh0KGNvbnRleHQpOwogICAgIG1fcmVkdWN0
aW9uLT5zZXRDb250ZXh0KGNvbnRleHQpOworICAgIG1fYXR0YWNrLT5zZXRDb250ZXh0KGNvbnRl
eHQpOworICAgIG1fcmVsZWFzZS0+c2V0Q29udGV4dChjb250ZXh0KTsKIAogICAgIGluaXRpYWxp
emUoKTsKIH0KQEAgLTcyLDEwICs3NiwxNCBAQCB2b2lkIER5bmFtaWNzQ29tcHJlc3Nvck5vZGU6
OnByb2Nlc3Moc2l6ZV90IGZyYW1lc1RvUHJvY2VzcykKICAgICBmbG9hdCB0aHJlc2hvbGQgPSBt
X3RocmVzaG9sZC0+dmFsdWUoKTsKICAgICBmbG9hdCBrbmVlID0gbV9rbmVlLT52YWx1ZSgpOwog
ICAgIGZsb2F0IHJhdGlvID0gbV9yYXRpby0+dmFsdWUoKTsKKyAgICBmbG9hdCBhdHRhY2sgPSBt
X2F0dGFjay0+dmFsdWUoKTsKKyAgICBmbG9hdCByZWxlYXNlID0gbV9yZWxlYXNlLT52YWx1ZSgp
OwogCiAgICAgbV9keW5hbWljc0NvbXByZXNzb3ItPnNldFBhcmFtZXRlclZhbHVlKER5bmFtaWNz
Q29tcHJlc3Nvcjo6UGFyYW1UaHJlc2hvbGQsIHRocmVzaG9sZCk7CiAgICAgbV9keW5hbWljc0Nv
bXByZXNzb3ItPnNldFBhcmFtZXRlclZhbHVlKER5bmFtaWNzQ29tcHJlc3Nvcjo6UGFyYW1LbmVl
LCBrbmVlKTsKICAgICBtX2R5bmFtaWNzQ29tcHJlc3Nvci0+c2V0UGFyYW1ldGVyVmFsdWUoRHlu
YW1pY3NDb21wcmVzc29yOjpQYXJhbVJhdGlvLCByYXRpbyk7CisgICAgbV9keW5hbWljc0NvbXBy
ZXNzb3ItPnNldFBhcmFtZXRlclZhbHVlKER5bmFtaWNzQ29tcHJlc3Nvcjo6UGFyYW1BdHRhY2ss
IGF0dGFjayk7CisgICAgbV9keW5hbWljc0NvbXByZXNzb3ItPnNldFBhcmFtZXRlclZhbHVlKER5
bmFtaWNzQ29tcHJlc3Nvcjo6UGFyYW1SZWxlYXNlLCByZWxlYXNlKTsKIAogICAgIG1fZHluYW1p
Y3NDb21wcmVzc29yLT5wcm9jZXNzKGlucHV0KDApLT5idXMoKSwgb3V0cHV0QnVzLCBmcmFtZXNU
b1Byb2Nlc3MpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93ZWJhdWRpby9EeW5hbWlj
c0NvbXByZXNzb3JOb2RlLmggYi9Tb3VyY2UvV2ViQ29yZS93ZWJhdWRpby9EeW5hbWljc0NvbXBy
ZXNzb3JOb2RlLmgKaW5kZXggY2Y3ZTYzYTQyOWZiZGQ0OWE2MTdhN2QxNmYwZmI3MmRkZWZmZmY5
Ny4uMzM4ZGZmM2IwNTA3NjMzYjkyMmEwMGE5NDE3MjVlZWNlODlmOTUyOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaApAQCAtNTIsNiAr
NTIsOCBAQCBwdWJsaWM6CiAgICAgQXVkaW9QYXJhbSogdGhyZXNob2xkKCkgeyByZXR1cm4gbV90
aHJlc2hvbGQuZ2V0KCk7IH0KICAgICBBdWRpb1BhcmFtKiBrbmVlKCkgeyByZXR1cm4gbV9rbmVl
LmdldCgpOyB9CiAgICAgQXVkaW9QYXJhbSogcmF0aW8oKSB7IHJldHVybiBtX3JhdGlvLmdldCgp
OyB9CisgICAgQXVkaW9QYXJhbSogYXR0YWNrKCkgeyByZXR1cm4gbV9hdHRhY2suZ2V0KCk7IH0K
KyAgICBBdWRpb1BhcmFtKiByZWxlYXNlKCkgeyByZXR1cm4gbV9yZWxlYXNlLmdldCgpOyB9CiAK
ICAgICAvLyBBbW91bnQgYnkgd2hpY2ggdGhlIGNvbXByZXNzb3IgaXMgY3VycmVudGx5IGNvbXBy
ZXNzaW5nIHRoZSBzaWduYWwgaW4gZGVjaWJlbHMuCiAgICAgQXVkaW9QYXJhbSogcmVkdWN0aW9u
KCkgeyByZXR1cm4gbV9yZWR1Y3Rpb24uZ2V0KCk7IH0KQEAgLTY3LDYgKzY5LDggQEAgcHJpdmF0
ZToKICAgICBSZWZQdHI8QXVkaW9QYXJhbT4gbV9rbmVlOwogICAgIFJlZlB0cjxBdWRpb1BhcmFt
PiBtX3JhdGlvOwogICAgIFJlZlB0cjxBdWRpb1BhcmFtPiBtX3JlZHVjdGlvbjsKKyAgICBSZWZQ
dHI8QXVkaW9QYXJhbT4gbV9hdHRhY2s7CisgICAgUmVmUHRyPEF1ZGlvUGFyYW0+IG1fcmVsZWFz
ZTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUv
d2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwKaW5kZXggNjBkNjRmZGEwNzdlNGFj
MTcwYmMwM2MxZWU5NmEzYjJkODAxOGI3MC4uYTJlMzU2NTZiZWQzZWM2MzJiZDg5ODc3MDFjNWE1
YjUyMTNiMDlkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd2ViYXVkaW8vRHluYW1pY3ND
b21wcmVzc29yTm9kZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvd2ViYXVkaW8vRHluYW1pY3ND
b21wcmVzc29yTm9kZS5pZGwKQEAgLTMxLDUgKzMxLDcgQEAgbW9kdWxlIGF1ZGlvIHsKICAgICAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIEF1ZGlvUGFyYW0ga25lZTsgLy8gaW4gRGVjaWJlbHMKICAg
ICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEF1ZGlvUGFyYW0gcmF0aW87IC8vIHVuaXQtbGVzcwog
ICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgQXVkaW9QYXJhbSByZWR1Y3Rpb247IC8vIGluIERl
Y2liZWxzCisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBBdWRpb1BhcmFtIGF0dGFjazsgLy8g
aW4gU2Vjb25kcworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgQXVkaW9QYXJhbSByZWxlYXNl
OyAvLyBpbiBTZWNvbmRzCiAgICAgfTsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBiZTg5MjA1NDIwY2ZjMWE1N2RmNTY4
NDQxNjhlZjM1MDczZDVjY2M2Li41NjEzMzZiZDM2M2Q0YmI0NzYyODc3ZTk0NDc1ZDAwMTk2OWI1
OTE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTItMDMtMTUgIEdhbyBDaHVuICA8Y2h1bi5n
YW9AaW50ZWwuY29tPgorCisgICAgICAgIEV4cG9zZSBhdHRhY2ssIHJlbGVhc2UgYXMgRHluYW1p
Y3NDb21wcmVzc29yTm9kZSdzIGF0dHJpYnV0ZXMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTIyMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2lj
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWJhdWRpby9keW5hbWljc2NvbXByZXNzb3ItYmFz
aWMuaHRtbDoKKwogMjAxMi0wMy0xNSAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxp
YS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgR1RLIGJhc2VsaW5lcyBmb3IgbmV3IGZhc3Qv
Y3NzIHRlc3QuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9keW5hbWljc2NvbXBy
ZXNzb3ItYmFzaWMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Nj
b21wcmVzc29yLWJhc2ljLWV4cGVjdGVkLnR4dAppbmRleCBkZDM5OTkxNDkzOTJjNzdhNmRmMGRj
YmNlNmU3ZjNlZmIzYzg3YTZjLi4wOWMzMGU2YmFjZGE5OTlkMzU2OGVlNWE4NDQ3NDFiZmZkMTZk
MTRiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9keW5hbWljc2NvbXByZXNzb3It
YmFzaWMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5bmFtaWNzY29t
cHJlc3Nvci1iYXNpYy1leHBlY3RlZC50eHQKQEAgLTUsNiArNSw4IEBAIE9uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFCiBQQVNTIHRocmVzaG9sZCBhdHRyaWJ1dGUgaGFzIGNvcnJlY3QgZGVmYXVsdCB2
YWx1ZS4KIFBBU1Mga25lZSBhdHRyaWJ1dGUgaGFzIGNvcnJlY3QgZGVmYXVsdCB2YWx1ZS4KIFBB
U1MgcmF0aW8gYXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuCitQQVNTIGF0dGFj
ayBhdHRyaWJ1dGUgaGFzIGNvcnJlY3QgZGVmYXVsdCB2YWx1ZS4KK1BBU1MgcmVsZWFzZSBhdHRy
aWJ1dGUgaGFzIGNvcnJlY3QgZGVmYXVsdCB2YWx1ZS4KIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVk
aW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2ljLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9k
eW5hbWljc2NvbXByZXNzb3ItYmFzaWMuaHRtbAppbmRleCBkMTIyYmVjYzI1MzFmNzlkOWE1YzNk
OTlhZTA0NjA0NTlmMWZkMTFiLi44N2M1NGQwN2M3MjMxNzAyYWMyZDdiMTgyODIxNmE5MGJhMzMx
MDU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9keW5hbWljc2NvbXByZXNzb3It
YmFzaWMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9keW5hbWljc2NvbXByZXNzb3It
YmFzaWMuaHRtbApAQCAtNDMsNiArNDMsMTYgQEAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKICAgICAg
ICAgZWxzZQogICAgICAgICAgICAgdGVzdEZhaWxlZCgicmF0aW8gYXR0cmlidXRlIGhhcyBpbmNv
cnJlY3QgZGVmYXVsdCB2YWx1ZS4iKTsKICAgICAgICAgCisgICAgICAgIGlmIChjb21wcmVzc29y
LmF0dGFjay52YWx1ZSAtIDAuMDAzIDwgMWUtNykKKyAgICAgICAgICAgIHRlc3RQYXNzZWQoImF0
dGFjayBhdHRyaWJ1dGUgaGFzIGNvcnJlY3QgZGVmYXVsdCB2YWx1ZS4iKTsKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgdGVzdEZhaWxlZCgiYXR0YWNrIGF0dHJpYnV0ZSBoYXMgaW5jb3JyZWN0
IGRlZmF1bHQgdmFsdWUuIik7CisKKyAgICAgICAgaWYgKGNvbXByZXNzb3IucmVsZWFzZS52YWx1
ZSAtIDAuMjUgPCAxZS03KQorICAgICAgICAgICAgdGVzdFBhc3NlZCgicmVsZWFzZSBhdHRyaWJ1
dGUgaGFzIGNvcnJlY3QgZGVmYXVsdCB2YWx1ZS4iKTsKKyAgICAgICAgZWxzZQorICAgICAgICAg
ICAgdGVzdEZhaWxlZCgicmVsZWFzZSBhdHRyaWJ1dGUgaGFzIGluY29ycmVjdCBkZWZhdWx0IHZh
bHVlLiIpOworCiAgICAgfSBjYXRjaChlKSB7CiAgICAgICAgIHRlc3RGYWlsZWQoIkV4Y2VwdGlv
biB0aHJvd24gd2hlbiBhY2Nlc3NpbmcgRHluYW1pY3NDb21wcmVzc29yTm9kZSBhdHRyaWJ1dGVz
LiIpOwogICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134231</attachid>
            <date>2012-03-28 00:55:27 -0700</date>
            <delta_ts>2012-03-28 01:31:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81221-20120328155843.patch</filename>
            <type>text/plain</type>
            <size>7754</size>
            <attacher name="Gao Chun">chun.gao</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyMzU3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWVkZTkxMTE1OGIwMGY2
ZTY2YTljMmRiMzIzMzQzODkzNmM5NzE0ZS4uNWZkMmYxZDYyMmEwYWNlNGJmNWRhYzA3OGNlNjI2
ZGYzODJjOGFkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAzLTI4ICBHYW8g
Q2h1biAgPGNodW4uZ2FvQGludGVsLmNvbT4KKworICAgICAgICBFeHBvc2UgYXR0YWNrLCByZWxl
YXNlIGFzIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUncyBhdHRyaWJ1dGVzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODEyMjEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vRHlu
YW1pY3NDb21wcmVzc29yTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEeW5hbWljc0NvbXBy
ZXNzb3JOb2RlOjpEeW5hbWljc0NvbXByZXNzb3JOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkR5
bmFtaWNzQ29tcHJlc3Nvck5vZGU6OnByb2Nlc3MpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5oOgorICAgICAgICAoV2ViQ29yZTo6RHluYW1pY3ND
b21wcmVzc29yTm9kZTo6YXR0YWNrKToKKyAgICAgICAgKFdlYkNvcmU6OkR5bmFtaWNzQ29tcHJl
c3Nvck5vZGU6OnJlbGVhc2VUaW1lKToKKyAgICAgICAgKER5bmFtaWNzQ29tcHJlc3Nvck5vZGUp
OgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGw6
CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vRHluYW1pY3NDb21wcmVzc29yLmg6CisgICAgICAg
IChEeW5hbWljc0NvbXByZXNzb3IpOgorCiAyMDEyLTAzLTI3ICBLZW5pY2hpIElzaGliYXNoaSAg
PGJhc2hpQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIFVuaW5pdGlhbGl6ZWQg
YWNjZXNzIGluIFNpbXBsZUZvbnREYXRhU2tpYTo6cGxhdGZvcm1Jbml0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2Rl
LmNwcAppbmRleCBlZjcwNDc5MDcyY2MzNTA2NjczZDYxZTljY2VmYTQ4MDBmYTdmMDM2Li5jNGUz
ODk4OTdjZTMzMGZkYTg4ZjA5M2ZmOTkxMzQwMDdkNjE3NGQzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5j
cHAKQEAgLTUwLDExICs1MCwxNSBAQCBEeW5hbWljc0NvbXByZXNzb3JOb2RlOjpEeW5hbWljc0Nv
bXByZXNzb3JOb2RlKEF1ZGlvQ29udGV4dCogY29udGV4dCwgZmxvYXQgc2FtcAogICAgIG1fa25l
ZSA9IEF1ZGlvUGFyYW06OmNyZWF0ZSgia25lZSIsIDMwLCAwLCA0MCk7CiAgICAgbV9yYXRpbyA9
IEF1ZGlvUGFyYW06OmNyZWF0ZSgicmF0aW8iLCAxMiwgMSwgMjApOwogICAgIG1fcmVkdWN0aW9u
ID0gQXVkaW9QYXJhbTo6Y3JlYXRlKCJyZWR1Y3Rpb24iLCAwLCAtMjAsIDApOworICAgIG1fYXR0
YWNrID0gQXVkaW9QYXJhbTo6Y3JlYXRlKCJhdHRhY2siLCAwLjAwMywgMCwgMSk7CisgICAgbV9y
ZWxlYXNlID0gQXVkaW9QYXJhbTo6Y3JlYXRlKCJyZWxlYXNlIiwgMC4yNTAsIDAsIDEpOwogCiAg
ICAgbV90aHJlc2hvbGQtPnNldENvbnRleHQoY29udGV4dCk7CiAgICAgbV9rbmVlLT5zZXRDb250
ZXh0KGNvbnRleHQpOwogICAgIG1fcmF0aW8tPnNldENvbnRleHQoY29udGV4dCk7CiAgICAgbV9y
ZWR1Y3Rpb24tPnNldENvbnRleHQoY29udGV4dCk7CisgICAgbV9hdHRhY2stPnNldENvbnRleHQo
Y29udGV4dCk7CisgICAgbV9yZWxlYXNlLT5zZXRDb250ZXh0KGNvbnRleHQpOwogCiAgICAgaW5p
dGlhbGl6ZSgpOwogfQpAQCAtNzIsMTAgKzc2LDE0IEBAIHZvaWQgRHluYW1pY3NDb21wcmVzc29y
Tm9kZTo6cHJvY2VzcyhzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKQogICAgIGZsb2F0IHRocmVzaG9s
ZCA9IG1fdGhyZXNob2xkLT52YWx1ZSgpOwogICAgIGZsb2F0IGtuZWUgPSBtX2tuZWUtPnZhbHVl
KCk7CiAgICAgZmxvYXQgcmF0aW8gPSBtX3JhdGlvLT52YWx1ZSgpOworICAgIGZsb2F0IGF0dGFj
ayA9IG1fYXR0YWNrLT52YWx1ZSgpOworICAgIGZsb2F0IHJlbGVhc2UgPSBtX3JlbGVhc2UtPnZh
bHVlKCk7CiAKICAgICBtX2R5bmFtaWNzQ29tcHJlc3Nvci0+c2V0UGFyYW1ldGVyVmFsdWUoRHlu
YW1pY3NDb21wcmVzc29yOjpQYXJhbVRocmVzaG9sZCwgdGhyZXNob2xkKTsKICAgICBtX2R5bmFt
aWNzQ29tcHJlc3Nvci0+c2V0UGFyYW1ldGVyVmFsdWUoRHluYW1pY3NDb21wcmVzc29yOjpQYXJh
bUtuZWUsIGtuZWUpOwogICAgIG1fZHluYW1pY3NDb21wcmVzc29yLT5zZXRQYXJhbWV0ZXJWYWx1
ZShEeW5hbWljc0NvbXByZXNzb3I6OlBhcmFtUmF0aW8sIHJhdGlvKTsKKyAgICBtX2R5bmFtaWNz
Q29tcHJlc3Nvci0+c2V0UGFyYW1ldGVyVmFsdWUoRHluYW1pY3NDb21wcmVzc29yOjpQYXJhbUF0
dGFjaywgYXR0YWNrKTsKKyAgICBtX2R5bmFtaWNzQ29tcHJlc3Nvci0+c2V0UGFyYW1ldGVyVmFs
dWUoRHluYW1pY3NDb21wcmVzc29yOjpQYXJhbVJlbGVhc2UsIHJlbGVhc2UpOwogCiAgICAgbV9k
eW5hbWljc0NvbXByZXNzb3ItPnByb2Nlc3MoaW5wdXQoMCktPmJ1cygpLCBvdXRwdXRCdXMsIGZy
YW1lc1RvUHJvY2Vzcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
YXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmgKaW5kZXggY2Y3ZTYzYTQyOWZiZGQ0OWE2
MTdhN2QxNmYwZmI3MmRkZWZmZmY5Ny4uYWNiZjA5ZjI5Y2ZhMGQ2YTM5MzlkYWMzYTA0MjM2NTY3
N2VjZjFmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9EeW5h
bWljc0NvbXByZXNzb3JOb2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRp
by9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmgKQEAgLTUyLDYgKzUyLDggQEAgcHVibGljOgogICAg
IEF1ZGlvUGFyYW0qIHRocmVzaG9sZCgpIHsgcmV0dXJuIG1fdGhyZXNob2xkLmdldCgpOyB9CiAg
ICAgQXVkaW9QYXJhbSoga25lZSgpIHsgcmV0dXJuIG1fa25lZS5nZXQoKTsgfQogICAgIEF1ZGlv
UGFyYW0qIHJhdGlvKCkgeyByZXR1cm4gbV9yYXRpby5nZXQoKTsgfQorICAgIEF1ZGlvUGFyYW0q
IGF0dGFjaygpIHsgcmV0dXJuIG1fYXR0YWNrLmdldCgpOyB9CisgICAgQXVkaW9QYXJhbSogcmVs
ZWFzZVRpbWUoKSB7IHJldHVybiBtX3JlbGVhc2UuZ2V0KCk7IH0KIAogICAgIC8vIEFtb3VudCBi
eSB3aGljaCB0aGUgY29tcHJlc3NvciBpcyBjdXJyZW50bHkgY29tcHJlc3NpbmcgdGhlIHNpZ25h
bCBpbiBkZWNpYmVscy4KICAgICBBdWRpb1BhcmFtKiByZWR1Y3Rpb24oKSB7IHJldHVybiBtX3Jl
ZHVjdGlvbi5nZXQoKTsgfQpAQCAtNjcsNiArNjksOCBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxB
dWRpb1BhcmFtPiBtX2tuZWU7CiAgICAgUmVmUHRyPEF1ZGlvUGFyYW0+IG1fcmF0aW87CiAgICAg
UmVmUHRyPEF1ZGlvUGFyYW0+IG1fcmVkdWN0aW9uOworICAgIFJlZlB0cjxBdWRpb1BhcmFtPiBt
X2F0dGFjazsKKyAgICBSZWZQdHI8QXVkaW9QYXJhbT4gbV9yZWxlYXNlOwogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwKaW5kZXggNjBkNjRmZGEwNzdlNGFj
MTcwYmMwM2MxZWU5NmEzYjJkODAxOGI3MC4uMjgxMWExMjJkODQ0OWVhYWYyYjhkYWZmZjFkMGY3
NTE2MWViMmRhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9E
eW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRsCkBAIC0zMSw1ICszMSw3IEBAIG1vZHVs
ZSBhdWRpbyB7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBBdWRpb1BhcmFtIGtuZWU7IC8v
IGluIERlY2liZWxzCiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBBdWRpb1BhcmFtIHJhdGlv
OyAvLyB1bml0LWxlc3MKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEF1ZGlvUGFyYW0gcmVk
dWN0aW9uOyAvLyBpbiBEZWNpYmVscworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgQXVkaW9Q
YXJhbSBhdHRhY2s7IC8vIGluIFNlY29uZHMKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtJ
bXBsZW1lbnRlZEFzPXJlbGVhc2VUaW1lXSBBdWRpb1BhcmFtIHJlbGVhc2U7IC8vIGluIFNlY29u
ZHMKICAgICB9OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
RHluYW1pY3NDb21wcmVzc29yLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EeW5h
bWljc0NvbXByZXNzb3IuaAppbmRleCA1MjAxMzI4OTg0MTk0NWRhNzNmZGE2NjBiZTFmMmI3Y2Q2
MTkxMzgxLi5mNzgxYWZlN2I5NzIyOTMwZTZmMjU0ZWNjMzM0ZDk3NzUyZGQ2NmVhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EeW5hbWljc0NvbXByZXNzb3IuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EeW5hbWljc0NvbXByZXNzb3IuaApA
QCAtODUsOCArODUsNiBAQCBwcm90ZWN0ZWQ6CiAgICAgdW5zaWduZWQgbV9udW1iZXJPZkNoYW5u
ZWxzOwogCiAgICAgLy8gbV9wYXJhbWV0ZXJzIGhvbGRzIHRoZSB0d2Vha2FibGUgY29tcHJlc3Nv
ciBwYXJhbWV0ZXJzLgotICAgIC8vIEZJWE1FOiBleHBvc2Ugc29tZSBvZiB0aGUgbW9zdCBpbXBv
cnRhbnQgb25lcyAoc3VjaCBhcyB0aHJlc2hvbGQsIGF0dGFjaywgcmVsZWFzZSkKLSAgICAvLyBh
cyBEeW5hbWljc0NvbXByZXNzb3JOb2RlIGF0dHJpYnV0ZXMuCiAgICAgZmxvYXQgbV9wYXJhbWV0
ZXJzW1BhcmFtTGFzdF07CiAgICAgdm9pZCBpbml0aWFsaXplUGFyYW1ldGVycygpOwogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5k
ZXggYTRiYzJmM2IyYTc1MmE2MjFkMGRhMzE0NzM2NjZlZTBiMjMyNTlkNC4uN2NlOTgxN2RiODhm
OGVjMWI3ZmY2YzBlYjkyNzY0YmQ5YmRjM2I1NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEy
LTAzLTI4ICBHYW8gQ2h1biAgPGNodW4uZ2FvQGludGVsLmNvbT4KKworICAgICAgICBFeHBvc2Ug
YXR0YWNrLCByZWxlYXNlIGFzIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUncyBhdHRyaWJ1dGVzLgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODEyMjEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHdlYmF1ZGlv
L2R5bmFtaWNzY29tcHJlc3Nvci1iYXNpYy1leHBlY3RlZC50eHQ6CisgICAgICAgICogd2ViYXVk
aW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2ljLmh0bWw6CisKIDIwMTItMDMtMjcgIERpcmsgUHJh
bmtlICA8ZHByYW5rZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgTW9yZSBmbGFreSB0ZXN0cyEK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5bmFtaWNzY29tcHJlc3Nvci1iYXNp
Yy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9keW5hbWljc2NvbXByZXNzb3It
YmFzaWMtZXhwZWN0ZWQudHh0CmluZGV4IGRkMzk5OTE0OTM5MmM3N2E2ZGYwZGNiY2U2ZTdmM2Vm
YjNjODdhNmMuLjA5YzMwZTZiYWNkYTk5OWQzNTY4ZWU1YTg0NDc0MWJmZmQxNmQxNGIgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5bmFtaWNzY29tcHJlc3Nvci1iYXNpYy1leHBl
Y3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29yLWJh
c2ljLWV4cGVjdGVkLnR4dApAQCAtNSw2ICs1LDggQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUK
IFBBU1MgdGhyZXNob2xkIGF0dHJpYnV0ZSBoYXMgY29ycmVjdCBkZWZhdWx0IHZhbHVlLgogUEFT
UyBrbmVlIGF0dHJpYnV0ZSBoYXMgY29ycmVjdCBkZWZhdWx0IHZhbHVlLgogUEFTUyByYXRpbyBh
dHRyaWJ1dGUgaGFzIGNvcnJlY3QgZGVmYXVsdCB2YWx1ZS4KK1BBU1MgYXR0YWNrIGF0dHJpYnV0
ZSBoYXMgY29ycmVjdCBkZWZhdWx0IHZhbHVlLgorUEFTUyByZWxlYXNlIGF0dHJpYnV0ZSBoYXMg
Y29ycmVjdCBkZWZhdWx0IHZhbHVlLgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQog
CiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9keW5hbWlj
c2NvbXByZXNzb3ItYmFzaWMuaHRtbCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5bmFtaWNzY29t
cHJlc3Nvci1iYXNpYy5odG1sCmluZGV4IGQxMjJiZWNjMjUzMWY3OWQ5YTVjM2Q5OWFlMDQ2MDQ1
OWYxZmQxMWIuLmIwMzQxOGZjNmRkZGE4OGZhMjQ2NjI1ZjkwMjc1MDNiOTRhZjMyMjkgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5bmFtaWNzY29tcHJlc3Nvci1iYXNpYy5odG1s
CisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5bmFtaWNzY29tcHJlc3Nvci1iYXNpYy5odG1s
CkBAIC00Myw2ICs0MywxNiBAQCBmdW5jdGlvbiBydW5UZXN0KCkgewogICAgICAgICBlbHNlCiAg
ICAgICAgICAgICB0ZXN0RmFpbGVkKCJyYXRpbyBhdHRyaWJ1dGUgaGFzIGluY29ycmVjdCBkZWZh
dWx0IHZhbHVlLiIpOwogICAgICAgICAKKyAgICAgICAgaWYgKGNvbXByZXNzb3IuYXR0YWNrLnZh
bHVlIC0gMC4wMDMgPCAzZS04KQorICAgICAgICAgICAgdGVzdFBhc3NlZCgiYXR0YWNrIGF0dHJp
YnV0ZSBoYXMgY29ycmVjdCBkZWZhdWx0IHZhbHVlLiIpOworICAgICAgICBlbHNlCisgICAgICAg
ICAgICB0ZXN0RmFpbGVkKCJhdHRhY2sgYXR0cmlidXRlIGhhcyBpbmNvcnJlY3QgZGVmYXVsdCB2
YWx1ZS4iKTsKKworICAgICAgICBpZiAoY29tcHJlc3Nvci5yZWxlYXNlLnZhbHVlIC0gMC4yNSA8
IDNlLTgpCisgICAgICAgICAgICB0ZXN0UGFzc2VkKCJyZWxlYXNlIGF0dHJpYnV0ZSBoYXMgY29y
cmVjdCBkZWZhdWx0IHZhbHVlLiIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0ZXN0RmFp
bGVkKCJyZWxlYXNlIGF0dHJpYnV0ZSBoYXMgaW5jb3JyZWN0IGRlZmF1bHQgdmFsdWUuIik7CisK
ICAgICB9IGNhdGNoKGUpIHsKICAgICAgICAgdGVzdEZhaWxlZCgiRXhjZXB0aW9uIHRocm93biB3
aGVuIGFjY2Vzc2luZyBEeW5hbWljc0NvbXByZXNzb3JOb2RlIGF0dHJpYnV0ZXMuIik7CiAgICAg
fQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>136328</attachid>
            <date>2012-04-09 16:01:44 -0700</date>
            <delta_ts>2012-04-09 18:36:58 -0700</delta_ts>
            <desc>Fix DynamicsCompressorNode idl issue with ObjC release() method.</desc>
            <filename>81221-idl.patch</filename>
            <type>text/plain</type>
            <size>927</size>
            <attacher name="Raymond Toy">rtoy</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRv
ck9iakMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JP
YmpDLnBtCmluZGV4IDU2OTFkMDMuLjNmYzI1MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0KKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbQpAQCAtNDY2LDYgKzQ2Niwx
MSBAQCBzdWIgU2tpcEF0dHJpYnV0ZQogCiAgICAgcmV0dXJuIDEgaWYgJGNvZGVHZW5lcmF0b3It
PkdldEFycmF5VHlwZSgkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUpOwogCisgICAgIyBUaGlz
IGlzIGZvciBEeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbAorICAgIGlmICgkYXR0cmlidXRlLT5z
aWduYXR1cmUtPm5hbWUgZXEgInJlbGVhc2UiKSB7CisgICAgICAgIHJldHVybiAxOworICAgIH0K
KyAgICAKICAgICByZXR1cm4gMDsKIH0KIApAQCAtNzc5LDYgKzc4NCw3IEBAIHN1YiBHZW5lcmF0
ZUhlYWRlcgogICAgICMgLSBBZGQgYXR0cmlidXRlIGdldHRlcnMvc2V0dGVycy4KICAgICBpZiAo
JG51bUF0dHJpYnV0ZXMgPiAwKSB7CiAgICAgICAgIGZvcmVhY2ggbXkgJGF0dHJpYnV0ZSAoQHsk
ZGF0YU5vZGUtPmF0dHJpYnV0ZXN9KSB7CisgICAgICAgICAgICBuZXh0IGlmIFNraXBBdHRyaWJ1
dGUoJGF0dHJpYnV0ZSk7CiAgICAgICAgICAgICBteSAkYXR0cmlidXRlTmFtZSA9ICRhdHRyaWJ1
dGUtPnNpZ25hdHVyZS0+bmFtZTsKIAogICAgICAgICAgICAgaWYgKCRhdHRyaWJ1dGVOYW1lIGVx
ICJpZCIgb3IgJGF0dHJpYnV0ZU5hbWUgZXEgImhhc2giIG9yICRhdHRyaWJ1dGVOYW1lIGVxICJk
ZXNjcmlwdGlvbiIpIHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>136363</attachid>
            <date>2012-04-09 18:37:07 -0700</date>
            <delta_ts>2012-04-09 18:50:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81221-20120409183707.patch</filename>
            <type>text/plain</type>
            <size>8938</size>
            <attacher name="Raymond Toy">rtoy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEzNTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzI3OGQ2MmJiOGZmYzMz
ZjM3NGZhNTU1ZGQwMzYxNWFmYzczODU0NC4uN2ZjMDgyMDk2MTlmZWQ5YzZkNmY3M2U5ZTNlNzUw
NzEwMWRhNzdiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEyLTA0LTA5ICBSYXlt
b25kIFRveSAgPHJ0b3lAZ29vZ2xlLmNvbT4KKworICAgICAgICBFeHBvc2UgYXR0YWNrLCByZWxl
YXNlIGFzIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUncyBhdHRyaWJ1dGVzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODEyMjEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuIChPT1BTISkK
KworICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpEeW5hbWljc0NvbXByZXNzb3JOb2RlOjpEeW5hbWljc0NvbXBy
ZXNzb3JOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkR5bmFtaWNzQ29tcHJlc3Nvck5vZGU6OnBy
b2Nlc3MpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9k
ZS5oOgorICAgICAgICAoV2ViQ29yZTo6RHluYW1pY3NDb21wcmVzc29yTm9kZTo6YXR0YWNrKToK
KyAgICAgICAgKFdlYkNvcmU6OkR5bmFtaWNzQ29tcHJlc3Nvck5vZGU6OnJlbGVhc2VUaW1lKToK
KyAgICAgICAgKER5bmFtaWNzQ29tcHJlc3Nvck5vZGUpOgorICAgICAgICAqIE1vZHVsZXMvd2Vi
YXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGw6CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbToKKyAgICAgICAgKFNraXBBdHRyaWJ1dGUpOiBTa2lw
IHJlbGVhc2UoKQorICAgICAgICAoR2VuZXJhdGVIZWFkZXIpOiBDYWxsIFNraXBBdHRyaWJ1dGUg
Zm9yIGdldHRlcnMvc2V0dGVycy4KKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9EeW5hbWljc0Nv
bXByZXNzb3IuaDoKKyAgICAgICAgKER5bmFtaWNzQ29tcHJlc3Nvcik6CisKIDIwMTItMDQtMDYg
IEFsZXhhbmRyZSBFbGlhcyAgPGFlbGlhc0Bnb29nbGUuY29tPgogCiAgICAgICAgIEZpeCBidWcg
aW4gQ29udGFpbmVyTm9kZTo6Z2V0UmVjdCB3aXRoIHNjYWxlIHRyYW5zZm9ybXMKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9k
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nv
ck5vZGUuY3BwCmluZGV4IGVmNzA0NzkwNzJjYzM1MDY2NzNkNjFlOWNjZWZhNDgwMGZhN2YwMzYu
LmM0ZTM4OTg5N2NlMzMwZmRhODhmMDkzZmY5OTEzNDAwN2Q2MTc0ZDMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JO
b2RlLmNwcApAQCAtNTAsMTEgKzUwLDE1IEBAIER5bmFtaWNzQ29tcHJlc3Nvck5vZGU6OkR5bmFt
aWNzQ29tcHJlc3Nvck5vZGUoQXVkaW9Db250ZXh0KiBjb250ZXh0LCBmbG9hdCBzYW1wCiAgICAg
bV9rbmVlID0gQXVkaW9QYXJhbTo6Y3JlYXRlKCJrbmVlIiwgMzAsIDAsIDQwKTsKICAgICBtX3Jh
dGlvID0gQXVkaW9QYXJhbTo6Y3JlYXRlKCJyYXRpbyIsIDEyLCAxLCAyMCk7CiAgICAgbV9yZWR1
Y3Rpb24gPSBBdWRpb1BhcmFtOjpjcmVhdGUoInJlZHVjdGlvbiIsIDAsIC0yMCwgMCk7CisgICAg
bV9hdHRhY2sgPSBBdWRpb1BhcmFtOjpjcmVhdGUoImF0dGFjayIsIDAuMDAzLCAwLCAxKTsKKyAg
ICBtX3JlbGVhc2UgPSBBdWRpb1BhcmFtOjpjcmVhdGUoInJlbGVhc2UiLCAwLjI1MCwgMCwgMSk7
CiAKICAgICBtX3RocmVzaG9sZC0+c2V0Q29udGV4dChjb250ZXh0KTsKICAgICBtX2tuZWUtPnNl
dENvbnRleHQoY29udGV4dCk7CiAgICAgbV9yYXRpby0+c2V0Q29udGV4dChjb250ZXh0KTsKICAg
ICBtX3JlZHVjdGlvbi0+c2V0Q29udGV4dChjb250ZXh0KTsKKyAgICBtX2F0dGFjay0+c2V0Q29u
dGV4dChjb250ZXh0KTsKKyAgICBtX3JlbGVhc2UtPnNldENvbnRleHQoY29udGV4dCk7CiAKICAg
ICBpbml0aWFsaXplKCk7CiB9CkBAIC03MiwxMCArNzYsMTQgQEAgdm9pZCBEeW5hbWljc0NvbXBy
ZXNzb3JOb2RlOjpwcm9jZXNzKHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCiAgICAgZmxvYXQgdGhy
ZXNob2xkID0gbV90aHJlc2hvbGQtPnZhbHVlKCk7CiAgICAgZmxvYXQga25lZSA9IG1fa25lZS0+
dmFsdWUoKTsKICAgICBmbG9hdCByYXRpbyA9IG1fcmF0aW8tPnZhbHVlKCk7CisgICAgZmxvYXQg
YXR0YWNrID0gbV9hdHRhY2stPnZhbHVlKCk7CisgICAgZmxvYXQgcmVsZWFzZSA9IG1fcmVsZWFz
ZS0+dmFsdWUoKTsKIAogICAgIG1fZHluYW1pY3NDb21wcmVzc29yLT5zZXRQYXJhbWV0ZXJWYWx1
ZShEeW5hbWljc0NvbXByZXNzb3I6OlBhcmFtVGhyZXNob2xkLCB0aHJlc2hvbGQpOwogICAgIG1f
ZHluYW1pY3NDb21wcmVzc29yLT5zZXRQYXJhbWV0ZXJWYWx1ZShEeW5hbWljc0NvbXByZXNzb3I6
OlBhcmFtS25lZSwga25lZSk7CiAgICAgbV9keW5hbWljc0NvbXByZXNzb3ItPnNldFBhcmFtZXRl
clZhbHVlKER5bmFtaWNzQ29tcHJlc3Nvcjo6UGFyYW1SYXRpbywgcmF0aW8pOworICAgIG1fZHlu
YW1pY3NDb21wcmVzc29yLT5zZXRQYXJhbWV0ZXJWYWx1ZShEeW5hbWljc0NvbXByZXNzb3I6OlBh
cmFtQXR0YWNrLCBhdHRhY2spOworICAgIG1fZHluYW1pY3NDb21wcmVzc29yLT5zZXRQYXJhbWV0
ZXJWYWx1ZShEeW5hbWljc0NvbXByZXNzb3I6OlBhcmFtUmVsZWFzZSwgcmVsZWFzZSk7CiAKICAg
ICBtX2R5bmFtaWNzQ29tcHJlc3Nvci0+cHJvY2VzcyhpbnB1dCgwKS0+YnVzKCksIG91dHB1dEJ1
cywgZnJhbWVzVG9Qcm9jZXNzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaAppbmRleCBjZjdlNjNhNDI5ZmJk
ZDQ5YTYxN2E3ZDE2ZjBmYjcyZGRlZmZmZjk3Li5hY2JmMDlmMjljZmEwZDZhMzkzOWRhYzNhMDQy
MzY1Njc3ZWNmMWYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlv
L0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaApAQCAtNTIsNiArNTIsOCBAQCBwdWJsaWM6
CiAgICAgQXVkaW9QYXJhbSogdGhyZXNob2xkKCkgeyByZXR1cm4gbV90aHJlc2hvbGQuZ2V0KCk7
IH0KICAgICBBdWRpb1BhcmFtKiBrbmVlKCkgeyByZXR1cm4gbV9rbmVlLmdldCgpOyB9CiAgICAg
QXVkaW9QYXJhbSogcmF0aW8oKSB7IHJldHVybiBtX3JhdGlvLmdldCgpOyB9CisgICAgQXVkaW9Q
YXJhbSogYXR0YWNrKCkgeyByZXR1cm4gbV9hdHRhY2suZ2V0KCk7IH0KKyAgICBBdWRpb1BhcmFt
KiByZWxlYXNlVGltZSgpIHsgcmV0dXJuIG1fcmVsZWFzZS5nZXQoKTsgfQogCiAgICAgLy8gQW1v
dW50IGJ5IHdoaWNoIHRoZSBjb21wcmVzc29yIGlzIGN1cnJlbnRseSBjb21wcmVzc2luZyB0aGUg
c2lnbmFsIGluIGRlY2liZWxzLgogICAgIEF1ZGlvUGFyYW0qIHJlZHVjdGlvbigpIHsgcmV0dXJu
IG1fcmVkdWN0aW9uLmdldCgpOyB9CkBAIC02Nyw2ICs2OSw4IEBAIHByaXZhdGU6CiAgICAgUmVm
UHRyPEF1ZGlvUGFyYW0+IG1fa25lZTsKICAgICBSZWZQdHI8QXVkaW9QYXJhbT4gbV9yYXRpbzsK
ICAgICBSZWZQdHI8QXVkaW9QYXJhbT4gbV9yZWR1Y3Rpb247CisgICAgUmVmUHRyPEF1ZGlvUGFy
YW0+IG1fYXR0YWNrOworICAgIFJlZlB0cjxBdWRpb1BhcmFtPiBtX3JlbGVhc2U7CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRsIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbAppbmRleCA2MGQ2NGZkYTA3
N2U0YWMxNzBiYzAzYzFlZTk2YTNiMmQ4MDE4YjcwLi4yODExYTEyMmQ4NDQ5ZWFhZjJiOGRhZmZm
MWQwZjc1MTYxZWIyZGFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwKQEAgLTMxLDUgKzMxLDcgQEAg
bW9kdWxlIGF1ZGlvIHsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEF1ZGlvUGFyYW0ga25l
ZTsgLy8gaW4gRGVjaWJlbHMKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEF1ZGlvUGFyYW0g
cmF0aW87IC8vIHVuaXQtbGVzcwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgQXVkaW9QYXJh
bSByZWR1Y3Rpb247IC8vIGluIERlY2liZWxzCisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBB
dWRpb1BhcmFtIGF0dGFjazsgLy8gaW4gU2Vjb25kcworICAgICAgICByZWFkb25seSBhdHRyaWJ1
dGUgW0ltcGxlbWVudGVkQXM9cmVsZWFzZVRpbWVdIEF1ZGlvUGFyYW0gcmVsZWFzZTsgLy8gaW4g
U2Vjb25kcwogICAgIH07CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbQppbmRleCA1NjkxZDAzNGFkYTFkMmIzMjEwOWExODI0
ZWMyM2EyYzRhZGM1NDMxLi5mZmQwN2RjMmQwMDQwNzViZTY2ZmM3OWM3N2Y0MDNlN2IzY2RkZDA4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JPYmpDLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvck9iakMucG0KQEAgLTQ2Niw2ICs0NjYsMTEgQEAgc3ViIFNraXBBdHRyaWJ1dGUKIAogICAg
IHJldHVybiAxIGlmICRjb2RlR2VuZXJhdG9yLT5HZXRBcnJheVR5cGUoJGF0dHJpYnV0ZS0+c2ln
bmF0dXJlLT50eXBlKTsKIAorICAgICMgVGhpcyBpcyBmb3IgRHluYW1pY3NDb21wcmVzc29yTm9k
ZS5pZGwKKyAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1lIGVxICJyZWxlYXNlIikg
eworICAgICAgICByZXR1cm4gMTsKKyAgICB9CisKICAgICByZXR1cm4gMDsKIH0KIApAQCAtNzc5
LDYgKzc4NCw3IEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogICAgICMgLSBBZGQgYXR0cmlidXRlIGdl
dHRlcnMvc2V0dGVycy4KICAgICBpZiAoJG51bUF0dHJpYnV0ZXMgPiAwKSB7CiAgICAgICAgIGZv
cmVhY2ggbXkgJGF0dHJpYnV0ZSAoQHskZGF0YU5vZGUtPmF0dHJpYnV0ZXN9KSB7CisgICAgICAg
ICAgICBuZXh0IGlmIFNraXBBdHRyaWJ1dGUoJGF0dHJpYnV0ZSk7CiAgICAgICAgICAgICBteSAk
YXR0cmlidXRlTmFtZSA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+bmFtZTsKIAogICAgICAgICAg
ICAgaWYgKCRhdHRyaWJ1dGVOYW1lIGVxICJpZCIgb3IgJGF0dHJpYnV0ZU5hbWUgZXEgImhhc2gi
IG9yICRhdHRyaWJ1dGVOYW1lIGVxICJkZXNjcmlwdGlvbiIpIHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvci5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vYXVkaW8vRHluYW1pY3NDb21wcmVzc29yLmgKaW5kZXggNTIwMTMyODk4
NDE5NDVkYTczZmRhNjYwYmUxZjJiN2NkNjE5MTM4MS4uZjc4MWFmZTdiOTcyMjkzMGU2ZjI1NGVj
YzMzNGQ5Nzc1MmRkNjZlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vRHluYW1pY3NDb21wcmVzc29yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vRHluYW1pY3NDb21wcmVzc29yLmgKQEAgLTg1LDggKzg1LDYgQEAgcHJvdGVjdGVkOgogICAg
IHVuc2lnbmVkIG1fbnVtYmVyT2ZDaGFubmVsczsKIAogICAgIC8vIG1fcGFyYW1ldGVycyBob2xk
cyB0aGUgdHdlYWthYmxlIGNvbXByZXNzb3IgcGFyYW1ldGVycy4KLSAgICAvLyBGSVhNRTogZXhw
b3NlIHNvbWUgb2YgdGhlIG1vc3QgaW1wb3J0YW50IG9uZXMgKHN1Y2ggYXMgdGhyZXNob2xkLCBh
dHRhY2ssIHJlbGVhc2UpCi0gICAgLy8gYXMgRHluYW1pY3NDb21wcmVzc29yTm9kZSBhdHRyaWJ1
dGVzLgogICAgIGZsb2F0IG1fcGFyYW1ldGVyc1tQYXJhbUxhc3RdOwogICAgIHZvaWQgaW5pdGlh
bGl6ZVBhcmFtZXRlcnMoKTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGYyNTQ1OTg4NzMzNzQ4NjVlZTlmMmIzNzRhYjc1
ZWNkZTc5NTk3MjAuLmZkZmZiYjUxYjI5M2YzNDU3ZTdmMGUwMDY3NmRlNjA1NzJkMzhjMjggMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMi0wNC0wOSAgUmF5bW9uZCBUb3kgIDxydG95QGdvb2ds
ZS5jb20+CisKKyAgICAgICAgRXhwb3NlIGF0dGFjaywgcmVsZWFzZSBhcyBEeW5hbWljc0NvbXBy
ZXNzb3JOb2RlJ3MgYXR0cmlidXRlcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTgxMjIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiB3ZWJhdWRpby9keW5hbWljc2NvbXByZXNzb3ItYmFzaWMtZXhwZWN0
ZWQudHh0OgorICAgICAgICAqIHdlYmF1ZGlvL2R5bmFtaWNzY29tcHJlc3Nvci1iYXNpYy5odG1s
OgorCiAyMDEyLTA0LTA2ICBKYW1lcyBTaW1vbnNlbiAgPHNpbW9uamFtQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBbQ2hyb21pdW1dIFVucmV2aWV3ZWQgZ2FyZGVuaW5nLgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2ljLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5bmFtaWNzY29tcHJlc3Nvci1iYXNpYy1leHBlY3Rl
ZC50eHQKaW5kZXggZGQzOTk5MTQ5MzkyYzc3YTZkZjBkY2JjZTZlN2YzZWZiM2M4N2E2Yy4uMDlj
MzBlNmJhY2RhOTk5ZDM1NjhlZTVhODQ0NzQxYmZmZDE2ZDE0YiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2ljLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy93ZWJhdWRpby9keW5hbWljc2NvbXByZXNzb3ItYmFzaWMtZXhwZWN0ZWQu
dHh0CkBAIC01LDYgKzUsOCBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogUEFTUyB0aHJlc2hv
bGQgYXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuCiBQQVNTIGtuZWUgYXR0cmli
dXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuCiBQQVNTIHJhdGlvIGF0dHJpYnV0ZSBoYXMg
Y29ycmVjdCBkZWZhdWx0IHZhbHVlLgorUEFTUyBhdHRhY2sgYXR0cmlidXRlIGhhcyBjb3JyZWN0
IGRlZmF1bHQgdmFsdWUuCitQQVNTIHJlbGVhc2UgYXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1
bHQgdmFsdWUuCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExF
VEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5bmFtaWNzY29tcHJlc3Nvci1i
YXNpYy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2lj
Lmh0bWwKaW5kZXggZDEyMmJlY2MyNTMxZjc5ZDlhNWMzZDk5YWUwNDYwNDU5ZjFmZDExYi4uYjAz
NDE4ZmM2ZGRkYTg4ZmEyNDY2MjVmOTAyNzUwM2I5NGFmMzIyOSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2ljLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2ljLmh0bWwKQEAgLTQzLDYgKzQz
LDE2IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHRl
c3RGYWlsZWQoInJhdGlvIGF0dHJpYnV0ZSBoYXMgaW5jb3JyZWN0IGRlZmF1bHQgdmFsdWUuIik7
CiAgICAgICAgIAorICAgICAgICBpZiAoY29tcHJlc3Nvci5hdHRhY2sudmFsdWUgLSAwLjAwMyA8
IDNlLTgpCisgICAgICAgICAgICB0ZXN0UGFzc2VkKCJhdHRhY2sgYXR0cmlidXRlIGhhcyBjb3Jy
ZWN0IGRlZmF1bHQgdmFsdWUuIik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHRlc3RGYWls
ZWQoImF0dGFjayBhdHRyaWJ1dGUgaGFzIGluY29ycmVjdCBkZWZhdWx0IHZhbHVlLiIpOworCisg
ICAgICAgIGlmIChjb21wcmVzc29yLnJlbGVhc2UudmFsdWUgLSAwLjI1IDwgM2UtOCkKKyAgICAg
ICAgICAgIHRlc3RQYXNzZWQoInJlbGVhc2UgYXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQg
dmFsdWUuIik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHRlc3RGYWlsZWQoInJlbGVhc2Ug
YXR0cmlidXRlIGhhcyBpbmNvcnJlY3QgZGVmYXVsdCB2YWx1ZS4iKTsKKwogICAgIH0gY2F0Y2go
ZSkgewogICAgICAgICB0ZXN0RmFpbGVkKCJFeGNlcHRpb24gdGhyb3duIHdoZW4gYWNjZXNzaW5n
IER5bmFtaWNzQ29tcHJlc3Nvck5vZGUgYXR0cmlidXRlcy4iKTsKICAgICB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>136368</attachid>
            <date>2012-04-09 18:51:00 -0700</date>
            <delta_ts>2012-04-18 15:30:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81221-20120409185059.patch</filename>
            <type>text/plain</type>
            <size>8905</size>
            <attacher name="Raymond Toy">rtoy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEzNTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzI3OGQ2MmJiOGZmYzMz
ZjM3NGZhNTU1ZGQwMzYxNWFmYzczODU0NC4uZTcwYWY0NDRiOWIwYjA3NzY5NWVhY2E0NGFlZThl
M2VjYzZhMGYyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTA0LTA5ICBSYXlt
b25kIFRveSAgPHJ0b3lAZ29vZ2xlLmNvbT4KKworICAgICAgICBFeHBvc2UgYXR0YWNrLCByZWxl
YXNlIGFzIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUncyBhdHRyaWJ1dGVzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODEyMjEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vRHlu
YW1pY3NDb21wcmVzc29yTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEeW5hbWljc0NvbXBy
ZXNzb3JOb2RlOjpEeW5hbWljc0NvbXByZXNzb3JOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkR5
bmFtaWNzQ29tcHJlc3Nvck5vZGU6OnByb2Nlc3MpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5oOgorICAgICAgICAoV2ViQ29yZTo6RHluYW1pY3ND
b21wcmVzc29yTm9kZTo6YXR0YWNrKToKKyAgICAgICAgKFdlYkNvcmU6OkR5bmFtaWNzQ29tcHJl
c3Nvck5vZGU6OnJlbGVhc2VUaW1lKToKKyAgICAgICAgKER5bmFtaWNzQ29tcHJlc3Nvck5vZGUp
OgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGw6
CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbToKKyAgICAg
ICAgKFNraXBBdHRyaWJ1dGUpOiBTa2lwIHJlbGVhc2UoKQorICAgICAgICAoR2VuZXJhdGVIZWFk
ZXIpOiBDYWxsIFNraXBBdHRyaWJ1dGUgZm9yIGdldHRlcnMvc2V0dGVycy4KKyAgICAgICAgKiBw
bGF0Zm9ybS9hdWRpby9EeW5hbWljc0NvbXByZXNzb3IuaDoKKyAgICAgICAgKER5bmFtaWNzQ29t
cHJlc3Nvcik6CisKIDIwMTItMDQtMDYgIEFsZXhhbmRyZSBFbGlhcyAgPGFlbGlhc0Bnb29nbGUu
Y29tPgogCiAgICAgICAgIEZpeCBidWcgaW4gQ29udGFpbmVyTm9kZTo6Z2V0UmVjdCB3aXRoIHNj
YWxlIHRyYW5zZm9ybXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuY3BwCmluZGV4IGVmNzA0NzkwNzJjYzM1MDY2
NzNkNjFlOWNjZWZhNDgwMGZhN2YwMzYuLmM0ZTM4OTg5N2NlMzMwZmRhODhmMDkzZmY5OTEzNDAw
N2Q2MTc0ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vRHlu
YW1pY3NDb21wcmVzc29yTm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJh
dWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmNwcApAQCAtNTAsMTEgKzUwLDE1IEBAIER5bmFt
aWNzQ29tcHJlc3Nvck5vZGU6OkR5bmFtaWNzQ29tcHJlc3Nvck5vZGUoQXVkaW9Db250ZXh0KiBj
b250ZXh0LCBmbG9hdCBzYW1wCiAgICAgbV9rbmVlID0gQXVkaW9QYXJhbTo6Y3JlYXRlKCJrbmVl
IiwgMzAsIDAsIDQwKTsKICAgICBtX3JhdGlvID0gQXVkaW9QYXJhbTo6Y3JlYXRlKCJyYXRpbyIs
IDEyLCAxLCAyMCk7CiAgICAgbV9yZWR1Y3Rpb24gPSBBdWRpb1BhcmFtOjpjcmVhdGUoInJlZHVj
dGlvbiIsIDAsIC0yMCwgMCk7CisgICAgbV9hdHRhY2sgPSBBdWRpb1BhcmFtOjpjcmVhdGUoImF0
dGFjayIsIDAuMDAzLCAwLCAxKTsKKyAgICBtX3JlbGVhc2UgPSBBdWRpb1BhcmFtOjpjcmVhdGUo
InJlbGVhc2UiLCAwLjI1MCwgMCwgMSk7CiAKICAgICBtX3RocmVzaG9sZC0+c2V0Q29udGV4dChj
b250ZXh0KTsKICAgICBtX2tuZWUtPnNldENvbnRleHQoY29udGV4dCk7CiAgICAgbV9yYXRpby0+
c2V0Q29udGV4dChjb250ZXh0KTsKICAgICBtX3JlZHVjdGlvbi0+c2V0Q29udGV4dChjb250ZXh0
KTsKKyAgICBtX2F0dGFjay0+c2V0Q29udGV4dChjb250ZXh0KTsKKyAgICBtX3JlbGVhc2UtPnNl
dENvbnRleHQoY29udGV4dCk7CiAKICAgICBpbml0aWFsaXplKCk7CiB9CkBAIC03MiwxMCArNzYs
MTQgQEAgdm9pZCBEeW5hbWljc0NvbXByZXNzb3JOb2RlOjpwcm9jZXNzKHNpemVfdCBmcmFtZXNU
b1Byb2Nlc3MpCiAgICAgZmxvYXQgdGhyZXNob2xkID0gbV90aHJlc2hvbGQtPnZhbHVlKCk7CiAg
ICAgZmxvYXQga25lZSA9IG1fa25lZS0+dmFsdWUoKTsKICAgICBmbG9hdCByYXRpbyA9IG1fcmF0
aW8tPnZhbHVlKCk7CisgICAgZmxvYXQgYXR0YWNrID0gbV9hdHRhY2stPnZhbHVlKCk7CisgICAg
ZmxvYXQgcmVsZWFzZSA9IG1fcmVsZWFzZS0+dmFsdWUoKTsKIAogICAgIG1fZHluYW1pY3NDb21w
cmVzc29yLT5zZXRQYXJhbWV0ZXJWYWx1ZShEeW5hbWljc0NvbXByZXNzb3I6OlBhcmFtVGhyZXNo
b2xkLCB0aHJlc2hvbGQpOwogICAgIG1fZHluYW1pY3NDb21wcmVzc29yLT5zZXRQYXJhbWV0ZXJW
YWx1ZShEeW5hbWljc0NvbXByZXNzb3I6OlBhcmFtS25lZSwga25lZSk7CiAgICAgbV9keW5hbWlj
c0NvbXByZXNzb3ItPnNldFBhcmFtZXRlclZhbHVlKER5bmFtaWNzQ29tcHJlc3Nvcjo6UGFyYW1S
YXRpbywgcmF0aW8pOworICAgIG1fZHluYW1pY3NDb21wcmVzc29yLT5zZXRQYXJhbWV0ZXJWYWx1
ZShEeW5hbWljc0NvbXByZXNzb3I6OlBhcmFtQXR0YWNrLCBhdHRhY2spOworICAgIG1fZHluYW1p
Y3NDb21wcmVzc29yLT5zZXRQYXJhbWV0ZXJWYWx1ZShEeW5hbWljc0NvbXByZXNzb3I6OlBhcmFt
UmVsZWFzZSwgcmVsZWFzZSk7CiAKICAgICBtX2R5bmFtaWNzQ29tcHJlc3Nvci0+cHJvY2Vzcyhp
bnB1dCgwKS0+YnVzKCksIG91dHB1dEJ1cywgZnJhbWVzVG9Qcm9jZXNzKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2Rl
LmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5v
ZGUuaAppbmRleCBjZjdlNjNhNDI5ZmJkZDQ5YTYxN2E3ZDE2ZjBmYjcyZGRlZmZmZjk3Li5hY2Jm
MDlmMjljZmEwZDZhMzkzOWRhYzNhMDQyMzY1Njc3ZWNmMWYwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaApA
QCAtNTIsNiArNTIsOCBAQCBwdWJsaWM6CiAgICAgQXVkaW9QYXJhbSogdGhyZXNob2xkKCkgeyBy
ZXR1cm4gbV90aHJlc2hvbGQuZ2V0KCk7IH0KICAgICBBdWRpb1BhcmFtKiBrbmVlKCkgeyByZXR1
cm4gbV9rbmVlLmdldCgpOyB9CiAgICAgQXVkaW9QYXJhbSogcmF0aW8oKSB7IHJldHVybiBtX3Jh
dGlvLmdldCgpOyB9CisgICAgQXVkaW9QYXJhbSogYXR0YWNrKCkgeyByZXR1cm4gbV9hdHRhY2su
Z2V0KCk7IH0KKyAgICBBdWRpb1BhcmFtKiByZWxlYXNlVGltZSgpIHsgcmV0dXJuIG1fcmVsZWFz
ZS5nZXQoKTsgfQogCiAgICAgLy8gQW1vdW50IGJ5IHdoaWNoIHRoZSBjb21wcmVzc29yIGlzIGN1
cnJlbnRseSBjb21wcmVzc2luZyB0aGUgc2lnbmFsIGluIGRlY2liZWxzLgogICAgIEF1ZGlvUGFy
YW0qIHJlZHVjdGlvbigpIHsgcmV0dXJuIG1fcmVkdWN0aW9uLmdldCgpOyB9CkBAIC02Nyw2ICs2
OSw4IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPEF1ZGlvUGFyYW0+IG1fa25lZTsKICAgICBSZWZQ
dHI8QXVkaW9QYXJhbT4gbV9yYXRpbzsKICAgICBSZWZQdHI8QXVkaW9QYXJhbT4gbV9yZWR1Y3Rp
b247CisgICAgUmVmUHRyPEF1ZGlvUGFyYW0+IG1fYXR0YWNrOworICAgIFJlZlB0cjxBdWRpb1Bh
cmFtPiBtX3JlbGVhc2U7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUu
aWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JO
b2RlLmlkbAppbmRleCA2MGQ2NGZkYTA3N2U0YWMxNzBiYzAzYzFlZTk2YTNiMmQ4MDE4YjcwLi4y
ODExYTEyMmQ4NDQ5ZWFhZjJiOGRhZmZmMWQwZjc1MTYxZWIyZGFiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9k
ZS5pZGwKQEAgLTMxLDUgKzMxLDcgQEAgbW9kdWxlIGF1ZGlvIHsKICAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIEF1ZGlvUGFyYW0ga25lZTsgLy8gaW4gRGVjaWJlbHMKICAgICAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIEF1ZGlvUGFyYW0gcmF0aW87IC8vIHVuaXQtbGVzcwogICAgICAgICByZWFk
b25seSBhdHRyaWJ1dGUgQXVkaW9QYXJhbSByZWR1Y3Rpb247IC8vIGluIERlY2liZWxzCisgICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBBdWRpb1BhcmFtIGF0dGFjazsgLy8gaW4gU2Vjb25kcwor
ICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0ltcGxlbWVudGVkQXM9cmVsZWFzZVRpbWVdIEF1
ZGlvUGFyYW0gcmVsZWFzZTsgLy8gaW4gU2Vjb25kcwogICAgIH07CiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbQppbmRleCA1
NjkxZDAzNGFkYTFkMmIzMjEwOWExODI0ZWMyM2EyYzRhZGM1NDMxLi5mZmQwN2RjMmQwMDQwNzVi
ZTY2ZmM3OWM3N2Y0MDNlN2IzY2RkZDA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0KQEAgLTQ2Niw2ICs0NjYsMTEgQEAg
c3ViIFNraXBBdHRyaWJ1dGUKIAogICAgIHJldHVybiAxIGlmICRjb2RlR2VuZXJhdG9yLT5HZXRB
cnJheVR5cGUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlKTsKIAorICAgICMgVGhpcyBpcyBm
b3IgRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwKKyAgICBpZiAoJGF0dHJpYnV0ZS0+c2lnbmF0
dXJlLT5uYW1lIGVxICJyZWxlYXNlIikgeworICAgICAgICByZXR1cm4gMTsKKyAgICB9CisKICAg
ICByZXR1cm4gMDsKIH0KIApAQCAtNzc5LDYgKzc4NCw3IEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgog
ICAgICMgLSBBZGQgYXR0cmlidXRlIGdldHRlcnMvc2V0dGVycy4KICAgICBpZiAoJG51bUF0dHJp
YnV0ZXMgPiAwKSB7CiAgICAgICAgIGZvcmVhY2ggbXkgJGF0dHJpYnV0ZSAoQHskZGF0YU5vZGUt
PmF0dHJpYnV0ZXN9KSB7CisgICAgICAgICAgICBuZXh0IGlmIFNraXBBdHRyaWJ1dGUoJGF0dHJp
YnV0ZSk7CiAgICAgICAgICAgICBteSAkYXR0cmlidXRlTmFtZSA9ICRhdHRyaWJ1dGUtPnNpZ25h
dHVyZS0+bmFtZTsKIAogICAgICAgICAgICAgaWYgKCRhdHRyaWJ1dGVOYW1lIGVxICJpZCIgb3Ig
JGF0dHJpYnV0ZU5hbWUgZXEgImhhc2giIG9yICRhdHRyaWJ1dGVOYW1lIGVxICJkZXNjcmlwdGlv
biIpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0R5bmFtaWNz
Q29tcHJlc3Nvci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRHluYW1pY3NDb21w
cmVzc29yLmgKaW5kZXggNTIwMTMyODk4NDE5NDVkYTczZmRhNjYwYmUxZjJiN2NkNjE5MTM4MS4u
Zjc4MWFmZTdiOTcyMjkzMGU2ZjI1NGVjYzMzNGQ5Nzc1MmRkNjZlYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRHluYW1pY3NDb21wcmVzc29yLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRHluYW1pY3NDb21wcmVzc29yLmgKQEAgLTg1LDgg
Kzg1LDYgQEAgcHJvdGVjdGVkOgogICAgIHVuc2lnbmVkIG1fbnVtYmVyT2ZDaGFubmVsczsKIAog
ICAgIC8vIG1fcGFyYW1ldGVycyBob2xkcyB0aGUgdHdlYWthYmxlIGNvbXByZXNzb3IgcGFyYW1l
dGVycy4KLSAgICAvLyBGSVhNRTogZXhwb3NlIHNvbWUgb2YgdGhlIG1vc3QgaW1wb3J0YW50IG9u
ZXMgKHN1Y2ggYXMgdGhyZXNob2xkLCBhdHRhY2ssIHJlbGVhc2UpCi0gICAgLy8gYXMgRHluYW1p
Y3NDb21wcmVzc29yTm9kZSBhdHRyaWJ1dGVzLgogICAgIGZsb2F0IG1fcGFyYW1ldGVyc1tQYXJh
bUxhc3RdOwogICAgIHZvaWQgaW5pdGlhbGl6ZVBhcmFtZXRlcnMoKTsKIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGYyNTQ1
OTg4NzMzNzQ4NjVlZTlmMmIzNzRhYjc1ZWNkZTc5NTk3MjAuLmZkZmZiYjUxYjI5M2YzNDU3ZTdm
MGUwMDY3NmRlNjA1NzJkMzhjMjggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMi0wNC0wOSAg
UmF5bW9uZCBUb3kgIDxydG95QGdvb2dsZS5jb20+CisKKyAgICAgICAgRXhwb3NlIGF0dGFjaywg
cmVsZWFzZSBhcyBEeW5hbWljc0NvbXByZXNzb3JOb2RlJ3MgYXR0cmlidXRlcy4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgxMjIxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWJhdWRpby9keW5hbWlj
c2NvbXByZXNzb3ItYmFzaWMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYmF1ZGlvL2R5bmFt
aWNzY29tcHJlc3Nvci1iYXNpYy5odG1sOgorCiAyMDEyLTA0LTA2ICBKYW1lcyBTaW1vbnNlbiAg
PHNpbW9uamFtQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIFVucmV2aWV3ZWQg
Z2FyZGVuaW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21w
cmVzc29yLWJhc2ljLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5bmFtaWNz
Y29tcHJlc3Nvci1iYXNpYy1leHBlY3RlZC50eHQKaW5kZXggZGQzOTk5MTQ5MzkyYzc3YTZkZjBk
Y2JjZTZlN2YzZWZiM2M4N2E2Yy4uMDljMzBlNmJhY2RhOTk5ZDM1NjhlZTVhODQ0NzQxYmZmZDE2
ZDE0YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29y
LWJhc2ljLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9keW5hbWljc2Nv
bXByZXNzb3ItYmFzaWMtZXhwZWN0ZWQudHh0CkBAIC01LDYgKzUsOCBAQCBPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURQogUEFTUyB0aHJlc2hvbGQgYXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQg
dmFsdWUuCiBQQVNTIGtuZWUgYXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuCiBQ
QVNTIHJhdGlvIGF0dHJpYnV0ZSBoYXMgY29ycmVjdCBkZWZhdWx0IHZhbHVlLgorUEFTUyBhdHRh
Y2sgYXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuCitQQVNTIHJlbGVhc2UgYXR0
cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1
ZGlvL2R5bmFtaWNzY29tcHJlc3Nvci1iYXNpYy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8v
ZHluYW1pY3Njb21wcmVzc29yLWJhc2ljLmh0bWwKaW5kZXggZDEyMmJlY2MyNTMxZjc5ZDlhNWMz
ZDk5YWUwNDYwNDU5ZjFmZDExYi4uYjAzNDE4ZmM2ZGRkYTg4ZmEyNDY2MjVmOTAyNzUwM2I5NGFm
MzIyOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29y
LWJhc2ljLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29y
LWJhc2ljLmh0bWwKQEAgLTQzLDYgKzQzLDE2IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CiAgICAg
ICAgIGVsc2UKICAgICAgICAgICAgIHRlc3RGYWlsZWQoInJhdGlvIGF0dHJpYnV0ZSBoYXMgaW5j
b3JyZWN0IGRlZmF1bHQgdmFsdWUuIik7CiAgICAgICAgIAorICAgICAgICBpZiAoY29tcHJlc3Nv
ci5hdHRhY2sudmFsdWUgLSAwLjAwMyA8IDNlLTgpCisgICAgICAgICAgICB0ZXN0UGFzc2VkKCJh
dHRhY2sgYXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuIik7CisgICAgICAgIGVs
c2UKKyAgICAgICAgICAgIHRlc3RGYWlsZWQoImF0dGFjayBhdHRyaWJ1dGUgaGFzIGluY29ycmVj
dCBkZWZhdWx0IHZhbHVlLiIpOworCisgICAgICAgIGlmIChjb21wcmVzc29yLnJlbGVhc2UudmFs
dWUgLSAwLjI1IDwgM2UtOCkKKyAgICAgICAgICAgIHRlc3RQYXNzZWQoInJlbGVhc2UgYXR0cmli
dXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuIik7CisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIHRlc3RGYWlsZWQoInJlbGVhc2UgYXR0cmlidXRlIGhhcyBpbmNvcnJlY3QgZGVmYXVsdCB2
YWx1ZS4iKTsKKwogICAgIH0gY2F0Y2goZSkgewogICAgICAgICB0ZXN0RmFpbGVkKCJFeGNlcHRp
b24gdGhyb3duIHdoZW4gYWNjZXNzaW5nIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUgYXR0cmlidXRl
cy4iKTsKICAgICB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>137785</attachid>
            <date>2012-04-18 15:30:51 -0700</date>
            <delta_ts>2012-04-18 19:33:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81221-20120418153050.patch</filename>
            <type>text/plain</type>
            <size>8956</size>
            <attacher name="Raymond Toy">rtoy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0NDgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDY3YjUyNmU5YTQ5NmYz
ZmU4OWRjZDc3ZmMzN2FmNDE1YTU4YmZkNy4uMDVmMDU5MWZiOGFkM2Q3NWU0NDQ1OWEyYTVkNWE1
MzFkNmVkMzg4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEyLTA0LTA5ICBSYXlt
b25kIFRveSAgPHJ0b3lAZ29vZ2xlLmNvbT4KKworICAgICAgICBFeHBvc2UgYXR0YWNrLCByZWxl
YXNlIGFzIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUncyBhdHRyaWJ1dGVzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODEyMjEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vRHlu
YW1pY3NDb21wcmVzc29yTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEeW5hbWljc0NvbXBy
ZXNzb3JOb2RlOjpEeW5hbWljc0NvbXByZXNzb3JOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkR5
bmFtaWNzQ29tcHJlc3Nvck5vZGU6OnByb2Nlc3MpOgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVk
aW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5oOgorICAgICAgICAoV2ViQ29yZTo6RHluYW1pY3ND
b21wcmVzc29yTm9kZTo6YXR0YWNrKToKKyAgICAgICAgKFdlYkNvcmU6OkR5bmFtaWNzQ29tcHJl
c3Nvck5vZGU6OnJlbGVhc2VUaW1lKToKKyAgICAgICAgKER5bmFtaWNzQ29tcHJlc3Nvck5vZGUp
OgorICAgICAgICAqIE1vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGw6
IEFkZCBhdHRhY2sgYW5kCisgICAgICAgIHJlbGVhc2UgYXR0cmlidXRlcy4KKyAgICAgICAgKiBi
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtOgorICAgICAgICAoU2tpcEF0dHJp
YnV0ZSk6IFNraXAgcmVsZWFzZSgpCisgICAgICAgIChHZW5lcmF0ZUhlYWRlcik6IENhbGwgU2tp
cEF0dHJpYnV0ZSBmb3IgZ2V0dGVycy9zZXR0ZXJzLgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlv
L0R5bmFtaWNzQ29tcHJlc3Nvci5oOgorICAgICAgICAoRHluYW1pY3NDb21wcmVzc29yKToKKwog
MjAxMi0wNC0xNyAgTU9SSVRBIEhhamltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KIAogICAgICAg
ICBTaGFkb3dSb290IHNob3VsZG4ndCBiZSBhZG9wdGVkIGJ5IGFueSBEb2N1bWVudC4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29y
Tm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJl
c3Nvck5vZGUuY3BwCmluZGV4IGVmNzA0NzkwNzJjYzM1MDY2NzNkNjFlOWNjZWZhNDgwMGZhN2Yw
MzYuLmM0ZTM4OTg5N2NlMzMwZmRhODhmMDkzZmY5OTEzNDAwN2Q2MTc0ZDMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNz
b3JOb2RlLmNwcApAQCAtNTAsMTEgKzUwLDE1IEBAIER5bmFtaWNzQ29tcHJlc3Nvck5vZGU6OkR5
bmFtaWNzQ29tcHJlc3Nvck5vZGUoQXVkaW9Db250ZXh0KiBjb250ZXh0LCBmbG9hdCBzYW1wCiAg
ICAgbV9rbmVlID0gQXVkaW9QYXJhbTo6Y3JlYXRlKCJrbmVlIiwgMzAsIDAsIDQwKTsKICAgICBt
X3JhdGlvID0gQXVkaW9QYXJhbTo6Y3JlYXRlKCJyYXRpbyIsIDEyLCAxLCAyMCk7CiAgICAgbV9y
ZWR1Y3Rpb24gPSBBdWRpb1BhcmFtOjpjcmVhdGUoInJlZHVjdGlvbiIsIDAsIC0yMCwgMCk7Cisg
ICAgbV9hdHRhY2sgPSBBdWRpb1BhcmFtOjpjcmVhdGUoImF0dGFjayIsIDAuMDAzLCAwLCAxKTsK
KyAgICBtX3JlbGVhc2UgPSBBdWRpb1BhcmFtOjpjcmVhdGUoInJlbGVhc2UiLCAwLjI1MCwgMCwg
MSk7CiAKICAgICBtX3RocmVzaG9sZC0+c2V0Q29udGV4dChjb250ZXh0KTsKICAgICBtX2tuZWUt
PnNldENvbnRleHQoY29udGV4dCk7CiAgICAgbV9yYXRpby0+c2V0Q29udGV4dChjb250ZXh0KTsK
ICAgICBtX3JlZHVjdGlvbi0+c2V0Q29udGV4dChjb250ZXh0KTsKKyAgICBtX2F0dGFjay0+c2V0
Q29udGV4dChjb250ZXh0KTsKKyAgICBtX3JlbGVhc2UtPnNldENvbnRleHQoY29udGV4dCk7CiAK
ICAgICBpbml0aWFsaXplKCk7CiB9CkBAIC03MiwxMCArNzYsMTQgQEAgdm9pZCBEeW5hbWljc0Nv
bXByZXNzb3JOb2RlOjpwcm9jZXNzKHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCiAgICAgZmxvYXQg
dGhyZXNob2xkID0gbV90aHJlc2hvbGQtPnZhbHVlKCk7CiAgICAgZmxvYXQga25lZSA9IG1fa25l
ZS0+dmFsdWUoKTsKICAgICBmbG9hdCByYXRpbyA9IG1fcmF0aW8tPnZhbHVlKCk7CisgICAgZmxv
YXQgYXR0YWNrID0gbV9hdHRhY2stPnZhbHVlKCk7CisgICAgZmxvYXQgcmVsZWFzZSA9IG1fcmVs
ZWFzZS0+dmFsdWUoKTsKIAogICAgIG1fZHluYW1pY3NDb21wcmVzc29yLT5zZXRQYXJhbWV0ZXJW
YWx1ZShEeW5hbWljc0NvbXByZXNzb3I6OlBhcmFtVGhyZXNob2xkLCB0aHJlc2hvbGQpOwogICAg
IG1fZHluYW1pY3NDb21wcmVzc29yLT5zZXRQYXJhbWV0ZXJWYWx1ZShEeW5hbWljc0NvbXByZXNz
b3I6OlBhcmFtS25lZSwga25lZSk7CiAgICAgbV9keW5hbWljc0NvbXByZXNzb3ItPnNldFBhcmFt
ZXRlclZhbHVlKER5bmFtaWNzQ29tcHJlc3Nvcjo6UGFyYW1SYXRpbywgcmF0aW8pOworICAgIG1f
ZHluYW1pY3NDb21wcmVzc29yLT5zZXRQYXJhbWV0ZXJWYWx1ZShEeW5hbWljc0NvbXByZXNzb3I6
OlBhcmFtQXR0YWNrLCBhdHRhY2spOworICAgIG1fZHluYW1pY3NDb21wcmVzc29yLT5zZXRQYXJh
bWV0ZXJWYWx1ZShEeW5hbWljc0NvbXByZXNzb3I6OlBhcmFtUmVsZWFzZSwgcmVsZWFzZSk7CiAK
ICAgICBtX2R5bmFtaWNzQ29tcHJlc3Nvci0+cHJvY2VzcyhpbnB1dCgwKS0+YnVzKCksIG91dHB1
dEJ1cywgZnJhbWVzVG9Qcm9jZXNzKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaAppbmRleCBjZjdlNjNhNDI5
ZmJkZDQ5YTYxN2E3ZDE2ZjBmYjcyZGRlZmZmZjk3Li4zMzhkZmYzYjA1MDc2MzNiOTIyYTAwYTk0
MTcyNWVlY2U4OWY5NTI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1
ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaApAQCAtNTIsNiArNTIsOCBAQCBwdWJs
aWM6CiAgICAgQXVkaW9QYXJhbSogdGhyZXNob2xkKCkgeyByZXR1cm4gbV90aHJlc2hvbGQuZ2V0
KCk7IH0KICAgICBBdWRpb1BhcmFtKiBrbmVlKCkgeyByZXR1cm4gbV9rbmVlLmdldCgpOyB9CiAg
ICAgQXVkaW9QYXJhbSogcmF0aW8oKSB7IHJldHVybiBtX3JhdGlvLmdldCgpOyB9CisgICAgQXVk
aW9QYXJhbSogYXR0YWNrKCkgeyByZXR1cm4gbV9hdHRhY2suZ2V0KCk7IH0KKyAgICBBdWRpb1Bh
cmFtKiByZWxlYXNlKCkgeyByZXR1cm4gbV9yZWxlYXNlLmdldCgpOyB9CiAKICAgICAvLyBBbW91
bnQgYnkgd2hpY2ggdGhlIGNvbXByZXNzb3IgaXMgY3VycmVudGx5IGNvbXByZXNzaW5nIHRoZSBz
aWduYWwgaW4gZGVjaWJlbHMuCiAgICAgQXVkaW9QYXJhbSogcmVkdWN0aW9uKCkgeyByZXR1cm4g
bV9yZWR1Y3Rpb24uZ2V0KCk7IH0KQEAgLTY3LDYgKzY5LDggQEAgcHJpdmF0ZToKICAgICBSZWZQ
dHI8QXVkaW9QYXJhbT4gbV9rbmVlOwogICAgIFJlZlB0cjxBdWRpb1BhcmFtPiBtX3JhdGlvOwog
ICAgIFJlZlB0cjxBdWRpb1BhcmFtPiBtX3JlZHVjdGlvbjsKKyAgICBSZWZQdHI8QXVkaW9QYXJh
bT4gbV9hdHRhY2s7CisgICAgUmVmUHRyPEF1ZGlvUGFyYW0+IG1fcmVsZWFzZTsKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRsCmluZGV4IDYwZDY0ZmRhMDc3
ZTRhYzE3MGJjMDNjMWVlOTZhM2IyZDgwMThiNzAuLmEyZTM1NjU2YmVkM2VjNjMyYmQ4OTg3NzAx
YzVhNWI1MjEzYjA5ZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVk
aW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9EeW5hbWljc0NvbXByZXNzb3JOb2RlLmlkbApAQCAtMzEsNSArMzEsNyBAQCBt
b2R1bGUgYXVkaW8gewogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgQXVkaW9QYXJhbSBrbmVl
OyAvLyBpbiBEZWNpYmVscwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgQXVkaW9QYXJhbSBy
YXRpbzsgLy8gdW5pdC1sZXNzCiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBBdWRpb1BhcmFt
IHJlZHVjdGlvbjsgLy8gaW4gRGVjaWJlbHMKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEF1
ZGlvUGFyYW0gYXR0YWNrOyAvLyBpbiBTZWNvbmRzCisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBBdWRpb1BhcmFtIHJlbGVhc2U7IC8vIGluIFNlY29uZHMKICAgICB9OwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbSBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0KaW5k
ZXggNTY5MWQwMzRhZGExZDJiMzIxMDlhMTgyNGVjMjNhMmM0YWRjNTQzMS4uZmZkMDdkYzJkMDA0
MDc1YmU2NmZjNzljNzdmNDAzZTdiM2NkZGQwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtCkBAIC00NjYsNiArNDY2LDEx
IEBAIHN1YiBTa2lwQXR0cmlidXRlCiAKICAgICByZXR1cm4gMSBpZiAkY29kZUdlbmVyYXRvci0+
R2V0QXJyYXlUeXBlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSk7CiAKKyAgICAjIFRoaXMg
aXMgZm9yIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUuaWRsCisgICAgaWYgKCRhdHRyaWJ1dGUtPnNp
Z25hdHVyZS0+bmFtZSBlcSAicmVsZWFzZSIpIHsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQor
CiAgICAgcmV0dXJuIDA7CiB9CiAKQEAgLTc3OSw2ICs3ODQsNyBAQCBzdWIgR2VuZXJhdGVIZWFk
ZXIKICAgICAjIC0gQWRkIGF0dHJpYnV0ZSBnZXR0ZXJzL3NldHRlcnMuCiAgICAgaWYgKCRudW1B
dHRyaWJ1dGVzID4gMCkgewogICAgICAgICBmb3JlYWNoIG15ICRhdHRyaWJ1dGUgKEB7JGRhdGFO
b2RlLT5hdHRyaWJ1dGVzfSkgeworICAgICAgICAgICAgbmV4dCBpZiBTa2lwQXR0cmlidXRlKCRh
dHRyaWJ1dGUpOwogICAgICAgICAgICAgbXkgJGF0dHJpYnV0ZU5hbWUgPSAkYXR0cmlidXRlLT5z
aWduYXR1cmUtPm5hbWU7CiAKICAgICAgICAgICAgIGlmICgkYXR0cmlidXRlTmFtZSBlcSAiaWQi
IG9yICRhdHRyaWJ1dGVOYW1lIGVxICJoYXNoIiBvciAkYXR0cmlidXRlTmFtZSBlcSAiZGVzY3Jp
cHRpb24iKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EeW5h
bWljc0NvbXByZXNzb3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0R5bmFtaWNz
Q29tcHJlc3Nvci5oCmluZGV4IDUyMDEzMjg5ODQxOTQ1ZGE3M2ZkYTY2MGJlMWYyYjdjZDYxOTEz
ODEuLmY3ODFhZmU3Yjk3MjI5MzBlNmYyNTRlY2MzMzRkOTc3NTJkZDY2ZWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvci5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0R5bmFtaWNzQ29tcHJlc3Nvci5oCkBAIC04
NSw4ICs4NSw2IEBAIHByb3RlY3RlZDoKICAgICB1bnNpZ25lZCBtX251bWJlck9mQ2hhbm5lbHM7
CiAKICAgICAvLyBtX3BhcmFtZXRlcnMgaG9sZHMgdGhlIHR3ZWFrYWJsZSBjb21wcmVzc29yIHBh
cmFtZXRlcnMuCi0gICAgLy8gRklYTUU6IGV4cG9zZSBzb21lIG9mIHRoZSBtb3N0IGltcG9ydGFu
dCBvbmVzIChzdWNoIGFzIHRocmVzaG9sZCwgYXR0YWNrLCByZWxlYXNlKQotICAgIC8vIGFzIER5
bmFtaWNzQ29tcHJlc3Nvck5vZGUgYXR0cmlidXRlcy4KICAgICBmbG9hdCBtX3BhcmFtZXRlcnNb
UGFyYW1MYXN0XTsKICAgICB2b2lkIGluaXRpYWxpemVQYXJhbWV0ZXJzKCk7CiAKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBi
NWFiZGY5YTk2NDI0ZjJiMjZkNjY2YjFhNjk4YTAyZTAzOTZiNTliLi5kYjc1YjhhNTYxNmZmZmI1
NDgzOTBkM2U5NGJhNjQzNDY1MmFkYjMxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTItMDQt
MDkgIFJheW1vbmQgVG95ICA8cnRveUBnb29nbGUuY29tPgorCisgICAgICAgIEV4cG9zZSBhdHRh
Y2ssIHJlbGVhc2UgYXMgRHluYW1pY3NDb21wcmVzc29yTm9kZSdzIGF0dHJpYnV0ZXMuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTIyMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViYXVkaW8vZHlu
YW1pY3Njb21wcmVzc29yLWJhc2ljLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWJhdWRpby9k
eW5hbWljc2NvbXByZXNzb3ItYmFzaWMuaHRtbDoKKwogMjAxMi0wNC0xNyAgVGFrYXNoaSBUb3lv
c2hpbWEgIDx0b3lvc2hpbUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcmVi
YXNlbGluZSBvZiBzdmcvYXMtYmFja2dyb3VuZC1pbWFnZS9zdmctYXMtYmFja2dyb3VuZC02Lmh0
bWwgLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29y
LWJhc2ljLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5bmFtaWNzY29tcHJl
c3Nvci1iYXNpYy1leHBlY3RlZC50eHQKaW5kZXggZGQzOTk5MTQ5MzkyYzc3YTZkZjBkY2JjZTZl
N2YzZWZiM2M4N2E2Yy4uMDljMzBlNmJhY2RhOTk5ZDM1NjhlZTVhODQ0NzQxYmZmZDE2ZDE0YiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2lj
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9keW5hbWljc2NvbXByZXNz
b3ItYmFzaWMtZXhwZWN0ZWQudHh0CkBAIC01LDYgKzUsOCBAQCBPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURQogUEFTUyB0aHJlc2hvbGQgYXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUu
CiBQQVNTIGtuZWUgYXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuCiBQQVNTIHJh
dGlvIGF0dHJpYnV0ZSBoYXMgY29ycmVjdCBkZWZhdWx0IHZhbHVlLgorUEFTUyBhdHRhY2sgYXR0
cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuCitQQVNTIHJlbGVhc2UgYXR0cmlidXRl
IGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL2R5
bmFtaWNzY29tcHJlc3Nvci1iYXNpYy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1p
Y3Njb21wcmVzc29yLWJhc2ljLmh0bWwKaW5kZXggZDEyMmJlY2MyNTMxZjc5ZDlhNWMzZDk5YWUw
NDYwNDU5ZjFmZDExYi4uYjAzNDE4ZmM2ZGRkYTg4ZmEyNDY2MjVmOTAyNzUwM2I5NGFmMzIyOSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2lj
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vZHluYW1pY3Njb21wcmVzc29yLWJhc2lj
Lmh0bWwKQEAgLTQzLDYgKzQzLDE2IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CiAgICAgICAgIGVs
c2UKICAgICAgICAgICAgIHRlc3RGYWlsZWQoInJhdGlvIGF0dHJpYnV0ZSBoYXMgaW5jb3JyZWN0
IGRlZmF1bHQgdmFsdWUuIik7CiAgICAgICAgIAorICAgICAgICBpZiAoY29tcHJlc3Nvci5hdHRh
Y2sudmFsdWUgLSAwLjAwMyA8IDNlLTgpCisgICAgICAgICAgICB0ZXN0UGFzc2VkKCJhdHRhY2sg
YXR0cmlidXRlIGhhcyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuIik7CisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIHRlc3RGYWlsZWQoImF0dGFjayBhdHRyaWJ1dGUgaGFzIGluY29ycmVjdCBkZWZh
dWx0IHZhbHVlLiIpOworCisgICAgICAgIGlmIChjb21wcmVzc29yLnJlbGVhc2UudmFsdWUgLSAw
LjI1IDwgM2UtOCkKKyAgICAgICAgICAgIHRlc3RQYXNzZWQoInJlbGVhc2UgYXR0cmlidXRlIGhh
cyBjb3JyZWN0IGRlZmF1bHQgdmFsdWUuIik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHRl
c3RGYWlsZWQoInJlbGVhc2UgYXR0cmlidXRlIGhhcyBpbmNvcnJlY3QgZGVmYXVsdCB2YWx1ZS4i
KTsKKwogICAgIH0gY2F0Y2goZSkgewogICAgICAgICB0ZXN0RmFpbGVkKCJFeGNlcHRpb24gdGhy
b3duIHdoZW4gYWNjZXNzaW5nIER5bmFtaWNzQ29tcHJlc3Nvck5vZGUgYXR0cmlidXRlcy4iKTsK
ICAgICB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>