<?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>40097</bug_id>
          
          <creation_ts>2010-06-02 18:57:02 -0700</creation_ts>
          <short_desc>Chromium NotificationPresenter tries to ref objects that are being destroyed</short_desc>
          <delta_ts>2010-06-17 02:29:38 -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>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Peter Kasting">pkasting</reporter>
          <assigned_to name="John Gregg">johnnyg</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>yael</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>233560</commentid>
    <comment_count>0</comment_count>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2010-06-02 18:57:02 -0700</bug_when>
    <thetext>After r60569 to fix bug 39998, Chromium code began consistently failing an ASSERT in RefCounted.  This is because NotificationPresenterImpl::notificationObjectDestroyed(), which is called with a Notification object that is being destroyed, tries to ref the object.  This is clearly wrong, but the code presumably used to not ASSERT due to other refcounting problems fixed by the aforementioned checkin.

I&apos;m going to make an emergency fix to simply do nothing in this function, since a large number of different Chromium tests are failing at the moment.  The right fix is presumably to move where this is called to be before the Notification is actually deleted, or perhaps to avoid refing the object here (although that seems perilous too).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>233561</commentid>
    <comment_count>1</comment_count>
      <attachid>57725</attachid>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2010-06-02 19:00:55 -0700</bug_when>
    <thetext>Created attachment 57725
Emergency fix as landed

Here&apos;s the fix I landed in r60590.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>233568</commentid>
    <comment_count>2</comment_count>
    <who name="Yael">yael</who>
    <bug_when>2010-06-02 19:20:13 -0700</bug_when>
    <thetext>Sorry for causing this trouble.
Please let me know if you are making changes to the Notifications design, because I am in the process of upstreaming the Qt implementation for notifications. thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>233928</commentid>
    <comment_count>3</comment_count>
      <attachid>57814</attachid>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2010-06-03 14:21:58 -0700</bug_when>
    <thetext>Created attachment 57814
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>233936</commentid>
    <comment_count>4</comment_count>
      <attachid>57816</attachid>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2010-06-03 14:53:12 -0700</bug_when>
    <thetext>Created attachment 57816
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>233992</commentid>
    <comment_count>5</comment_count>
    <who name="Yael">yael</who>
    <bug_when>2010-06-03 16:44:02 -0700</bug_when>
    <thetext>With the current code in WebKit, a notification object can outlive the page that created it. So you can navigate to another page, and the notification is still visible.
This change is going to caouse the notification object to be destroyed when navigating to another page. Is that change intentional?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>233995</commentid>
    <comment_count>6</comment_count>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2010-06-03 16:52:51 -0700</bug_when>
    <thetext>I don&apos;t see how the patch necessarily causes any change to the lifetime of the object. It depends on what the presenter does in notificationObjectDestroyed(), though. 

For example, if that function is {}, I think this patch is a no-op (outside of the chromium part)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>233996</commentid>
    <comment_count>7</comment_count>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2010-06-03 16:54:36 -0700</bug_when>
    <thetext>Perhaps notificationObjectDestroyed is a poor name for that function anyway.  The point is to inform the presenter not to call events on the Notification anymore even if it chooses to continue showing it.  

Maybe notificationDetached (or just contextDestroyed) would be a better name.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>233999</commentid>
    <comment_count>8</comment_count>
    <who name="Yael">yael</who>
    <bug_when>2010-06-03 17:03:53 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; I don&apos;t see how the patch necessarily causes any change to the lifetime of the object. It depends on what the presenter does in notificationObjectDestroyed(), though. 
&gt; 
&gt; For example, if that function is {}, I think this patch is a no-op (outside of the chromium part)

Thanks for the explanation.
I guess the difference in our approaches is that in Chrome you can continue to show a notification after the JS object was destroyed, but in my code, I did not allow for that. I&apos;ll have to see how to adjust.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237941</commentid>
    <comment_count>9</comment_count>
      <attachid>57816</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2010-06-14 11:35:52 -0700</bug_when>
    <thetext>Comment on attachment 57816
Patch

&gt; Index: WebCore/ChangeLog

&gt; +
&gt; +        No new tests. (OOPS!)

Needs explanation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237973</commentid>
    <comment_count>10</comment_count>
      <attachid>58683</attachid>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2010-06-14 12:09:51 -0700</bug_when>
    <thetext>Created attachment 58683
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238033</commentid>
    <comment_count>11</comment_count>
      <attachid>58683</attachid>
    <who name="Yael">yael</who>
    <bug_when>2010-06-14 14:02:31 -0700</bug_when>
    <thetext>Comment on attachment 58683
Patch

I have a couple of comments, even though I am not a reviewer :-)
&gt;  
&gt; +void Notification::contextDestroyed()
&gt; +{
&gt; +    if (m_presenter)
&gt; +        m_presenter-&gt;notificationObjectDestroyed(this);
&gt; +}
&gt;  

This should call the base class to set m_scriptExecutionObject=0.
It is possible for the Notification object to be deleted before contextDestroyed() is called, and in those cases you will end up not calling notificationObjectDestroyed() at all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238071</commentid>
    <comment_count>12</comment_count>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2010-06-14 15:12:44 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; (From update of attachment 58683 [details])
&gt; I have a couple of comments, even though I am not a reviewer :-)
&gt; &gt;  
&gt; &gt; +void Notification::contextDestroyed()
&gt; &gt; +{
&gt; &gt; +    if (m_presenter)
&gt; &gt; +        m_presenter-&gt;notificationObjectDestroyed(this);
&gt; &gt; +}
&gt; &gt;  
&gt; 
&gt; This should call the base class to set m_scriptExecutionObject=0.

Done.

&gt; It is possible for the Notification object to be deleted before contextDestroyed() is called, and in those cases you will end up not calling notificationObjectDestroyed() at all.

It&apos;s only necessary to call notificationObjectDestroyed() after calling show().  Are you talking about cases where the object is actually used in a script context, then deleted before contextDestroyed() is called, or other cases where it&apos;s deleted before being attached to a context?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238072</commentid>
    <comment_count>13</comment_count>
      <attachid>58708</attachid>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2010-06-14 15:14:31 -0700</bug_when>
    <thetext>Created attachment 58708
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239308</commentid>
    <comment_count>14</comment_count>
      <attachid>58708</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-17 02:29:33 -0700</bug_when>
    <thetext>Comment on attachment 58708
Patch

Clearing flags on attachment: 58708

Committed r61316: &lt;http://trac.webkit.org/changeset/61316&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239309</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-17 02:29:38 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>57725</attachid>
            <date>2010-06-02 19:00:55 -0700</date>
            <delta_ts>2010-06-03 14:21:53 -0700</delta_ts>
            <desc>Emergency fix as landed</desc>
            <filename>crash_fix</filename>
            <type>text/plain</type>
            <size>1612</size>
            <attacher name="Peter Kasting">pkasting</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwkocmV2aXNpb24gNjA1ODgpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDYtMDIgIFBldGVy
IEthc3RpbmcgIDxwa2FzdGluZ0Bnb29nbGUuY29tPgorCisgICAgICAgIFVucmV2aWV3ZWQsIGVt
ZXJnZW5jeSBmaXggZm9yIHRlc3QgY3Jhc2hlcyAodmVyYmFsIHIrIGJlZm9yZWhhbmQgZnJvbQor
ICAgICAgICBKb2huIEdyZWdnKS4KKworICAgICAgICBUZW1wb3JhcmlseSBtYWtlIG5vdGlmaWNh
dGlvbk9iamVjdERlc3Ryb3llZCgpIGEgbm8tb3AgdG8gYXZvaWQgYW4KKyAgICAgICAgQVNTRVJU
IGZhaWx1cmUuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTQwMDk3CisKKyAgICAgICAgKiBzcmMvTm90aWZpY2F0aW9uUHJlc2VudGVySW1wbC5jcHA6
CisgICAgICAgIChXZWJLaXQ6Ok5vdGlmaWNhdGlvblByZXNlbnRlckltcGw6Om5vdGlmaWNhdGlv
bk9iamVjdERlc3Ryb3llZCk6CisKIDIwMTAtMDYtMDIgIFN0ZXJsaW5nIFN3aWdhcnQgIDxzc3dp
Z2FydEBnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhdmlkIExldmluLgpJbmRl
eDogV2ViS2l0L2Nocm9taXVtL3NyYy9Ob3RpZmljYXRpb25QcmVzZW50ZXJJbXBsLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vc3JjL05vdGlmaWNhdGlvblByZXNlbnRlckltcGwu
Y3BwCShyZXZpc2lvbiA2MDU4MykKKysrIFdlYktpdC9jaHJvbWl1bS9zcmMvTm90aWZpY2F0aW9u
UHJlc2VudGVySW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg4LDcgKzg4LDEwIEBAIHZvaWQg
Tm90aWZpY2F0aW9uUHJlc2VudGVySW1wbDo6Y2FuY2VsKE4KIAogdm9pZCBOb3RpZmljYXRpb25Q
cmVzZW50ZXJJbXBsOjpub3RpZmljYXRpb25PYmplY3REZXN0cm95ZWQoTm90aWZpY2F0aW9uKiBu
b3RpZmljYXRpb24pCiB7Ci0gICAgbV9wcmVzZW50ZXItPm9iamVjdERlc3Ryb3llZChQYXNzUmVm
UHRyPE5vdGlmaWNhdGlvbj4obm90aWZpY2F0aW9uKSk7CisgICAgLy8gVE9ETyhwa2FzdGluZyk6
IFdlIGNhbm5vdCByZWYgYW4gb2JqZWN0IHRoYXQncyBiZWluZyBkZXN0cm95ZWQuICBFaXRoZXIK
KyAgICAvLyB0aGlzIGZ1bmN0aW9uIG5lZWRzIHRvIGJlIGNhbGxlZCBlYXJsaWVyIHRoYW4gaW4g
fk5vdGlmaWNhdGlvbigpLCBvciBpdAorICAgIC8vIG5lZWRzIHRvIG5vdCByZWYgdGhpcyBvYmpl
Y3QuCisgICAgLy9tX3ByZXNlbnRlci0+b2JqZWN0RGVzdHJveWVkKFBhc3NSZWZQdHI8Tm90aWZp
Y2F0aW9uPihub3RpZmljYXRpb24pKTsKIH0KIAogTm90aWZpY2F0aW9uUHJlc2VudGVyOjpQZXJt
aXNzaW9uIE5vdGlmaWNhdGlvblByZXNlbnRlckltcGw6OmNoZWNrUGVybWlzc2lvbihjb25zdCBL
VVJMJiBzb3VyY2VVUkwpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>57814</attachid>
            <date>2010-06-03 14:21:58 -0700</date>
            <delta_ts>2010-06-03 14:53:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-40097-20100603142157.patch</filename>
            <type>text/plain</type>
            <size>4674</size>
            <attacher name="John Gregg">johnnyg</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MDYzNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjAgQEAKKzIwMTAtMDYtMDMgIEpvaG4gR3JlZ2cgIDxqb2hubnlnQGdvb2dsZS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ2hy
b21pdW0gTm90aWZpY2F0aW9uUHJlc2VudGVyIHRyaWVzIHRvIHJlZiBvYmplY3RzIHRoYXQgYXJl
IGJlaW5nIGRlc3Ryb3llZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NDAwOTcKKworICAgICAgICBObyBuZXcgdGVzdHMuIChPT1BTISkKKworICAgICAg
ICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vdGlmaWNhdGlvbkNlbnRlckN1c3RvbS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpWOE5vdGlmaWNhdGlvbkNlbnRlcjo6Y3JlYXRlSFRNTE5vdGlmaWNh
dGlvbkNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlY4Tm90aWZpY2F0aW9uQ2VudGVyOjpj
cmVhdGVOb3RpZmljYXRpb25DYWxsYmFjayk6CisgICAgICAgICogbm90aWZpY2F0aW9ucy9Ob3Rp
ZmljYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uOjp+Tm90aWZpY2F0
aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbjo6Y29udGV4dERlc3Ryb3llZCk6
CisgICAgICAgICogbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaDoKKwogMjAxMC0wNi0wMiAg
R2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3VnaEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgT2xpdmVyIEh1bnQuCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OE5vdGlmaWNhdGlvbkNlbnRlckN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5k
aW5ncy92OC9jdXN0b20vVjhOb3RpZmljYXRpb25DZW50ZXJDdXN0b20uY3BwCShyZXZpc2lvbiA2
MDYzMCkKKysrIFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4Tm90aWZpY2F0aW9uQ2VudGVy
Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTgsNiArNTgsNyBAQCB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gVjhOb3RpZmljYXRpb25DZW50CiAgICAgaWYgKGVjKQogICAgICAgICByZXR1cm4g
dGhyb3dFcnJvcihlYyk7CiAKKyAgICBub3RpZmljYXRpb24tPnJlZigpOwogICAgIHJldHVybiB0
b1Y4KG5vdGlmaWNhdGlvbi5nZXQoKSk7CiB9CiAKQEAgLTcyLDYgKzczLDcgQEAgdjg6OkhhbmRs
ZTx2ODo6VmFsdWU+IFY4Tm90aWZpY2F0aW9uQ2VudAogICAgIGlmIChlYykKICAgICAgICAgcmV0
dXJuIHRocm93RXJyb3IoZWMpOwogCisgICAgbm90aWZpY2F0aW9uLT5yZWYoKTsKICAgICByZXR1
cm4gdG9WOChub3RpZmljYXRpb24uZ2V0KCkpOwogfQogCkluZGV4OiBXZWJDb3JlL25vdGlmaWNh
dGlvbnMvTm90aWZpY2F0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL25vdGlmaWNhdGlv
bnMvTm90aWZpY2F0aW9uLmNwcAkocmV2aXNpb24gNjA2MzApCisrKyBXZWJDb3JlL25vdGlmaWNh
dGlvbnMvTm90aWZpY2F0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODMsNyArODMsNiBAQCBO
b3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25zdCBOb3RpZmljCiAKIE5vdGlmaWNhdGlvbjo6
fk5vdGlmaWNhdGlvbigpIAogewotICAgIG1fcHJlc2VudGVyLT5ub3RpZmljYXRpb25PYmplY3RE
ZXN0cm95ZWQodGhpcyk7CiB9CiAKIHZvaWQgTm90aWZpY2F0aW9uOjpzaG93KCkgCkBAIC0xMDks
NiArMTA4LDExIEBAIEV2ZW50VGFyZ2V0RGF0YSogTm90aWZpY2F0aW9uOjplbnN1cmVFdmUKICAg
ICByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOwogfQogCit2b2lkIE5vdGlmaWNhdGlvbjo6Y29u
dGV4dERlc3Ryb3llZCgpCit7CisgICAgbV9wcmVzZW50ZXItPm5vdGlmaWNhdGlvbk9iamVjdERl
c3Ryb3llZCh0aGlzKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8g
RU5BQkxFKE5PVElGSUNBVElPTlMpCkluZGV4OiBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZp
Y2F0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlv
bi5oCShyZXZpc2lvbiA2MDYzMCkKKysrIFdlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRp
b24uaAkod29ya2luZyBjb3B5KQpAQCAtODQsNiArODQsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAgICAgICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpIGNvbnN0IHsgcmV0dXJuIEFjdGl2ZURPTU9iamVjdDo6c2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpOyB9CiAgICAgICAgIHZpcnR1YWwgTm90aWZpY2F0aW9uKiB0b05vdGlmaWNhdGlv
bigpIHsgcmV0dXJuIHRoaXM7IH0KIAorICAgICAgICAvLyBBY3RpdmVET01PYmplY3QgaW50ZXJm
YWNlCisgICAgICAgIHZpcnR1YWwgdm9pZCBjb250ZXh0RGVzdHJveWVkKCk7CisKICAgICBwcml2
YXRlOgogICAgICAgICBOb3RpZmljYXRpb24oY29uc3QgS1VSTCYsIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqLCBFeGNlcHRpb25Db2RlJiwgTm90aWZpY2F0aW9uUHJlc2VudGVyKik7CiAgICAgICAg
IE5vdGlmaWNhdGlvbihjb25zdCBOb3RpZmljYXRpb25Db250ZW50cyYsIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqLCBFeGNlcHRpb25Db2RlJiwgTm90aWZpY2F0aW9uUHJlc2VudGVyKik7CkluZGV4
OiBXZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9jaHJvbWl1
bS9DaGFuZ2VMb2cJKHJldmlzaW9uIDYwNjM1KQorKysgV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDEwLTA2LTAzICBKb2huIEdyZWdn
ICA8am9obm55Z0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFVuZG8gdGhlIGJ1aWxkIGZpeCB3aXRoIHRoZSBjb3JyZWN0IHBhdGNo
OiBDaHJvbWl1bSBOb3RpZmljYXRpb25QcmVzZW50ZXIKKyAgICAgICAgaXMgbm93IGluZm9ybWVk
IG9mIHRoZSBkZXN0cnVjdGlvbiBiZWZvcmUgaXQgYWN0dWFsbHkgaGFwcGVucywgc28gdGhpcwor
ICAgICAgICB1c2Ugb2YgdGhlIE5vdGlmaWNhdGlvbiBvYmplY3QgaXMgY29ycmVjdC4gCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDA5NworCisgICAg
ICAgICogc3JjL05vdGlmaWNhdGlvblByZXNlbnRlckltcGwuY3BwOgorICAgICAgICAoV2ViS2l0
OjpOb3RpZmljYXRpb25QcmVzZW50ZXJJbXBsOjpub3RpZmljYXRpb25PYmplY3REZXN0cm95ZWQp
OgorCiAyMDEwLTA2LTAzICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IFBhdmVsIEZlbGRtYW4uCkluZGV4OiBXZWJLaXQvY2hyb21p
dW0vc3JjL05vdGlmaWNhdGlvblByZXNlbnRlckltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktp
dC9jaHJvbWl1bS9zcmMvTm90aWZpY2F0aW9uUHJlc2VudGVySW1wbC5jcHAJKHJldmlzaW9uIDYw
NjMwKQorKysgV2ViS2l0L2Nocm9taXVtL3NyYy9Ob3RpZmljYXRpb25QcmVzZW50ZXJJbXBsLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtODgsMTAgKzg4LDcgQEAgdm9pZCBOb3RpZmljYXRpb25QcmVz
ZW50ZXJJbXBsOjpjYW5jZWwoTgogCiB2b2lkIE5vdGlmaWNhdGlvblByZXNlbnRlckltcGw6Om5v
dGlmaWNhdGlvbk9iamVjdERlc3Ryb3llZChOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikKIHsK
LSAgICAvLyBUT0RPKHBrYXN0aW5nKTogV2UgY2Fubm90IHJlZiBhbiBvYmplY3QgdGhhdCdzIGJl
aW5nIGRlc3Ryb3llZC4gIEVpdGhlcgotICAgIC8vIHRoaXMgZnVuY3Rpb24gbmVlZHMgdG8gYmUg
Y2FsbGVkIGVhcmxpZXIgdGhhbiBpbiB+Tm90aWZpY2F0aW9uKCksIG9yIGl0Ci0gICAgLy8gbmVl
ZHMgdG8gbm90IHJlZiB0aGlzIG9iamVjdC4KLSAgICAvL21fcHJlc2VudGVyLT5vYmplY3REZXN0
cm95ZWQoUGFzc1JlZlB0cjxOb3RpZmljYXRpb24+KG5vdGlmaWNhdGlvbikpOworICAgIG1fcHJl
c2VudGVyLT5vYmplY3REZXN0cm95ZWQoUGFzc1JlZlB0cjxOb3RpZmljYXRpb24+KG5vdGlmaWNh
dGlvbikpOwogfQogCiBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb24gTm90aWZpY2F0
aW9uUHJlc2VudGVySW1wbDo6Y2hlY2tQZXJtaXNzaW9uKGNvbnN0IEtVUkwmIHNvdXJjZVVSTCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>57816</attachid>
            <date>2010-06-03 14:53:12 -0700</date>
            <delta_ts>2010-06-14 12:09:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-40097-20100603145311.patch</filename>
            <type>text/plain</type>
            <size>4872</size>
            <attacher name="John Gregg">johnnyg</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MDYzNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTAtMDYtMDMgIEpvaG4gR3JlZ2cgIDxqb2hubnlnQGdvb2dsZS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTW92
ZSB0aGUgY2FsbCB0byB0aGUgbm90aWZpY2F0aW9uIHByZXNlbnRlciB0aGF0IGEgTm90aWZpY2F0
aW9uIGlzIGJlaW5nCisgICAgICAgIGRlc3Ryb3llZCBmcm9tIHRoZSBkZXN0cnVjdG9yIChub3Qg
c2FmZSkgdG8gdGhlIEFjdGl2ZURPTU9iamVjdDo6Y29udGV4dERlc3Ryb3llZAorICAgICAgICBt
ZXRob2QuCisKKyAgICAgICAgQWxzbyBmaXggdXAgYW4gaW5jb3JyZWN0IHJlZmVyZW5jZSBsb3Nz
IGluIHRoZSBWOCBiaW5kaW5ncyBjb2RlIGZvciBOb3RpZmljYXRpb25zLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDAwOTcKKworICAgICAgICBObyBu
ZXcgdGVzdHMuIChPT1BTISkKKworICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vdGlm
aWNhdGlvbkNlbnRlckN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOE5vdGlmaWNhdGlv
bkNlbnRlcjo6Y3JlYXRlSFRNTE5vdGlmaWNhdGlvbkNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNv
cmU6OlY4Tm90aWZpY2F0aW9uQ2VudGVyOjpjcmVhdGVOb3RpZmljYXRpb25DYWxsYmFjayk6Cisg
ICAgICAgICogbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Tm90aWZpY2F0aW9uOjp+Tm90aWZpY2F0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlm
aWNhdGlvbjo6Y29udGV4dERlc3Ryb3llZCk6CisgICAgICAgICogbm90aWZpY2F0aW9ucy9Ob3Rp
ZmljYXRpb24uaDoKKwogMjAxMC0wNi0wMiAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3Vn
aEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2xpdmVyIEh1bnQuCkluZGV4OiBX
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vdGlmaWNhdGlvbkNlbnRlckN1c3RvbS5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhOb3RpZmljYXRpb25D
ZW50ZXJDdXN0b20uY3BwCShyZXZpc2lvbiA2MDYzMCkKKysrIFdlYkNvcmUvYmluZGluZ3Mvdjgv
Y3VzdG9tL1Y4Tm90aWZpY2F0aW9uQ2VudGVyQ3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NTgsNiArNTgsNyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhOb3RpZmljYXRpb25DZW50CiAg
ICAgaWYgKGVjKQogICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlYyk7CiAKKyAgICBub3RpZmlj
YXRpb24tPnJlZigpOwogICAgIHJldHVybiB0b1Y4KG5vdGlmaWNhdGlvbi5nZXQoKSk7CiB9CiAK
QEAgLTcyLDYgKzczLDcgQEAgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IFY4Tm90aWZpY2F0aW9uQ2Vu
dAogICAgIGlmIChlYykKICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZWMpOwogCisgICAgbm90
aWZpY2F0aW9uLT5yZWYoKTsKICAgICByZXR1cm4gdG9WOChub3RpZmljYXRpb24uZ2V0KCkpOwog
fQogCkluZGV4OiBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcAkocmV2aXNpb24g
NjA2MzApCisrKyBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtODMsNyArODMsNiBAQCBOb3RpZmljYXRpb246Ok5vdGlmaWNhdGlvbihjb25z
dCBOb3RpZmljCiAKIE5vdGlmaWNhdGlvbjo6fk5vdGlmaWNhdGlvbigpIAogewotICAgIG1fcHJl
c2VudGVyLT5ub3RpZmljYXRpb25PYmplY3REZXN0cm95ZWQodGhpcyk7CiB9CiAKIHZvaWQgTm90
aWZpY2F0aW9uOjpzaG93KCkgCkBAIC0xMDksNiArMTA4LDExIEBAIEV2ZW50VGFyZ2V0RGF0YSog
Tm90aWZpY2F0aW9uOjplbnN1cmVFdmUKICAgICByZXR1cm4gJm1fZXZlbnRUYXJnZXREYXRhOwog
fQogCit2b2lkIE5vdGlmaWNhdGlvbjo6Y29udGV4dERlc3Ryb3llZCgpCit7CisgICAgbV9wcmVz
ZW50ZXItPm5vdGlmaWNhdGlvbk9iamVjdERlc3Ryb3llZCh0aGlzKTsKK30KKwogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKE5PVElGSUNBVElPTlMpCkluZGV4OiBX
ZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCShyZXZpc2lvbiA2MDYzMCkKKysrIFdlYkNv
cmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtODQsNiAr
ODQsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpIGNvbnN0IHsgcmV0dXJuIEFjdGl2
ZURPTU9iamVjdDo6c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOyB9CiAgICAgICAgIHZpcnR1YWwg
Tm90aWZpY2F0aW9uKiB0b05vdGlmaWNhdGlvbigpIHsgcmV0dXJuIHRoaXM7IH0KIAorICAgICAg
ICAvLyBBY3RpdmVET01PYmplY3QgaW50ZXJmYWNlCisgICAgICAgIHZpcnR1YWwgdm9pZCBjb250
ZXh0RGVzdHJveWVkKCk7CisKICAgICBwcml2YXRlOgogICAgICAgICBOb3RpZmljYXRpb24oY29u
c3QgS1VSTCYsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBFeGNlcHRpb25Db2RlJiwgTm90aWZp
Y2F0aW9uUHJlc2VudGVyKik7CiAgICAgICAgIE5vdGlmaWNhdGlvbihjb25zdCBOb3RpZmljYXRp
b25Db250ZW50cyYsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBFeGNlcHRpb25Db2RlJiwgTm90
aWZpY2F0aW9uUHJlc2VudGVyKik7CkluZGV4OiBXZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cJKHJldmlzaW9uIDYwNjM1KQor
KysgV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1
IEBACisyMDEwLTA2LTAzICBKb2huIEdyZWdnICA8am9obm55Z0Bnb29nbGUuY29tPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVuZG8gdGhlIGJ1aWxk
IGZpeCB3aXRoIHRoZSBjb3JyZWN0IHBhdGNoOiBDaHJvbWl1bSBOb3RpZmljYXRpb25QcmVzZW50
ZXIKKyAgICAgICAgaXMgbm93IGluZm9ybWVkIG9mIHRoZSBkZXN0cnVjdGlvbiBiZWZvcmUgaXQg
YWN0dWFsbHkgaGFwcGVucywgc28gdGhpcworICAgICAgICB1c2Ugb2YgdGhlIE5vdGlmaWNhdGlv
biBvYmplY3QgaXMgY29ycmVjdC4gCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD00MDA5NworCisgICAgICAgICogc3JjL05vdGlmaWNhdGlvblByZXNlbnRl
ckltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpOb3RpZmljYXRpb25QcmVzZW50ZXJJbXBsOjpu
b3RpZmljYXRpb25PYmplY3REZXN0cm95ZWQpOgorCiAyMDEwLTA2LTAzICBZdXJ5IFNlbWlraGF0
c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFBhdmVsIEZl
bGRtYW4uCkluZGV4OiBXZWJLaXQvY2hyb21pdW0vc3JjL05vdGlmaWNhdGlvblByZXNlbnRlcklt
cGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9jaHJvbWl1bS9zcmMvTm90aWZpY2F0aW9uUHJl
c2VudGVySW1wbC5jcHAJKHJldmlzaW9uIDYwNjMwKQorKysgV2ViS2l0L2Nocm9taXVtL3NyYy9O
b3RpZmljYXRpb25QcmVzZW50ZXJJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODgsMTAgKzg4
LDcgQEAgdm9pZCBOb3RpZmljYXRpb25QcmVzZW50ZXJJbXBsOjpjYW5jZWwoTgogCiB2b2lkIE5v
dGlmaWNhdGlvblByZXNlbnRlckltcGw6Om5vdGlmaWNhdGlvbk9iamVjdERlc3Ryb3llZChOb3Rp
ZmljYXRpb24qIG5vdGlmaWNhdGlvbikKIHsKLSAgICAvLyBUT0RPKHBrYXN0aW5nKTogV2UgY2Fu
bm90IHJlZiBhbiBvYmplY3QgdGhhdCdzIGJlaW5nIGRlc3Ryb3llZC4gIEVpdGhlcgotICAgIC8v
IHRoaXMgZnVuY3Rpb24gbmVlZHMgdG8gYmUgY2FsbGVkIGVhcmxpZXIgdGhhbiBpbiB+Tm90aWZp
Y2F0aW9uKCksIG9yIGl0Ci0gICAgLy8gbmVlZHMgdG8gbm90IHJlZiB0aGlzIG9iamVjdC4KLSAg
ICAvL21fcHJlc2VudGVyLT5vYmplY3REZXN0cm95ZWQoUGFzc1JlZlB0cjxOb3RpZmljYXRpb24+
KG5vdGlmaWNhdGlvbikpOworICAgIG1fcHJlc2VudGVyLT5vYmplY3REZXN0cm95ZWQoUGFzc1Jl
ZlB0cjxOb3RpZmljYXRpb24+KG5vdGlmaWNhdGlvbikpOwogfQogCiBOb3RpZmljYXRpb25QcmVz
ZW50ZXI6OlBlcm1pc3Npb24gTm90aWZpY2F0aW9uUHJlc2VudGVySW1wbDo6Y2hlY2tQZXJtaXNz
aW9uKGNvbnN0IEtVUkwmIHNvdXJjZVVSTCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58683</attachid>
            <date>2010-06-14 12:09:51 -0700</date>
            <delta_ts>2010-06-14 15:14:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-40097-20100614120950.patch</filename>
            <type>text/plain</type>
            <size>4800</size>
            <attacher name="John Gregg">johnnyg</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MTEyOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTAtMDYtMDMgIEpvaG4gR3JlZ2cgIDxqb2hubnlnQGdvb2dsZS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTW92
ZSB0aGUgY2FsbCB0byB0aGUgbm90aWZpY2F0aW9uIHByZXNlbnRlciB0aGF0IGEgTm90aWZpY2F0
aW9uIGlzIGJlaW5nCisgICAgICAgIGRlc3Ryb3llZCBmcm9tIHRoZSBkZXN0cnVjdG9yIChub3Qg
c2FmZSkgdG8gdGhlIEFjdGl2ZURPTU9iamVjdDo6Y29udGV4dERlc3Ryb3llZAorICAgICAgICBt
ZXRob2QuCisKKyAgICAgICAgQWxzbyBmaXggdXAgYW4gaW5jb3JyZWN0IHJlZmVyZW5jZSBsb3Nz
IGluIHRoZSBWOCBiaW5kaW5ncyBjb2RlIGZvciBOb3RpZmljYXRpb25zLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDAwOTcKKworICAgICAgICBObyBu
ZXcgdGVzdHM7IGNvZGUgcGF0aHMgYXJlIHdlbGwtY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4K
KworICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vdGlmaWNhdGlvbkNlbnRlckN1c3Rv
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOE5vdGlmaWNhdGlvbkNlbnRlcjo6Y3JlYXRlSFRN
TE5vdGlmaWNhdGlvbkNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlY4Tm90aWZpY2F0aW9u
Q2VudGVyOjpjcmVhdGVOb3RpZmljYXRpb25DYWxsYmFjayk6CisgICAgICAgICogbm90aWZpY2F0
aW9ucy9Ob3RpZmljYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uOjp+
Tm90aWZpY2F0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbjo6Y29udGV4dERl
c3Ryb3llZCk6CisgICAgICAgICogbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaDoKKwogMjAx
MC0wNi0xNCAgQ2hhbmcgU2h1ICA8Y2hhbmcuc2h1QG5va2lhLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4KSW5kZXg6IFdlYkNvcmUvYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4Tm90aWZpY2F0aW9uQ2VudGVyQ3VzdG9tLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vdGlmaWNhdGlvbkNlbnRlckN1c3RvbS5j
cHAJKHJldmlzaW9uIDYxMTI5KQorKysgV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhOb3Rp
ZmljYXRpb25DZW50ZXJDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01OCw2ICs1OCw3IEBA
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOE5vdGlmaWNhdGlvbkNlbnQKICAgICBpZiAoZWMpCiAg
ICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVjKTsKIAorICAgIG5vdGlmaWNhdGlvbi0+cmVmKCk7
CiAgICAgcmV0dXJuIHRvVjgobm90aWZpY2F0aW9uLmdldCgpKTsKIH0KIApAQCAtNzIsNiArNzMs
NyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhOb3RpZmljYXRpb25DZW50CiAgICAgaWYgKGVj
KQogICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlYyk7CiAKKyAgICBub3RpZmljYXRpb24tPnJl
ZigpOwogICAgIHJldHVybiB0b1Y4KG5vdGlmaWNhdGlvbi5nZXQoKSk7CiB9CiAKSW5kZXg6IFdl
YkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwCShyZXZpc2lvbiA2MTEyOSkKKysrIFdl
YkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05
MCw4ICs5MCw2IEBAIE5vdGlmaWNhdGlvbjo6fk5vdGlmaWNhdGlvbigpIAogICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgY2FuY2VsKCk7CiAgICAgfQotICAgIGlmIChtX3By
ZXNlbnRlcikKLSAgICAgICAgbV9wcmVzZW50ZXItPm5vdGlmaWNhdGlvbk9iamVjdERlc3Ryb3ll
ZCh0aGlzKTsKIH0KIAogdm9pZCBOb3RpZmljYXRpb246OnNob3coKSAKQEAgLTE0MCw2ICsxMzgs
MTEgQEAgRXZlbnRUYXJnZXREYXRhKiBOb3RpZmljYXRpb246OmVuc3VyZUV2ZQogICAgIHJldHVy
biAmbV9ldmVudFRhcmdldERhdGE7CiB9CiAKK3ZvaWQgTm90aWZpY2F0aW9uOjpjb250ZXh0RGVz
dHJveWVkKCkKK3sKKyAgICBpZiAobV9wcmVzZW50ZXIpCisgICAgICAgIG1fcHJlc2VudGVyLT5u
b3RpZmljYXRpb25PYmplY3REZXN0cm95ZWQodGhpcyk7Cit9CiAKIHZvaWQgTm90aWZpY2F0aW9u
OjpzdGFydExvYWRpbmcoKQogewpJbmRleDogV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNh
dGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24u
aAkocmV2aXNpb24gNjExMjkpCisrKyBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9u
LmgJKHdvcmtpbmcgY29weSkKQEAgLTg3LDYgKzg3LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgICAgICB2aXJ0dWFsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKSBjb25zdCB7IHJldHVybiBBY3RpdmVET01PYmplY3Q6OnNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQoKTsgfQogICAgICAgICB2aXJ0dWFsIE5vdGlmaWNhdGlvbiogdG9Ob3RpZmljYXRpb24o
KSB7IHJldHVybiB0aGlzOyB9CiAKKyAgICAgICAgLy8gQWN0aXZlRE9NT2JqZWN0IGludGVyZmFj
ZQorICAgICAgICB2aXJ0dWFsIHZvaWQgY29udGV4dERlc3Ryb3llZCgpOworCiAgICAgICAgIHZv
aWQgc3RvcExvYWRpbmcoKTsKIAogICAgICAgICBTaGFyZWRCdWZmZXIqIGljb25EYXRhKCkgeyBy
ZXR1cm4gbV9pY29uRGF0YS5nZXQoKTsgfQpJbmRleDogV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiA2MTEy
OSkKKysrIFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyAr
MSwxNSBAQAorMjAxMC0wNi0wMyAgSm9obiBHcmVnZyAgPGpvaG5ueWdAZ29vZ2xlLmNvbT4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVbmRvIHRoZSBi
dWlsZCBmaXggd2l0aCB0aGUgY29ycmVjdCBwYXRjaDogQ2hyb21pdW0gTm90aWZpY2F0aW9uUHJl
c2VudGVyCisgICAgICAgIGlzIG5vdyBpbmZvcm1lZCBvZiB0aGUgZGVzdHJ1Y3Rpb24gYmVmb3Jl
IGl0IGFjdHVhbGx5IGhhcHBlbnMsIHNvIHRoaXMKKyAgICAgICAgdXNlIG9mIHRoZSBOb3RpZmlj
YXRpb24gb2JqZWN0IGlzIGNvcnJlY3QuIAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NDAwOTcKKworICAgICAgICAqIHNyYy9Ob3RpZmljYXRpb25QcmVz
ZW50ZXJJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6Tm90aWZpY2F0aW9uUHJlc2VudGVySW1w
bDo6bm90aWZpY2F0aW9uT2JqZWN0RGVzdHJveWVkKToKKwogMjAxMC0wNi0xNCAgSmVyZW15IE9y
bG93ICA8am9ybG93QGNocm9taXVtLm9yZz4KIAogICAgICAgICBCdWlsZCBmaXguCkluZGV4OiBX
ZWJLaXQvY2hyb21pdW0vc3JjL05vdGlmaWNhdGlvblByZXNlbnRlckltcGwuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYktpdC9jaHJvbWl1bS9zcmMvTm90aWZpY2F0aW9uUHJlc2VudGVySW1wbC5jcHAJ
KHJldmlzaW9uIDYxMTI5KQorKysgV2ViS2l0L2Nocm9taXVtL3NyYy9Ob3RpZmljYXRpb25QcmVz
ZW50ZXJJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODgsMTAgKzg4LDcgQEAgdm9pZCBOb3Rp
ZmljYXRpb25QcmVzZW50ZXJJbXBsOjpjYW5jZWwoTgogCiB2b2lkIE5vdGlmaWNhdGlvblByZXNl
bnRlckltcGw6Om5vdGlmaWNhdGlvbk9iamVjdERlc3Ryb3llZChOb3RpZmljYXRpb24qIG5vdGlm
aWNhdGlvbikKIHsKLSAgICAvLyBUT0RPKHBrYXN0aW5nKTogV2UgY2Fubm90IHJlZiBhbiBvYmpl
Y3QgdGhhdCdzIGJlaW5nIGRlc3Ryb3llZC4gIEVpdGhlcgotICAgIC8vIHRoaXMgZnVuY3Rpb24g
bmVlZHMgdG8gYmUgY2FsbGVkIGVhcmxpZXIgdGhhbiBpbiB+Tm90aWZpY2F0aW9uKCksIG9yIGl0
Ci0gICAgLy8gbmVlZHMgdG8gbm90IHJlZiB0aGlzIG9iamVjdC4KLSAgICAvL21fcHJlc2VudGVy
LT5vYmplY3REZXN0cm95ZWQoUGFzc1JlZlB0cjxOb3RpZmljYXRpb24+KG5vdGlmaWNhdGlvbikp
OworICAgIG1fcHJlc2VudGVyLT5vYmplY3REZXN0cm95ZWQoUGFzc1JlZlB0cjxOb3RpZmljYXRp
b24+KG5vdGlmaWNhdGlvbikpOwogfQogCiBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Np
b24gTm90aWZpY2F0aW9uUHJlc2VudGVySW1wbDo6Y2hlY2tQZXJtaXNzaW9uKGNvbnN0IEtVUkwm
IHNvdXJjZVVSTCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58708</attachid>
            <date>2010-06-14 15:14:31 -0700</date>
            <delta_ts>2010-06-17 02:29:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-40097-20100614151430.patch</filename>
            <type>text/plain</type>
            <size>4842</size>
            <attacher name="John Gregg">johnnyg</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MTEyOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTAtMDYtMDMgIEpvaG4gR3JlZ2cgIDxqb2hubnlnQGdvb2dsZS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTW92
ZSB0aGUgY2FsbCB0byB0aGUgbm90aWZpY2F0aW9uIHByZXNlbnRlciB0aGF0IGEgTm90aWZpY2F0
aW9uIGlzIGJlaW5nCisgICAgICAgIGRlc3Ryb3llZCBmcm9tIHRoZSBkZXN0cnVjdG9yIChub3Qg
c2FmZSkgdG8gdGhlIEFjdGl2ZURPTU9iamVjdDo6Y29udGV4dERlc3Ryb3llZAorICAgICAgICBt
ZXRob2QuCisKKyAgICAgICAgQWxzbyBmaXggdXAgYW4gaW5jb3JyZWN0IHJlZmVyZW5jZSBsb3Nz
IGluIHRoZSBWOCBiaW5kaW5ncyBjb2RlIGZvciBOb3RpZmljYXRpb25zLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDAwOTcKKworICAgICAgICBObyBu
ZXcgdGVzdHM7IGNvZGUgcGF0aHMgYXJlIHdlbGwtY292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4K
KworICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vdGlmaWNhdGlvbkNlbnRlckN1c3Rv
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOE5vdGlmaWNhdGlvbkNlbnRlcjo6Y3JlYXRlSFRN
TE5vdGlmaWNhdGlvbkNhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlY4Tm90aWZpY2F0aW9u
Q2VudGVyOjpjcmVhdGVOb3RpZmljYXRpb25DYWxsYmFjayk6CisgICAgICAgICogbm90aWZpY2F0
aW9ucy9Ob3RpZmljYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uOjp+
Tm90aWZpY2F0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbjo6Y29udGV4dERl
c3Ryb3llZCk6CisgICAgICAgICogbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaDoKKwogMjAx
MC0wNi0xNCAgQ2hhbmcgU2h1ICA8Y2hhbmcuc2h1QG5va2lhLmNvbT4KIAogICAgICAgICBSZXZp
ZXdlZCBieSBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbi4KSW5kZXg6IFdlYkNvcmUvYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4Tm90aWZpY2F0aW9uQ2VudGVyQ3VzdG9tLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vdGlmaWNhdGlvbkNlbnRlckN1c3RvbS5j
cHAJKHJldmlzaW9uIDYxMTI5KQorKysgV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhOb3Rp
ZmljYXRpb25DZW50ZXJDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01OCw2ICs1OCw3IEBA
IHY4OjpIYW5kbGU8djg6OlZhbHVlPiBWOE5vdGlmaWNhdGlvbkNlbnQKICAgICBpZiAoZWMpCiAg
ICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVjKTsKIAorICAgIG5vdGlmaWNhdGlvbi0+cmVmKCk7
CiAgICAgcmV0dXJuIHRvVjgobm90aWZpY2F0aW9uLmdldCgpKTsKIH0KIApAQCAtNzIsNiArNzMs
NyBAQCB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gVjhOb3RpZmljYXRpb25DZW50CiAgICAgaWYgKGVj
KQogICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlYyk7CiAKKyAgICBub3RpZmljYXRpb24tPnJl
ZigpOwogICAgIHJldHVybiB0b1Y4KG5vdGlmaWNhdGlvbi5nZXQoKSk7CiB9CiAKSW5kZXg6IFdl
YkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwCShyZXZpc2lvbiA2MTEyOSkKKysrIFdl
YkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05
MCw4ICs5MCw2IEBAIE5vdGlmaWNhdGlvbjo6fk5vdGlmaWNhdGlvbigpIAogICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgY2FuY2VsKCk7CiAgICAgfQotICAgIGlmIChtX3By
ZXNlbnRlcikKLSAgICAgICAgbV9wcmVzZW50ZXItPm5vdGlmaWNhdGlvbk9iamVjdERlc3Ryb3ll
ZCh0aGlzKTsKIH0KIAogdm9pZCBOb3RpZmljYXRpb246OnNob3coKSAKQEAgLTE0MCw2ICsxMzgs
MTIgQEAgRXZlbnRUYXJnZXREYXRhKiBOb3RpZmljYXRpb246OmVuc3VyZUV2ZQogICAgIHJldHVy
biAmbV9ldmVudFRhcmdldERhdGE7CiB9CiAKK3ZvaWQgTm90aWZpY2F0aW9uOjpjb250ZXh0RGVz
dHJveWVkKCkKK3sKKyAgICBBY3RpdmVET01PYmplY3Q6OmNvbnRleHREZXN0cm95ZWQoKTsKKyAg
ICBpZiAobV9wcmVzZW50ZXIpCisgICAgICAgIG1fcHJlc2VudGVyLT5ub3RpZmljYXRpb25PYmpl
Y3REZXN0cm95ZWQodGhpcyk7Cit9CiAKIHZvaWQgTm90aWZpY2F0aW9uOjpzdGFydExvYWRpbmco
KQogewpJbmRleDogV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbi5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaAkocmV2aXNpb24gNjEx
MjkpCisrKyBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTg3LDYgKzg3LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFs
IFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSBjb25zdCB7
IHJldHVybiBBY3RpdmVET01PYmplY3Q6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsgfQogICAg
ICAgICB2aXJ0dWFsIE5vdGlmaWNhdGlvbiogdG9Ob3RpZmljYXRpb24oKSB7IHJldHVybiB0aGlz
OyB9CiAKKyAgICAgICAgLy8gQWN0aXZlRE9NT2JqZWN0IGludGVyZmFjZQorICAgICAgICB2aXJ0
dWFsIHZvaWQgY29udGV4dERlc3Ryb3llZCgpOworCiAgICAgICAgIHZvaWQgc3RvcExvYWRpbmco
KTsKIAogICAgICAgICBTaGFyZWRCdWZmZXIqIGljb25EYXRhKCkgeyByZXR1cm4gbV9pY29uRGF0
YS5nZXQoKTsgfQpJbmRleDogV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiA2MTEyOSkKKysrIFdlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAxMC0w
Ni0wMyAgSm9obiBHcmVnZyAgPGpvaG5ueWdAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVbmRvIHRoZSBidWlsZCBmaXggd2l0aCB0
aGUgY29ycmVjdCBwYXRjaDogQ2hyb21pdW0gTm90aWZpY2F0aW9uUHJlc2VudGVyCisgICAgICAg
IGlzIG5vdyBpbmZvcm1lZCBvZiB0aGUgZGVzdHJ1Y3Rpb24gYmVmb3JlIGl0IGFjdHVhbGx5IGhh
cHBlbnMsIHNvIHRoaXMKKyAgICAgICAgdXNlIG9mIHRoZSBOb3RpZmljYXRpb24gb2JqZWN0IGlz
IGNvcnJlY3QuIAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NDAwOTcKKworICAgICAgICAqIHNyYy9Ob3RpZmljYXRpb25QcmVzZW50ZXJJbXBsLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6Tm90aWZpY2F0aW9uUHJlc2VudGVySW1wbDo6bm90aWZpY2F0aW9u
T2JqZWN0RGVzdHJveWVkKToKKwogMjAxMC0wNi0xNCAgSmVyZW15IE9ybG93ICA8am9ybG93QGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBCdWlsZCBmaXguCkluZGV4OiBXZWJLaXQvY2hyb21pdW0v
c3JjL05vdGlmaWNhdGlvblByZXNlbnRlckltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9j
aHJvbWl1bS9zcmMvTm90aWZpY2F0aW9uUHJlc2VudGVySW1wbC5jcHAJKHJldmlzaW9uIDYxMTI5
KQorKysgV2ViS2l0L2Nocm9taXVtL3NyYy9Ob3RpZmljYXRpb25QcmVzZW50ZXJJbXBsLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtODgsMTAgKzg4LDcgQEAgdm9pZCBOb3RpZmljYXRpb25QcmVzZW50
ZXJJbXBsOjpjYW5jZWwoTgogCiB2b2lkIE5vdGlmaWNhdGlvblByZXNlbnRlckltcGw6Om5vdGlm
aWNhdGlvbk9iamVjdERlc3Ryb3llZChOb3RpZmljYXRpb24qIG5vdGlmaWNhdGlvbikKIHsKLSAg
ICAvLyBUT0RPKHBrYXN0aW5nKTogV2UgY2Fubm90IHJlZiBhbiBvYmplY3QgdGhhdCdzIGJlaW5n
IGRlc3Ryb3llZC4gIEVpdGhlcgotICAgIC8vIHRoaXMgZnVuY3Rpb24gbmVlZHMgdG8gYmUgY2Fs
bGVkIGVhcmxpZXIgdGhhbiBpbiB+Tm90aWZpY2F0aW9uKCksIG9yIGl0Ci0gICAgLy8gbmVlZHMg
dG8gbm90IHJlZiB0aGlzIG9iamVjdC4KLSAgICAvL21fcHJlc2VudGVyLT5vYmplY3REZXN0cm95
ZWQoUGFzc1JlZlB0cjxOb3RpZmljYXRpb24+KG5vdGlmaWNhdGlvbikpOworICAgIG1fcHJlc2Vu
dGVyLT5vYmplY3REZXN0cm95ZWQoUGFzc1JlZlB0cjxOb3RpZmljYXRpb24+KG5vdGlmaWNhdGlv
bikpOwogfQogCiBOb3RpZmljYXRpb25QcmVzZW50ZXI6OlBlcm1pc3Npb24gTm90aWZpY2F0aW9u
UHJlc2VudGVySW1wbDo6Y2hlY2tQZXJtaXNzaW9uKGNvbnN0IEtVUkwmIHNvdXJjZVVSTCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>