<?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>9902</bug_id>
          
          <creation_ts>2006-07-13 18:10:36 -0700</creation_ts>
          <short_desc>jsNull and NSNull not properly converted between JS and ObjC</short_desc>
          <delta_ts>2016-08-04 15:14:03 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore JavaScript</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dan Waylonis">waylonis</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abob</cc>
    
    <cc>andersca</cc>
    
    <cc>barraclough</cc>
    
    <cc>darin</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>emacemac7</cc>
    
    <cc>ggaren</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>49693</commentid>
    <comment_count>0</comment_count>
    <who name="Dan Waylonis">waylonis</who>
    <bug_when>2006-07-13 18:10:36 -0700</bug_when>
    <thetext>Hi, I&apos;m working for Google on a WebKit plugin.

I&apos;ve found that JS code with a &quot;null&quot; value will be converted to [WebUndefined undefined] when sent to a WebKit plug-in, and that there is no way to return a JS &quot;null&quot; from the plug-in (returning nil results in a JS &quot;undefined&quot; value).

The documentation (http://developer.apple.com/documentation/Cocoa/Conceptual/DisplayWebContent/Tasks/JavaScriptFromObjC.html) states that NSNull will be converted to/from JS&apos;s null.

A very straightforward fix for this would be to add these lines:

objc_utility.mm:convertObjcValueToValue:(line 236)
                } else if ([*obj isKindOfClass:[NSNull class]]) {
                  aValue = jsNull();

WebScriptObject.mm:_convertValueToObjcValue:(line 436)
    else if (value-&gt;isNull())
        // JS Null -&gt; NSNull
        return [NSNull null];

I came across this bug when I found that invokeUndefinedMethodFromWebScript:withArgs: was not being called for JS code that had a null in the arguments.  What happens is that inside of ObjcInstance::invokeMethod() the null is turned into a actual NULL (0x0) value, and when the code tries to add it to the objcArgs array, it throws an exception and the invocation never happens.

The above code changes fix the discrepancy between the documentation and reality as well as fixes the bug that I just mentioned.

Thanks,
Dan</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49705</commentid>
    <comment_count>1</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-07-13 21:18:20 -0700</bug_when>
    <thetext>Hi Dan, please post a patch for review.  You can use the WebKitTools/Scripts/svn-create-patch script create a patch for you to post to this bug:

$ ./WebKitTools/Scripts/svn-create-patch JavaScriptCore &gt; bug-9902.diff

If you&apos;d like to be really pro-active, create a ChangeLog entry before creating the patch above:

$ ./WebKitTools/Scripts/prepare-ChangeLog JavaScriptCore

You can learn more about coding styles and the process used to contribute code (patches) to WebKit on this web page:

http://webkit.opendarwin.org/coding/contributing.html

Thanks!

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49824</commentid>
    <comment_count>2</comment_count>
      <attachid>9451</attachid>
    <who name="Dan Waylonis">waylonis</who>
    <bug_when>2006-07-14 12:04:45 -0700</bug_when>
    <thetext>Created attachment 9451
Patch to fix JSnull &lt;-&gt; NSNull</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>49886</commentid>
    <comment_count>3</comment_count>
      <attachid>9451</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-07-14 19:43:23 -0700</bug_when>
    <thetext>Comment on attachment 9451
Patch to fix JSnull &lt;-&gt; NSNull

Patch looks great.

We don&apos;t want that &quot;GOOGLE Change&quot; comment in there, though. And the closing parenthesis is missing from this line:

+    // Other types (UnspecifiedType converted to 0.

Ideally we also need to come up with a test for this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50202</commentid>
    <comment_count>4</comment_count>
      <attachid>9530</attachid>
    <who name="Dan Waylonis">waylonis</who>
    <bug_when>2006-07-17 14:59:36 -0700</bug_when>
    <thetext>Created attachment 9530
Revised changes for 9902

Changes as suggested by Darin</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50210</commentid>
    <comment_count>5</comment_count>
      <attachid>9530</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-07-17 15:45:18 -0700</bug_when>
    <thetext>Comment on attachment 9530
Revised changes for 9902

Patch looks great! All we need is a layout test, and a change log entry, and we&apos;re ready to go.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50211</commentid>
    <comment_count>6</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-07-17 15:58:32 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Patch looks great! All we need is a layout test, and a change log entry, and
&gt; we&apos;re ready to go.

Because this bug deals with the ObjC&lt;-&gt;JavaScript bindings, a normal layout test (which tests the behavior of the browser using &quot;normal&quot; HTML and JavaScript) is not possible.

However, I think there is a (relatively) new feature of DumpRenderTree (the testing harness application WebKit uses to run layout tests) that allows you to call ObjC methods from within JavaScript.  I&apos;m not real familiar with how to do this, though.  I would start by looking in the LayoutTests/plugins/ directory for any test with &quot;objc&quot; in the name.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50214</commentid>
    <comment_count>7</comment_count>
      <attachid>9533</attachid>
    <who name="Dan Waylonis">waylonis</who>
    <bug_when>2006-07-17 16:09:53 -0700</bug_when>
    <thetext>Created attachment 9533
Changelog patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50216</commentid>
    <comment_count>8</comment_count>
      <attachid>9533</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-07-17 16:51:31 -0700</bug_when>
    <thetext>Comment on attachment 9533
Changelog patch

Please don&apos;t use a separate patch for ChangeLog. We use single patches that include ChangeLog, code changes, and test cases.

Also, this has tab characters in it. We don&apos;t use tab characters, and we have Subversion configured so it won&apos;t allow check-ins of files with tab characters in them.

Also, it&apos;s best if the change has comments explaining the individual changes in addition to the bug URL, although some are better than others at adhering to this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50222</commentid>
    <comment_count>9</comment_count>
      <attachid>9535</attachid>
    <who name="Dan Waylonis">waylonis</who>
    <bug_when>2006-07-17 17:11:22 -0700</bug_when>
    <thetext>Created attachment 9535
Revised changes for 9902

I&apos;ve removed the tabs and added comments to the change long.  I also modified the DumpRenderTree code to include a method called &quot;echo&quot; which will take an object and return it.  I modified LayoutTests/plugins/bindings-test.html and LayoutTests/plugins/bindings-test-expected.txt to test that objects are properly round-tripped between JS and ObjC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50302</commentid>
    <comment_count>10</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-07-18 14:05:47 -0700</bug_when>
    <thetext>Wow, I&apos;m really curious about how this bug affects Google!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50439</commentid>
    <comment_count>11</comment_count>
      <attachid>9535</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-07-20 07:13:38 -0700</bug_when>
    <thetext>Comment on attachment 9535
Revised changes for 9902

I think Attachment 9535 needed its review flag set.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50446</commentid>
    <comment_count>12</comment_count>
      <attachid>9535</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-07-20 09:35:34 -0700</bug_when>
    <thetext>Comment on attachment 9535
Revised changes for 9902

r=me

ChangeLog needs a tiny bit of work. Whoever lands this should take care of that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50671</commentid>
    <comment_count>13</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-07-24 09:56:04 -0700</bug_when>
    <thetext>I attempted to land, but this patch has already bit-rotted (WebScriptObject.mm moved to WebCore, and WebScriptObject.h now has a split personality).

We maintain a separate ChangeLog in each subproject, so a patch should ideally provide them all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>50741</commentid>
    <comment_count>14</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-07-24 21:59:08 -0700</bug_when>
    <thetext>I fixed up this patch and landed it.

Committed revision 15618.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54238</commentid>
    <comment_count>15</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2006-08-30 10:12:02 -0700</bug_when>
    <thetext>This patch caused a couple of regressions. It seems application and widget authors do not take into acount for NSNull being a return type, this is very unfortunate.

&lt;rdar://problem/4651318&gt; &lt;rdar://problem/4701626&gt;

One example of this in Dashboard causes the following exception.

2006-08-29 17:09:05.927 DashboardClient[24975] *** -[NSNull length]: selector not recognized [self = 0xa0801040]

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54239</commentid>
    <comment_count>16</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2006-08-30 10:12:45 -0700</bug_when>
    <thetext>Should we roll this out?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54240</commentid>
    <comment_count>17</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-08-30 10:17:47 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; Should we roll this out?

We probably need to -- I think we&apos;re stuck with both null and undefined turning into nil. We should correct the documentation instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54252</commentid>
    <comment_count>18</comment_count>
    <who name="Dan Waylonis">waylonis</who>
    <bug_when>2006-08-30 11:40:31 -0700</bug_when>
    <thetext>That&apos;s super unfortunate.  It will definitely cause my project here to fail.

How about adding a class method +(void)setUsesNSNullForNil:(BOOL)yn to the WebScriptObject class?  The default behavior is the old behavior.  If set to YES, then it functions as the documentation describes and the patch fixes.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54259</commentid>
    <comment_count>19</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-08-30 12:51:56 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; How about adding a class method +(void)setUsesNSNullForNil:(BOOL)yn to the
&gt; WebScriptObject class?  The default behavior is the old behavior.  If set to
&gt; YES, then it functions as the documentation describes and the patch fixes.

I don&apos;t think that will work. That would change behavior for everyone in the same process, which could include plug-ins and other clients of WebKit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54276</commentid>
    <comment_count>20</comment_count>
    <who name="Dan Waylonis">waylonis</who>
    <bug_when>2006-08-30 14:47:58 -0700</bug_when>
    <thetext>That&apos;s true, but it wouldn&apos;t break existing Dashboard widgets, which I think were the bugs reported. 

Is there some way to make it specific to a particular instance of a plugin?  Perhaps if the plugin responded to a selector +(BOOL)useNSNullForNil;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54279</commentid>
    <comment_count>21</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-08-30 15:05:48 -0700</bug_when>
    <thetext>(In reply to comment #19)
&gt; (In reply to comment #18)
&gt; &gt; How about adding a class method +(void)setUsesNSNullForNil:(BOOL)yn to the
&gt; &gt; WebScriptObject class?  The default behavior is the old behavior.  If set to
&gt; &gt; YES, then it functions as the documentation describes and the patch fixes.
&gt; 
&gt; I don&apos;t think that will work. That would change behavior for everyone in the
&gt; same process, which could include plug-ins and other clients of WebKit.

What about adding a new public API method that does the right thing and deprecating (and documenting) the old method?  The implemention of the two methods could be refactored to remove duplicate code while maintaining both old and new behaviors.

Reopening bug since it&apos;s apparent changes need to be made.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54280</commentid>
    <comment_count>22</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-08-30 15:06:22 -0700</bug_when>
    <thetext>(In reply to comment #20)
&gt; That&apos;s true, but it wouldn&apos;t break existing Dashboard widgets, which I think
&gt; were the bugs reported. 

It easily could break an existing Dashboard widget. Upcoming versions of Dashboard load multiple widgets in a single process, and if a widget loaded a plug-in that made this call, then it could break plug-ins in other widgets.

We don&apos;t know that this issue is limited to Dashboard. It&apos;s true that the first trouble we found was in a Dashboard widget.

&gt; Is there some way to make it specific to a particular instance of a plugin? 
&gt; Perhaps if the plugin responded to a selector +(BOOL)useNSNullForNil;?

Could be -- I&apos;m not sure how to get to the plug-in from inside the bindings code efficiently, but perhaps it could be done. Sounds challenging to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54281</commentid>
    <comment_count>23</comment_count>
      <attachid>9535</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-08-30 15:06:39 -0700</bug_when>
    <thetext>Comment on attachment 9535
Revised changes for 9902

Clearing review+ flag on Attachment 9535 after bug was reopened.  See Comment #21.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>54282</commentid>
    <comment_count>24</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-08-30 15:07:23 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; What about adding a new public API method that does the right thing and
&gt; deprecating (and documenting) the old method?  The implemention of the two
&gt; methods could be refactored to remove duplicate code while maintaining both old
&gt; and new behaviors.

Might be a good approach. Lets figure out what methods are affected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>56580</commentid>
    <comment_count>25</comment_count>
    <who name="Dan Waylonis">waylonis</who>
    <bug_when>2006-09-26 18:08:09 -0700</bug_when>
    <thetext>I see that in the latest top of tree the WebScriptObject.mm:_convertValueToObjCValue:originExecutionContext:executionContext: method now no longer returns NSNull when converting a jsNull for compatibility reasons.

It would be great if there was a way that the Plugin could indicate that it wants to receive NSNulls instead of 0 for jsNull conversion.  Maybe some way of querying the plugin once and setting the Exec state to control the conversion? </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>56620</commentid>
    <comment_count>26</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-09-27 10:20:43 -0700</bug_when>
    <thetext>(In reply to comment #25)
&gt; It would be great if there was a way that the Plugin could indicate that it
&gt; wants to receive NSNulls instead of 0 for jsNull conversion.  Maybe some way of
&gt; querying the plugin once and setting the Exec state to control the conversion? 

That sounds OK, or the thing mentioned in the thread leading to comment #24.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1217619</commentid>
    <comment_count>27</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2016-08-04 15:14:03 -0700</bug_when>
    <thetext>We don&apos;t plan to modify the Objective-C bindings further.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>9451</attachid>
            <date>2006-07-14 12:04:45 -0700</date>
            <delta_ts>2006-07-17 15:44:43 -0700</delta_ts>
            <desc>Patch to fix JSnull &lt;-&gt; NSNull</desc>
            <filename>bug-9902.diff</filename>
            <type>text/plain</type>
            <size>1791</size>
            <attacher name="Dan Waylonis">waylonis</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL2JpbmRpbmdzL29iamMvV2ViU2NyaXB0T2JqZWN0Lm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL2JpbmRpbmdzL29iamMvV2ViU2NyaXB0T2JqZWN0
Lm1tCShyZXZpc2lvbiAxNTQyOSkKKysrIEphdmFTY3JpcHRDb3JlL2JpbmRpbmdzL29iamMvV2Vi
U2NyaXB0T2JqZWN0Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC00MzMsOCArNDMzLDExIEBAIHN0YXRp
YyBMaXN0IGxpc3RGcm9tTlNBcnJheShFeGVjU3RhdGUgKmUKICAgICBlbHNlIGlmICh2YWx1ZS0+
aXNVbmRlZmluZWQoKSkKICAgICAgICAgLy8gSlMgVW5kZWZpbmVkIC0tPiBXZWJVbmRlZmluZWQK
ICAgICAgICAgcmV0dXJuIFtXZWJVbmRlZmluZWQgdW5kZWZpbmVkXTsKLSAgICAKLSAgICAvLyBP
dGhlciB0eXBlcyAoVW5zcGVjaWZpZWRUeXBlIGFuZCBOdWxsVHlwZSkgY29udmVydGVkIHRvIDAu
CisgICAgZWxzZSBpZiAodmFsdWUtPmlzTnVsbCgpKQorICAgICAgICAvLyBKUyBOdWxsIC0+IE5T
TnVsbAorICAgICAgICByZXR1cm4gW05TTnVsbCBudWxsXTsKKyAgCisgICAgLy8gT3RoZXIgdHlw
ZXMgKFVuc3BlY2lmaWVkVHlwZSBjb252ZXJ0ZWQgdG8gMC4KICAgICByZXR1cm4gMDsKIH0KIApJ
bmRleDogSmF2YVNjcmlwdENvcmUvYmluZGluZ3Mvb2JqYy9vYmpjX3V0aWxpdHkubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gSmF2YVNjcmlwdENvcmUvYmluZGluZ3Mvb2JqYy9vYmpjX3V0aWxpdHkubW0JKHJl
dmlzaW9uIDE1NDI5KQorKysgSmF2YVNjcmlwdENvcmUvYmluZGluZ3Mvb2JqYy9vYmpjX3V0aWxp
dHkubW0JKHdvcmtpbmcgY29weSkKQEAgLTkzLDYgKzkzLDcgQEAgYm9vbCBjb252ZXJ0SlNNZXRo
b2ROYW1lVG9PYmpjKGNvbnN0IGNoYQogICAgIFN0cmluZyAgICAgICAgICBOU1N0cmluZwogICAg
IHdyYXBwZXIgICAgICAgICBpZAogICAgIE9iamVjdCAgICAgICAgICBXZWJTY3JpcHRPYmplY3QK
KyAgICBudWxsICAgICAgICAgICAgTlNOdWxsCiAgICAgW10sIG90aGVyICAgICAgIGV4Y2VwdGlv
bgogCiAqLwpAQCAtMjMxLDcgKzIzMiwxMCBAQCBKU1ZhbHVlICpjb252ZXJ0T2JqY1ZhbHVlVG9W
YWx1ZSAoRXhlY1N0CiAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChbKm9iaiBpc0tpbmRPZkNs
YXNzOltXZWJTY3JpcHRPYmplY3QgY2xhc3NdXSkgewogICAgICAgICAgICAgICAgICAgICBXZWJT
Y3JpcHRPYmplY3QgKmpzb2JqZWN0ID0gKFdlYlNjcmlwdE9iamVjdCAqKSpvYmo7CiAgICAgICAg
ICAgICAgICAgICAgIGFWYWx1ZSA9IFtqc29iamVjdCBfaW1wXTsKLSAgICAgICAgICAgICAgICB9
IGVsc2UgaWYgKCpvYmogPT0gMCkgeworICAgICAgICAgICAgICAgICAgICAvLyBHT09HTEUgQ2hh
bmdlCisgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChbKm9iaiBpc0tpbmRPZkNsYXNzOltOU051
bGwgY2xhc3NdXSkgeworICAgICAgICAgICAgICAgICAgYVZhbHVlID0ganNOdWxsKCk7CisgICAg
ICAgICAgICAgICB9IGVsc2UgaWYgKCpvYmogPT0gMCkgewogICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4ganNVbmRlZmluZWQoKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogCQkgICAgYVZh
bHVlID0gSW5zdGFuY2U6OmNyZWF0ZVJ1bnRpbWVPYmplY3QoSW5zdGFuY2U6Ok9iamVjdGl2ZUNM
YW5ndWFnZSwgKHZvaWQgKikqb2JqKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>9530</attachid>
            <date>2006-07-17 14:59:36 -0700</date>
            <delta_ts>2006-07-17 17:11:22 -0700</delta_ts>
            <desc>Revised changes for 9902</desc>
            <filename>bug-9902b.diff</filename>
            <type>text/plain</type>
            <size>2683</size>
            <attacher name="Dan Waylonis">waylonis</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NDg4KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzw8PDw8PDwgLm1pbmUKKzIwMDYt
MDctMTQgIHdheWxvbmlzICA8c2V0IEVNQUlMX0FERFJFU1MgZW52aXJvbm1lbnQgdmFyaWFibGU+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBiaW5k
aW5ncy9vYmpjL1dlYlNjcmlwdE9iamVjdC5tbToKKyAgICAgICAgKCtbV2ViU2NyaXB0T2JqZWN0
IF9jb252ZXJ0VmFsdWVUb09iamNWYWx1ZTpvcmlnaW5FeGVjdXRpb25Db250ZXh0OmV4ZWN1dGlv
bkNvbnRleHQ6XSk6CisgICAgICAgICogYmluZGluZ3Mvb2JqYy9vYmpjX3V0aWxpdHkubW06Cisg
ICAgICAgIChLSlM6OkJpbmRpbmdzOjpjb252ZXJ0T2JqY1ZhbHVlVG9WYWx1ZSk6CisKKz09PT09
PT0KIDIwMDYtMDctMTcgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAg
ICogQVBJL0pTQmFzZS5oOiBGaXggY29tbWVudCBmb3JtYXR0aW5nIHdoZXJlIHRoaW5ncyB1c2Vk
IHRvIGJlIGxpbmVkIHVwIGJ1dApAQCAtNDc1LDYgKzQ4Niw3IEBACiAgICAgICAgICogcGNyZS9w
Y3JlX2NvbXBpbGUuYzogKHBjcmVfY29tcGlsZTIpOiBGaXhlZCBhIERQUklOVEYgc28gSSBjb3Vs
ZCBjb21waWxlCiAgICAgICAgIHdpdGggREVCVUcgb24uCiAKKz4+Pj4+Pj4gLnIxNTQ4OAogMjAw
Ni0wNy0xNCAgR2VvZmZyZXkgR2FyZW4gIDxnZ2FyZW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJT
IGJ5IE1hY2llai4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL2JpbmRpbmdzL29iamMvV2ViU2NyaXB0
T2JqZWN0Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL2JpbmRpbmdzL29iamMvV2Vi
U2NyaXB0T2JqZWN0Lm1tCShyZXZpc2lvbiAxNTQ4OCkKKysrIEphdmFTY3JpcHRDb3JlL2JpbmRp
bmdzL29iamMvV2ViU2NyaXB0T2JqZWN0Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC00MzMsOCArNDMz
LDExIEBAIHN0YXRpYyBMaXN0IGxpc3RGcm9tTlNBcnJheShFeGVjU3RhdGUgKmUKICAgICBlbHNl
IGlmICh2YWx1ZS0+aXNVbmRlZmluZWQoKSkKICAgICAgICAgLy8gSlMgVW5kZWZpbmVkIC0tPiBX
ZWJVbmRlZmluZWQKICAgICAgICAgcmV0dXJuIFtXZWJVbmRlZmluZWQgdW5kZWZpbmVkXTsKLSAg
ICAKLSAgICAvLyBPdGhlciB0eXBlcyAoVW5zcGVjaWZpZWRUeXBlIGFuZCBOdWxsVHlwZSkgY29u
dmVydGVkIHRvIDAuCisgICAgZWxzZSBpZiAodmFsdWUtPmlzTnVsbCgpKQorICAgICAgICAvLyBK
UyBOdWxsIC0+IE5TTnVsbAorICAgICAgICByZXR1cm4gW05TTnVsbCBudWxsXTsKKyAgCisgICAg
Ly8gT3RoZXIgdHlwZXMgKGUuZy4sIFVuc3BlY2lmaWVkVHlwZSkgY29udmVydGVkIHRvIDAuCiAg
ICAgcmV0dXJuIDA7CiB9CiAKSW5kZXg6IEphdmFTY3JpcHRDb3JlL2JpbmRpbmdzL29iamMvb2Jq
Y191dGlsaXR5Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL2JpbmRpbmdzL29iamMv
b2JqY191dGlsaXR5Lm1tCShyZXZpc2lvbiAxNTQ4OCkKKysrIEphdmFTY3JpcHRDb3JlL2JpbmRp
bmdzL29iamMvb2JqY191dGlsaXR5Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC05Myw2ICs5Myw3IEBA
IGJvb2wgY29udmVydEpTTWV0aG9kTmFtZVRvT2JqYyhjb25zdCBjaGEKICAgICBTdHJpbmcgICAg
ICAgICAgTlNTdHJpbmcKICAgICB3cmFwcGVyICAgICAgICAgaWQKICAgICBPYmplY3QgICAgICAg
ICAgV2ViU2NyaXB0T2JqZWN0CisgICAgbnVsbCAgICAgICAgICAgIE5TTnVsbAogICAgIFtdLCBv
dGhlciAgICAgICBleGNlcHRpb24KIAogKi8KQEAgLTIzMSw3ICsyMzIsOSBAQCBKU1ZhbHVlICpj
b252ZXJ0T2JqY1ZhbHVlVG9WYWx1ZSAoRXhlY1N0CiAgICAgICAgICAgICAgICAgfSBlbHNlIGlm
IChbKm9iaiBpc0tpbmRPZkNsYXNzOltXZWJTY3JpcHRPYmplY3QgY2xhc3NdXSkgewogICAgICAg
ICAgICAgICAgICAgICBXZWJTY3JpcHRPYmplY3QgKmpzb2JqZWN0ID0gKFdlYlNjcmlwdE9iamVj
dCAqKSpvYmo7CiAgICAgICAgICAgICAgICAgICAgIGFWYWx1ZSA9IFtqc29iamVjdCBfaW1wXTsK
LSAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCpvYmogPT0gMCkgeworICAgICAgICAgICAgICAg
IH0gZWxzZSBpZiAoWypvYmogaXNLaW5kT2ZDbGFzczpbTlNOdWxsIGNsYXNzXV0pIHsKKyAgICAg
ICAgICAgICAgICAgIGFWYWx1ZSA9IGpzTnVsbCgpOworICAgICAgICAgICAgICAgfSBlbHNlIGlm
ICgqb2JqID09IDApIHsKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVkKCk7
CiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKIAkJICAgIGFWYWx1ZSA9IEluc3RhbmNlOjpjcmVh
dGVSdW50aW1lT2JqZWN0KEluc3RhbmNlOjpPYmplY3RpdmVDTGFuZ3VhZ2UsICh2b2lkICopKm9i
aik7Cg==
</data>
<flag name="review"
          id="2910"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>9533</attachid>
            <date>2006-07-17 16:09:53 -0700</date>
            <delta_ts>2006-07-17 17:11:22 -0700</delta_ts>
            <desc>Changelog patch</desc>
            <filename>changelog9902.diff</filename>
            <type>text/plain</type>
            <size>734</size>
            <attacher name="Dan Waylonis">waylonis</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NDkxKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMDYtMDctMTcgIHdheWxvbmlz
ICA8d2F5bG9uaXNAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKwkKKwlDaGFuZ2VzIHRvIGZpeDoKKwlodHRwOi8vYnVnemlsbGEub3BlbmRhcndpbi5v
cmcvc2hvd19idWcuY2dpP2lkPTk5MDIKKyAgICAgICAgKiBiaW5kaW5ncy9vYmpjL1dlYlNjcmlw
dE9iamVjdC5tbToKKyAgICAgICAgKCtbV2ViU2NyaXB0T2JqZWN0IF9jb252ZXJ0VmFsdWVUb09i
amNWYWx1ZTpvcmlnaW5FeGVjdXRpb25Db250ZXh0OmV4ZWN1dGlvbkNvbnRleHQ6XSk6CisgICAg
ICAgICogYmluZGluZ3Mvb2JqYy9vYmpjX3V0aWxpdHkubW06CisgICAgICAgIChLSlM6OkJpbmRp
bmdzOjpjb252ZXJ0T2JqY1ZhbHVlVG9WYWx1ZSk6CisKIDIwMDYtMDctMTcgIERhcmluIEFkbGVy
ICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgICogQVBJL0pTQmFzZS5oOiBGaXggY29tbWVu
dCBmb3JtYXR0aW5nIHdoZXJlIHRoaW5ncyB1c2VkIHRvIGJlIGxpbmVkIHVwIGJ1dAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>9535</attachid>
            <date>2006-07-17 17:11:22 -0700</date>
            <delta_ts>2010-06-10 17:23:06 -0700</delta_ts>
            <desc>Revised changes for 9902</desc>
            <filename>bug-9902c.diff</filename>
            <type>text/plain</type>
            <size>4970</size>
            <attacher name="Dan Waylonis">waylonis</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NDkxKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMDYtMDctMTcgIHdheWxvbmlz
ICA8d2F5bG9uaXNAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKwkKKyAgICAgICAgQ2hhbmdlcyB0byBmaXg6CisgICAgICAgIGh0dHA6Ly9idWd6aWxs
YS5vcGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkwMgorICAgICAgICAqIGJpbmRpbmdz
L29iamMvV2ViU2NyaXB0T2JqZWN0Lm1tOiBBZGQgY2FzZSBmb3IgY29udmVydGluZyBqc051bGwg
dG8gTlNOdWxsCisgICAgICAgICgrW1dlYlNjcmlwdE9iamVjdCBfY29udmVydFZhbHVlVG9PYmpj
VmFsdWU6b3JpZ2luRXhlY3V0aW9uQ29udGV4dDpleGVjdXRpb25Db250ZXh0Ol0pOgorICAgICAg
ICAqIGJpbmRpbmdzL29iamMvb2JqY191dGlsaXR5Lm1tOiBBZGQgY2FzZSBmb3IgY29udmVydGlu
ZyBOU051bGwgdG8ganNOdWxsCisgICAgICAgIChLSlM6OkJpbmRpbmdzOjpjb252ZXJ0T2JqY1Zh
bHVlVG9WYWx1ZSk6CisKIDIwMDYtMDctMTcgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29t
PgogCiAgICAgICAgICogQVBJL0pTQmFzZS5oOiBGaXggY29tbWVudCBmb3JtYXR0aW5nIHdoZXJl
IHRoaW5ncyB1c2VkIHRvIGJlIGxpbmVkIHVwIGJ1dApJbmRleDogSmF2YVNjcmlwdENvcmUvYmlu
ZGluZ3Mvb2JqYy9XZWJTY3JpcHRPYmplY3QubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENv
cmUvYmluZGluZ3Mvb2JqYy9XZWJTY3JpcHRPYmplY3QubW0JKHJldmlzaW9uIDE1NDg4KQorKysg
SmF2YVNjcmlwdENvcmUvYmluZGluZ3Mvb2JqYy9XZWJTY3JpcHRPYmplY3QubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTQzMyw4ICs0MzMsMTEgQEAgc3RhdGljIExpc3QgbGlzdEZyb21OU0FycmF5KEV4
ZWNTdGF0ZSAqZQogICAgIGVsc2UgaWYgKHZhbHVlLT5pc1VuZGVmaW5lZCgpKQogICAgICAgICAv
LyBKUyBVbmRlZmluZWQgLS0+IFdlYlVuZGVmaW5lZAogICAgICAgICByZXR1cm4gW1dlYlVuZGVm
aW5lZCB1bmRlZmluZWRdOwotICAgIAotICAgIC8vIE90aGVyIHR5cGVzIChVbnNwZWNpZmllZFR5
cGUgYW5kIE51bGxUeXBlKSBjb252ZXJ0ZWQgdG8gMC4KKyAgICBlbHNlIGlmICh2YWx1ZS0+aXNO
dWxsKCkpCisgICAgICAgIC8vIEpTIE51bGwgLT4gTlNOdWxsCisgICAgICAgIHJldHVybiBbTlNO
dWxsIG51bGxdOworICAKKyAgICAvLyBPdGhlciB0eXBlcyAoZS5nLiwgVW5zcGVjaWZpZWRUeXBl
KSBjb252ZXJ0ZWQgdG8gMC4KICAgICByZXR1cm4gMDsKIH0KIApJbmRleDogSmF2YVNjcmlwdENv
cmUvYmluZGluZ3Mvb2JqYy9vYmpjX3V0aWxpdHkubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlw
dENvcmUvYmluZGluZ3Mvb2JqYy9vYmpjX3V0aWxpdHkubW0JKHJldmlzaW9uIDE1NDg4KQorKysg
SmF2YVNjcmlwdENvcmUvYmluZGluZ3Mvb2JqYy9vYmpjX3V0aWxpdHkubW0JKHdvcmtpbmcgY29w
eSkKQEAgLTkzLDYgKzkzLDcgQEAgYm9vbCBjb252ZXJ0SlNNZXRob2ROYW1lVG9PYmpjKGNvbnN0
IGNoYQogICAgIFN0cmluZyAgICAgICAgICBOU1N0cmluZwogICAgIHdyYXBwZXIgICAgICAgICBp
ZAogICAgIE9iamVjdCAgICAgICAgICBXZWJTY3JpcHRPYmplY3QKKyAgICBudWxsICAgICAgICAg
ICAgTlNOdWxsCiAgICAgW10sIG90aGVyICAgICAgIGV4Y2VwdGlvbgogCiAqLwpAQCAtMjMxLDcg
KzIzMiw5IEBAIEpTVmFsdWUgKmNvbnZlcnRPYmpjVmFsdWVUb1ZhbHVlIChFeGVjU3QKICAgICAg
ICAgICAgICAgICB9IGVsc2UgaWYgKFsqb2JqIGlzS2luZE9mQ2xhc3M6W1dlYlNjcmlwdE9iamVj
dCBjbGFzc11dKSB7CiAgICAgICAgICAgICAgICAgICAgIFdlYlNjcmlwdE9iamVjdCAqanNvYmpl
Y3QgPSAoV2ViU2NyaXB0T2JqZWN0ICopKm9iajsKICAgICAgICAgICAgICAgICAgICAgYVZhbHVl
ID0gW2pzb2JqZWN0IF9pbXBdOwotICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoKm9iaiA9PSAw
KSB7CisgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChbKm9iaiBpc0tpbmRPZkNsYXNzOltOU051
bGwgY2xhc3NdXSkgeworICAgICAgICAgICAgICAgICAgYVZhbHVlID0ganNOdWxsKCk7CisgICAg
ICAgICAgICAgICB9IGVsc2UgaWYgKCpvYmogPT0gMCkgewogICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4ganNVbmRlZmluZWQoKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewogCQkgICAgYVZh
bHVlID0gSW5zdGFuY2U6OmNyZWF0ZVJ1bnRpbWVPYmplY3QoSW5zdGFuY2U6Ok9iamVjdGl2ZUNM
YW5ndWFnZSwgKHZvaWQgKikqb2JqKTsKSW5kZXg6IExheW91dFRlc3RzL3BsdWdpbnMvYmluZGlu
Z3MtdGVzdC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGx1Z2lucy9i
aW5kaW5ncy10ZXN0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTU0ODgpCisrKyBMYXlvdXRUZXN0
cy9wbHVnaW5zL2JpbmRpbmdzLXRlc3QtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0y
LDYgKzIsMTQgQEAgQUxFUlQ6IHR5cGVvZihvYmpDUGx1Z2luKT1vYmplY3QKIEFMRVJUOiBvYmpD
UGx1Z2luKCk9VHlwZUVycm9yCiBBTEVSVDogdHlwZW9mKG9iakNQbHVnaW5GdW5jdGlvbik9ZnVu
Y3Rpb24KIEFMRVJUOiBvYmpDUGx1Z2luRnVuY3Rpb24oKT10ZXN0CitBTEVSVDogaGVsbG8gPSBo
ZWxsbyAoc2FtZSkKK0FMRVJUOiBzdHJpbmcgPSBzdHJpbmcgKHNhbWUpCitBTEVSVDogNDIgPSA0
MiAoc2FtZSkKK0FMRVJUOiBudW1iZXIgPSBudW1iZXIgKHNhbWUpCitBTEVSVDogbnVsbCA9IG51
bGwgKHNhbWUpCitBTEVSVDogb2JqZWN0ID0gb2JqZWN0IChzYW1lKQorQUxFUlQ6IG9uZSx0d28g
PSBvbmUsdHdvIChzYW1lKQorQUxFUlQ6IG9iamVjdCA9IG9iamVjdCAoc2FtZSkKIEFMRVJUOiB0
eXBlb2YoY1BsdWdpbik9ZnVuY3Rpb24KIEFMRVJUOiBjUGx1Z2luKCk9MQogQUxFUlQ6IHR5cGVv
ZihjUGx1Z2luKT1vYmplY3QKSW5kZXg6IExheW91dFRlc3RzL3BsdWdpbnMvYmluZGluZ3MtdGVz
dC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsdWdpbnMvYmluZGluZ3MtdGVzdC5o
dG1sCShyZXZpc2lvbiAxNTQ4OCkKKysrIExheW91dFRlc3RzL3BsdWdpbnMvYmluZGluZ3MtdGVz
dC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0zMiw2ICszMiwyMSBAQCBmdW5jdGlvbiBkb1Rlc3Qo
KQogICAgICAgICAgICAgcmVzdWx0ID0gZS5uYW1lOwogICAgICAgICB9CiAgICAgICAgIGFsZXJ0
KCJvYmpDUGx1Z2luRnVuY3Rpb24oKT0iICsgcmVzdWx0KTsKKworCQlmdW5jdGlvbiBlY2hvVGVz
dChhcmcpIHsKKwkJCXZhciBlY2hvID0gb2JqQ1BsdWdpbi5lY2hvKGFyZyk7CisJCQl2YXIgc2Ft
ZVZhbCA9IChhcmcgPT0gZWNobykgPyAic2FtZSIgOiAiZGlmZmVyZW50IjsKKwkJCXZhciBzYW1l
VHlwZSA9ICh0eXBlb2YoYXJnKSA9PSB0eXBlb2YoZWNobykpID8gInNhbWUiIDogImRpZmZlcmVu
dCI7CisJCQkKKwkJCWFsZXJ0KGFyZyArICIgPSAiICsgZWNobyArICIgKCIgKyBzYW1lVmFsICsg
IikiKTsKKwkJCWFsZXJ0KHR5cGVvZihhcmcpICsgIiA9ICIgKyB0eXBlb2YoZWNobykgKyAiICgi
ICsgc2FtZVR5cGUgKyAiKSIpOworCQl9CisgICAgICAgIAorICAgICAgICAvLyBUZXN0IHRoZSBl
Y2hvIGZ1bmN0aW9uCisgICAgICAgIGVjaG9UZXN0KCJoZWxsbyIpOworICAgICAgICBlY2hvVGVz
dCg0Mik7CisgICAgICAgIGVjaG9UZXN0KG51bGwpOworICAgICAgICBlY2hvVGVzdChuZXcgQXJy
YXkoIm9uZSIsICJ0d28iKSk7CiAgICAgfQogICAgIAogICAgIC8vIFRlc3QgdGhlIEMgcGx1Z2lu
CkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9PYmpDUGx1Z2luLm0KPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvT2JqQ1BsdWdpbi5tCShyZXZpc2lvbiAx
NTQ4OCkKKysrIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL09iakNQbHVnaW4ubQkod29ya2lu
ZyBjb3B5KQpAQCAtMTM1LDExICsxMzUsMTggQEAgc3RhdGljIEJPT0wgX2FsbG93c1NjcmlwdHNG
dWxsQWNjZXNzID0gTgogewogICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKHJlbW92ZUJy
aWRnZVJlc3RyaWN0aW9uczopKQogICAgICAgICByZXR1cm4gTk87CisKKyAgICBpZiAoYVNlbGVj
dG9yID09IEBzZWxlY3RvcihlY2hvOikpCisgICAgICAgIHJldHVybiBOTzsKKwogICAgIHJldHVy
biBZRVM7CiB9CiAKICsgKE5TU3RyaW5nICopd2ViU2NyaXB0TmFtZUZvclNlbGVjdG9yOihTRUwp
YVNlbGVjdG9yCiB7CisgICAgaWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0b3IoZWNobzopKQorICAg
ICAgICByZXR1cm4gQCJlY2hvIjsKKyAgCiAgICAgcmV0dXJuIG5pbDsKIH0KIApAQCAtMTU0LDQg
KzE2MSw4IEBAIHN0YXRpYyBCT09MIF9hbGxvd3NTY3JpcHRzRnVsbEFjY2VzcyA9IE4KICAgICBb
b2JqYyByZWxlYXNlXTsKIH0KIAorLSAoaWQpZWNobzooaWQpb2JqIHsKKyAgcmV0dXJuIG9iajsK
K30KKwogQGVuZAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>