<?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>72038</bug_id>
          
          <creation_ts>2011-11-10 11:29:47 -0800</creation_ts>
          <short_desc>Lazily start DRT instances in NRWT</short_desc>
          <delta_ts>2011-11-11 09:41:44 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>60605</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tony Chang">tony</reporter>
          <assigned_to name="Tony Chang">tony</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>ojan</cc>
    
    <cc>pnormand</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>500071</commentid>
    <comment_count>0</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 11:29:47 -0800</bug_when>
    <thetext>Lazily start DRT instances in NRWT</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500073</commentid>
    <comment_count>1</comment_count>
      <attachid>114531</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 11:30:49 -0800</bug_when>
    <thetext>Created attachment 114531
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500077</commentid>
    <comment_count>2</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 11:36:03 -0800</bug_when>
    <thetext>Comments 24 through 26 on bug 60605 explain why I&apos;m making this change.

https://bugs.webkit.org/show_bug.cgi?id=60605#c24</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500101</commentid>
    <comment_count>3</comment_count>
      <attachid>114531</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-11-10 12:09:25 -0800</bug_when>
    <thetext>Comment on attachment 114531
Patch

I think we should have a way to test this.  I like the change though.  There is no need for us to have started these eagerly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500104</commentid>
    <comment_count>4</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 12:11:32 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 114531 [details])
&gt; I think we should have a way to test this.  I like the change though.  There is no need for us to have started these eagerly.

Ok, I will try to come up with something . . .</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500127</commentid>
    <comment_count>5</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-11-10 12:25:06 -0800</bug_when>
    <thetext>This change seems reasonable to me, but please see comment #27 on bug 60605 for another potential way to solve the problem there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500169</commentid>
    <comment_count>6</comment_count>
      <attachid>114549</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 12:57:07 -0800</bug_when>
    <thetext>Created attachment 114549
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500170</commentid>
    <comment_count>7</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 12:58:21 -0800</bug_when>
    <thetext>Here&apos;s a unittest, but it&apos;s kind of pointless.  Eric, I&apos;m not sure exactly what behavior you want me to be testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500171</commentid>
    <comment_count>8</comment_count>
      <attachid>114549</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-11-10 13:01:49 -0800</bug_when>
    <thetext>Comment on attachment 114549
Patch

Well, the lazy part is the interesting part, but it looks like that _run_test_in_another_thread is one big function so it looks difficult to test that this is lazy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500176</commentid>
    <comment_count>9</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-11-10 13:04:08 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; Here&apos;s a unittest, but it&apos;s kind of pointless. 

I&apos;m not sure what that test is even testing. 

If I was going to write a test for this, I would test that calling create_worker() didn&apos;t actually start a DRT instance, and I would put that test in webkitpy/layout_tests/port/port_testcase.py. 

That said, I&apos;m not sure that I think this change needs an additional test, either, since you&apos;re simply subtracting a method from the Port API; verifying that the existing tests all still pass seems sufficient to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500177</commentid>
    <comment_count>10</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 13:04:34 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 114549 [details])
&gt; Well, the lazy part is the interesting part, but it looks like that _run_test_in_another_thread is one big function so it looks difficult to test that this is lazy.

I don&apos;t think it&apos;s important that we lazily start DRT instances.  If some port needed to start it early (say, in the Driver&apos;s __init__ method), that seems OK.  That is, nothing really depends on this lazy behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500180</commentid>
    <comment_count>11</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 13:05:32 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #7)
&gt; &gt; Here&apos;s a unittest, but it&apos;s kind of pointless. 
&gt; 
&gt; I&apos;m not sure what that test is even testing. 

Yup, I&apos;m not sure what you guys want me to test :)

 
&gt; If I was going to write a test for this, I would test that calling create_worker() didn&apos;t actually start a DRT instance, and I would put that test in webkitpy/layout_tests/port/port_testcase.py. 

create_worker() didn&apos;t start a DRT instance before this change either.  I&apos;m not sure what that would be testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500187</commentid>
    <comment_count>12</comment_count>
      <attachid>114549</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-11-10 13:07:37 -0800</bug_when>
    <thetext>Comment on attachment 114549
Patch

LGTM.  I don&apos;t think your test adds anythign and should jsut be removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500188</commentid>
    <comment_count>13</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 13:08:24 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 114549 [details])
&gt; LGTM.  I don&apos;t think your test adds anythign and should jsut be removed.

Ok, I&apos;ll land the first patch without the test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500191</commentid>
    <comment_count>14</comment_count>
      <attachid>114552</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 13:10:32 -0800</bug_when>
    <thetext>Created attachment 114552
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500196</commentid>
    <comment_count>15</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-11-10 13:13:55 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; create_worker() didn&apos;t start a DRT instance before this change either.  I&apos;m not sure what that would be testing.

Well, given that start() is gone, it would come close to ensuring that the only way a DRT could be started would be by calling run_test. I&apos;m not saying that it would be a great test ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500345</commentid>
    <comment_count>16</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2011-11-10 15:31:54 -0800</bug_when>
    <thetext>Committed r99907: &lt;http://trac.webkit.org/changeset/99907&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500577</commentid>
    <comment_count>17</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2011-11-11 01:04:46 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; Committed r99907: &lt;http://trac.webkit.org/changeset/99907&gt;

That one broke GTK...
Landed http://trac.webkit.org/changeset/99935</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500855</commentid>
    <comment_count>18</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-11-11 09:41:44 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; (In reply to comment #16)
&gt; &gt; Committed r99907: &lt;http://trac.webkit.org/changeset/99907&gt;
&gt; 
&gt; That one broke GTK...
&gt; Landed http://trac.webkit.org/changeset/99935

We need a unittest for this, or it will break again.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114531</attachid>
            <date>2011-11-10 11:30:49 -0800</date>
            <delta_ts>2011-11-10 12:57:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-72038-20111110113103.patch</filename>
            <type>text/plain</type>
            <size>6116</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTk4NzcKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCAyNzQ3Nzk1YjE1Yzc2ZDAwOGZiMzdlYWU4NjZiMDBlOGRj
NjQzZGRhLi44NjY2NTZmNWY1OGFhMjlkYWRjZjFkYzdkY2VlYmYyYThkY2Y5Yjc3IDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTEtMTEtMTAgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAg
ICBMYXppbHkgc3RhcnQgRFJUIGluc3RhbmNlcyBpbiBOUldUCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MjAzOAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEp1c3QgYSByZWZhY3RvcmluZywgbm8gbmV3IHRl
c3RzLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxl
cnMvd29ya2VyLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Bv
cnQvY2hyb21pdW0ucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cG9ydC9kcnlydW4ucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cG9ydC90ZXN0LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Bv
cnQvd2Via2l0LnB5OgorCiAyMDExLTExLTEwICBCYWxhenMgS2VsZW1lbiAgPGtiYWxhenNAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBbUXRdIFgxMSBwbHVnaW5zIG5lZWQgdG8gYmUgcmV3b3JrZWQg
Zm9yIFF0NQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
Y29udHJvbGxlcnMvd29ya2VyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvY29udHJvbGxlcnMvd29ya2VyLnB5CmluZGV4IDRjZmI3ZTc0NTVmMzgxM2ZmMzhhMzI3YjUx
Yzc1ZjU3NTc4NzQ3MmEuLmFiOGFhNzU2ZDQ5NTkxZWZlY2U0MmU3NmY0MTFiMzZjMDE2ZTAyYzAg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xs
ZXJzL3dvcmtlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9j
b250cm9sbGVycy93b3JrZXIucHkKQEAgLTIwNSw3ICsyMDUsNiBAQCBjbGFzcyBXb3JrZXIobWFu
YWdlcl93b3JrZXJfYnJva2VyLkFic3RyYWN0V29ya2VyKToKICAgICAgICAgd29ya2VyID0gc2Vs
ZgogCiAgICAgICAgIGRyaXZlciA9IHNlbGYuX3BvcnQuY3JlYXRlX2RyaXZlcihzZWxmLl93b3Jr
ZXJfbnVtYmVyKQotICAgICAgICBkcml2ZXIuc3RhcnQoKQogCiAgICAgICAgIGNsYXNzIFNpbmds
ZVRlc3RUaHJlYWQodGhyZWFkaW5nLlRocmVhZCk6CiAgICAgICAgICAgICBkZWYgX19pbml0X18o
c2VsZik6CkBAIC0yNDYsNyArMjQ1LDYgQEAgY2xhc3MgV29ya2VyKG1hbmFnZXJfd29ya2VyX2Jy
b2tlci5BYnN0cmFjdFdvcmtlcik6CiAgICAgICAgICIiIgogICAgICAgICBpZiBub3Qgc2VsZi5f
ZHJpdmVyIG9yIHNlbGYuX2RyaXZlci5wb2xsKCkgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICBz
ZWxmLl9kcml2ZXIgPSBzZWxmLl9wb3J0LmNyZWF0ZV9kcml2ZXIoc2VsZi5fd29ya2VyX251bWJl
cikKLSAgICAgICAgICAgIHNlbGYuX2RyaXZlci5zdGFydCgpCiAgICAgICAgIHJldHVybiBzZWxm
LnJ1bl9zaW5nbGVfdGVzdChzZWxmLl9kcml2ZXIsIHRlc3RfaW5wdXQpCiAKICAgICBkZWYgcnVu
X3NpbmdsZV90ZXN0KHNlbGYsIGRyaXZlciwgdGVzdF9pbnB1dCk6CmRpZmYgLS1naXQgYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtLnB5IGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bS5weQppbmRleCAxOWQ4
ZTllZGYzYmRkZDczNDMzOTk0ZTA5N2FjZDY5NTI4ZTAyOGYwLi43ZjQ5ZGY2MmY3MjBhNWQ2MmU1
MmM5MzUyNDczMGU1MGY3MWU0ZDQzIDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW0ucHkKQEAgLTQ0OCw3ICs0NDgsNyBAQCBjbGFz
cyBDaHJvbWl1bURyaXZlcihEcml2ZXIpOgogICAgICAgICBjbWQuZXh0ZW5kKHNlbGYuX3dyYXBw
ZXJfb3B0aW9ucygpKQogICAgICAgICByZXR1cm4gY21kCiAKLSAgICBkZWYgc3RhcnQoc2VsZik6
CisgICAgZGVmIF9zdGFydChzZWxmKToKICAgICAgICAgYXNzZXJ0IG5vdCBzZWxmLl9wcm9jCiAg
ICAgICAgICMgRklYTUU6IFRoaXMgc2hvdWxkIHVzZSBTZXJ2ZXJQcm9jZXNzIGxpa2UgV2ViS2l0
RHJpdmVyIGRvZXMuCiAgICAgICAgICMgRklYTUU6IFdlIHNob3VsZCBiZSByZWFkaW5nIHN0ZGVy
ciBhbmQgc3Rkb3V0IHNlcGFyYXRlbHkgbGlrZSBob3cgV2ViS2l0RHJpdmVyIGRvZXMuCkBAIC01
MTAsNiArNTEwLDkgQEAgY2xhc3MgQ2hyb21pdW1Ecml2ZXIoRHJpdmVyKToKICAgICAgICAgICAg
IHNlbGYuX3BvcnQuX2ZpbGVzeXN0ZW0ucmVtb3ZlKHNlbGYuX2ltYWdlX3BhdGgpCiAKICAgICBk
ZWYgcnVuX3Rlc3Qoc2VsZiwgZHJpdmVyX2lucHV0KToKKyAgICAgICAgaWYgbm90IHNlbGYuX3By
b2M6CisgICAgICAgICAgICBzZWxmLl9zdGFydCgpCisKICAgICAgICAgb3V0cHV0ID0gW10KICAg
ICAgICAgZXJyb3IgPSBbXQogICAgICAgICBjcmFzaCA9IEZhbHNlCkBAIC01MjMsNyArNTI2LDcg
QEAgY2xhc3MgQ2hyb21pdW1Ecml2ZXIoRHJpdmVyKToKIAogICAgICAgICB1cmkgPSBzZWxmLl9w
b3J0LnRlc3RfdG9fdXJpKGRyaXZlcl9pbnB1dC50ZXN0X25hbWUpCiAgICAgICAgIGNtZCA9IHNl
bGYuX3Rlc3Rfc2hlbGxfY29tbWFuZCh1cmksIGRyaXZlcl9pbnB1dC50aW1lb3V0LCBkcml2ZXJf
aW5wdXQuaW1hZ2VfaGFzaCkKLSAgICAgICAgKGxpbmUsIGNyYXNoKSA9IHNlbGYuX3dyaXRlX2Nv
bW1hbmRfYW5kX3JlYWRfbGluZShpbnB1dD1jbWQpCisgICAgICAgIGxpbmUsIGNyYXNoID0gc2Vs
Zi5fd3JpdGVfY29tbWFuZF9hbmRfcmVhZF9saW5lKGlucHV0PWNtZCkKIAogICAgICAgICB3aGls
ZSBub3QgY3Jhc2ggYW5kIGxpbmUucnN0cmlwKCkgIT0gIiNFT0YiOgogICAgICAgICAgICAgIyBN
YWtlIHN1cmUgd2UgaGF2ZW4ndCBjcmFzaGVkLgpAQCAtNTY1LDcgKzU2OCw3IEBAIGNsYXNzIENo
cm9taXVtRHJpdmVyKERyaXZlcik6CiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAg
IGVycm9yLmFwcGVuZChsaW5lKQogCi0gICAgICAgICAgICAobGluZSwgY3Jhc2gpID0gc2VsZi5f
d3JpdGVfY29tbWFuZF9hbmRfcmVhZF9saW5lKGlucHV0PU5vbmUpCisgICAgICAgICAgICBsaW5l
LCBjcmFzaCA9IHNlbGYuX3dyaXRlX2NvbW1hbmRfYW5kX3JlYWRfbGluZShpbnB1dD1Ob25lKQog
CiAgICAgICAgIHJ1bl90aW1lID0gdGltZS50aW1lKCkgLSBzdGFydF90aW1lCiAgICAgICAgIG91
dHB1dF9pbWFnZSA9IHNlbGYuX291dHB1dF9pbWFnZV93aXRoX3JldHJ5KCkKZGlmZiAtLWdpdCBh
L1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZHJ5cnVuLnB5IGIvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9kcnlydW4ucHkKaW5kZXggOGYz
MzVlMjIxYTZhNWE1YWQ4ZDAwMjQyNGVlNzIyYTc2OWQyZTQyNi4uY2EzYmFkZTNkOGU4ZmRlYzk4
NDhhYjhjNWFhZjgxOTljNTUyYTcwMSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvcG9ydC9kcnlydW4ucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvcG9ydC9kcnlydW4ucHkKQEAgLTEzNCw4ICsxMzQsNSBAQCBjbGFzcyBE
cnlydW5Ecml2ZXIoRHJpdmVyKToKICAgICAgICAgICAgIGF1ZGlvID0gc2VsZi5fcG9ydC5leHBl
Y3RlZF9hdWRpbyhkcml2ZXJfaW5wdXQudGVzdF9uYW1lKQogICAgICAgICByZXR1cm4gRHJpdmVy
T3V0cHV0KHRleHQsIGltYWdlLCBjaGVja3N1bSwgYXVkaW8sIGNyYXNoPUZhbHNlLCB0ZXN0X3Rp
bWU9dGltZS50aW1lKCkgLSBzdGFydF90aW1lLCB0aW1lb3V0PUZhbHNlLCBlcnJvcj0nJykKIAot
ICAgIGRlZiBzdGFydChzZWxmKToKLSAgICAgICAgcGFzcwotCiAgICAgZGVmIHN0b3Aoc2VsZik6
CiAgICAgICAgIHBhc3MKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3BvcnQvdGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvdGVzdC5weQppbmRleCBhNGFmYTIyZTI1N2M3NjViMWVhNTY1YjM1ZDYzOTU4YjM5YTJl
Zjc2Li43ZTVkOTU2ZWU0ZDQxMGIwNDhiNzM0YzMzNDg2ZmE4ZDhhMTkwNzhkIDEwMDY0NAotLS0g
YS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3Rlc3QucHkKKysrIGIv
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC90ZXN0LnB5CkBAIC01MDks
OCArNTA5LDUgQEAgY2xhc3MgVGVzdERyaXZlcihEcml2ZXIpOgogICAgICAgICAgICAgdGVzdC5h
Y3R1YWxfY2hlY2tzdW0sIGF1ZGlvLCBjcmFzaD10ZXN0LmNyYXNoLAogICAgICAgICAgICAgdGVz
dF90aW1lPXRpbWUudGltZSgpIC0gc3RhcnRfdGltZSwgdGltZW91dD10ZXN0LnRpbWVvdXQsIGVy
cm9yPXRlc3QuZXJyb3IpCiAKLSAgICBkZWYgc3RhcnQoc2VsZik6Ci0gICAgICAgIHBhc3MKLQog
ICAgIGRlZiBzdG9wKHNlbGYpOgogICAgICAgICBwYXNzCmRpZmYgLS1naXQgYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dlYmtpdC5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5CmluZGV4IDRkMjUxOTU1MTFmNjNj
NzJmNDY1NGY5MWU1NmUwMmIwNThhZDgzZmYuLjk1NjExYjRhMmYxZTNmNzFkY2NjZWIxMWE1YjJm
MzVlYmI4MmQyMTggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvd2Via2l0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvd2Via2l0LnB5CkBAIC00NTUsNiArNDU1LDcgQEAgY2xhc3MgV2ViS2l0RHJpdmVy
KERyaXZlcik6CiAgICAgICAgICMgaW5zdGVhZCBzY29wZSB0aGVzZSBsb2NhbGx5IGluIHJ1bl90
ZXN0LgogICAgICAgICBzZWxmLmVycm9yX2Zyb21fdGVzdCA9IHN0cigpCiAgICAgICAgIHNlbGYu
ZXJyX3NlZW5fZW9mID0gRmFsc2UKKyAgICAgICAgc2VsZi5fc2VydmVyX3Byb2Nlc3MgPSBOb25l
CiAKIAogICAgICMgRklYTUU6IFRoaXMgbWF5IGJlIHVuc2FmZSwgYXMgcHl0aG9uIGRvZXMgbm90
IGd1YXJlbnRlZSBhbnkgb3JkZXJpbmcgb2YgX19kZWxfXyBjYWxscwpAQCAtNDc5LDcgKzQ4MCw3
IEBAIGNsYXNzIFdlYktpdERyaXZlcihEcml2ZXIpOgogICAgICAgICBjbWQuYXBwZW5kKCctJykK
ICAgICAgICAgcmV0dXJuIGNtZAogCi0gICAgZGVmIHN0YXJ0KHNlbGYpOgorICAgIGRlZiBfc3Rh
cnQoc2VsZik6CiAgICAgICAgIHNlcnZlcl9uYW1lID0gc2VsZi5fcG9ydC5kcml2ZXJfbmFtZSgp
CiAgICAgICAgIGVudmlyb25tZW50ID0gc2VsZi5fcG9ydC5zZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2
ZXIoc2VydmVyX25hbWUpCiAgICAgICAgIGVudmlyb25tZW50WydEWUxEX0ZSQU1FV09SS19QQVRI
J10gPSBzZWxmLl9wb3J0Ll9idWlsZF9wYXRoKCkKQEAgLTU0MCw2ICs1NDEsOCBAQCBjbGFzcyBX
ZWJLaXREcml2ZXIoRHJpdmVyKToKICAgICAgICAgcmV0dXJuIChOb25lLCBibG9jay5jb250ZW50
X2hhc2gpCiAKICAgICBkZWYgcnVuX3Rlc3Qoc2VsZiwgZHJpdmVyX2lucHV0KToKKyAgICAgICAg
aWYgbm90IHNlbGYuX3NlcnZlcl9wcm9jZXNzOgorICAgICAgICAgICAgc2VsZi5fc3RhcnQoKQog
ICAgICAgICBzZWxmLmVycm9yX2Zyb21fdGVzdCA9IHN0cigpCiAgICAgICAgIHNlbGYuZXJyX3Nl
ZW5fZW9mID0gRmFsc2UKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114549</attachid>
            <date>2011-11-10 12:57:07 -0800</date>
            <delta_ts>2011-11-10 13:10:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-72038-20111110125721.patch</filename>
            <type>text/plain</type>
            <size>9849</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTk4ODQKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCAyNzQ3Nzk1YjE1Yzc2ZDAwOGZiMzdlYWU4NjZiMDBlOGRj
NjQzZGRhLi4zNmQyYjI3MDlkZWJjNTE5N2NjZTAxMTgxYzk4YTJkYjU3NzUwMmIzIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTEtMTEtMTAgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAg
ICBMYXppbHkgc3RhcnQgRFJUIGluc3RhbmNlcyBpbiBOUldUCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MjAzOAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvY29udHJvbGxlcnMvd29ya2VyLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3dvcmtlcl91bml0dGVzdC5weTogQWRkZWQuCisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bS5weToKKyAgICAg
ICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2RyaXZlci5weToKKyAgICAg
ICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2RyeXJ1bi5weToKKyAgICAg
ICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3Rlc3QucHk6CisgICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQucHk6CisKIDIwMTEt
MTEtMTAgIEJhbGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgogCiAgICAgICAgIFtR
dF0gWDExIHBsdWdpbnMgbmVlZCB0byBiZSByZXdvcmtlZCBmb3IgUXQ1CmRpZmYgLS1naXQgYS9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy93b3JrZXIucHkg
Yi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250cm9sbGVycy93b3JrZXIu
cHkKaW5kZXggNGNmYjdlNzQ1NWYzODEzZmYzOGEzMjdiNTFjNzVmNTc1Nzg3NDcyYS4uYWI4YWE3
NTZkNDk1OTFlZmVjZTQyZTc2ZjQxMWIzNmMwMTZlMDJjMCAxMDA2NDQKLS0tIGEvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMvd29ya2VyLnB5CisrKyBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3dvcmtlci5weQpA
QCAtMjA1LDcgKzIwNSw2IEBAIGNsYXNzIFdvcmtlcihtYW5hZ2VyX3dvcmtlcl9icm9rZXIuQWJz
dHJhY3RXb3JrZXIpOgogICAgICAgICB3b3JrZXIgPSBzZWxmCiAKICAgICAgICAgZHJpdmVyID0g
c2VsZi5fcG9ydC5jcmVhdGVfZHJpdmVyKHNlbGYuX3dvcmtlcl9udW1iZXIpCi0gICAgICAgIGRy
aXZlci5zdGFydCgpCiAKICAgICAgICAgY2xhc3MgU2luZ2xlVGVzdFRocmVhZCh0aHJlYWRpbmcu
VGhyZWFkKToKICAgICAgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmKToKQEAgLTI0Niw3ICsyNDUs
NiBAQCBjbGFzcyBXb3JrZXIobWFuYWdlcl93b3JrZXJfYnJva2VyLkFic3RyYWN0V29ya2VyKToK
ICAgICAgICAgIiIiCiAgICAgICAgIGlmIG5vdCBzZWxmLl9kcml2ZXIgb3Igc2VsZi5fZHJpdmVy
LnBvbGwoKSBpcyBub3QgTm9uZToKICAgICAgICAgICAgIHNlbGYuX2RyaXZlciA9IHNlbGYuX3Bv
cnQuY3JlYXRlX2RyaXZlcihzZWxmLl93b3JrZXJfbnVtYmVyKQotICAgICAgICAgICAgc2VsZi5f
ZHJpdmVyLnN0YXJ0KCkKICAgICAgICAgcmV0dXJuIHNlbGYucnVuX3NpbmdsZV90ZXN0KHNlbGYu
X2RyaXZlciwgdGVzdF9pbnB1dCkKIAogICAgIGRlZiBydW5fc2luZ2xlX3Rlc3Qoc2VsZiwgZHJp
dmVyLCB0ZXN0X2lucHV0KToKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3dvcmtlcl91bml0dGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJzL3dvcmtlcl91bml0dGVzdC5weQpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41OTRmMzliOWY0YjMwZjE3OTYzZDVhYTlkZWQzZTZkZmU0NzFlNDU5Ci0tLSAvZGV2
L251bGwKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxl
cnMvd29ya2VyX3VuaXR0ZXN0LnB5CkBAIC0wLDAgKzEsNDcgQEAKKyMhL3Vzci9iaW4vcHl0aG9u
CisjIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
IworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorIyBtZXQ6CisjCisjICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisjIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyMgICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZQorIyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisjIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyMgZGlzdHJpYnV0aW9u
LgorIyAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMg
b2YgaXRzCisjIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZCBmcm9tCisjIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBw
cmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisjCisjIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyMgIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyMg
TElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SCisjIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisjIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorIyBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisj
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLAorIyBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyMgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorIyAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyMgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKworaW1wb3J0IHVuaXR0ZXN0CisKK2Zyb20gd2Via2l0cHkudGhp
cmRwYXJ0eS5tb2NrIGltcG9ydCBNb2NrCisKK2Zyb20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLmNv
bnRyb2xsZXJzLndvcmtlciBpbXBvcnQgV29ya2VyCitmcm9tIHdlYmtpdHB5LmxheW91dF90ZXN0
cy5wb3J0LmRyaXZlciBpbXBvcnQgRHJpdmVySW5wdXQKK2Zyb20gd2Via2l0cHkubGF5b3V0X3Rl
c3RzLnBvcnQudGVzdCBpbXBvcnQgVGVzdFBvcnQKKworCitjbGFzcyBXb3JrZXJUZXN0cyh1bml0
dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHRlc3RfbGF6eV9zdGFydChzZWxmKToKKyAgICAgICAg
b3B0aW9ucyA9IE1vY2soKQorICAgICAgICBvcHRpb25zLmJhdGNoX3NpemUgPSAwCisgICAgICAg
IHcgPSBXb3JrZXIoTm9uZSwgMCwgb3B0aW9ucykKKyAgICAgICAgdy5zYWZlX2luaXQoVGVzdFBv
cnQoKSkKKyAgICAgICAgdy5fcnVuX3Rlc3RfaW5fdGhpc190aHJlYWQoRHJpdmVySW5wdXQoJ3Bh
c3Nlcy90ZXh0Lmh0bWwnLCAxMDAwMCwgTm9uZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh3
Ll9kcml2ZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh3Ll9kcml2ZXIuaGFzX3J1bikKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21p
dW0ucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVt
LnB5CmluZGV4IDE5ZDhlOWVkZjNiZGRkNzM0MzM5OTRlMDk3YWNkNjk1MjhlMDI4ZjAuLjdmNDlk
ZjYyZjcyMGE1ZDYyZTUyYzkzNTI0NzMwZTUwZjcxZTRkNDMgMTAwNzU1Ci0tLSBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW0ucHkKKysrIGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bS5weQpAQCAtNDQ4LDcg
KzQ0OCw3IEBAIGNsYXNzIENocm9taXVtRHJpdmVyKERyaXZlcik6CiAgICAgICAgIGNtZC5leHRl
bmQoc2VsZi5fd3JhcHBlcl9vcHRpb25zKCkpCiAgICAgICAgIHJldHVybiBjbWQKIAotICAgIGRl
ZiBzdGFydChzZWxmKToKKyAgICBkZWYgX3N0YXJ0KHNlbGYpOgogICAgICAgICBhc3NlcnQgbm90
IHNlbGYuX3Byb2MKICAgICAgICAgIyBGSVhNRTogVGhpcyBzaG91bGQgdXNlIFNlcnZlclByb2Nl
c3MgbGlrZSBXZWJLaXREcml2ZXIgZG9lcy4KICAgICAgICAgIyBGSVhNRTogV2Ugc2hvdWxkIGJl
IHJlYWRpbmcgc3RkZXJyIGFuZCBzdGRvdXQgc2VwYXJhdGVseSBsaWtlIGhvdyBXZWJLaXREcml2
ZXIgZG9lcy4KQEAgLTUxMCw2ICs1MTAsOSBAQCBjbGFzcyBDaHJvbWl1bURyaXZlcihEcml2ZXIp
OgogICAgICAgICAgICAgc2VsZi5fcG9ydC5fZmlsZXN5c3RlbS5yZW1vdmUoc2VsZi5faW1hZ2Vf
cGF0aCkKIAogICAgIGRlZiBydW5fdGVzdChzZWxmLCBkcml2ZXJfaW5wdXQpOgorICAgICAgICBp
ZiBub3Qgc2VsZi5fcHJvYzoKKyAgICAgICAgICAgIHNlbGYuX3N0YXJ0KCkKKwogICAgICAgICBv
dXRwdXQgPSBbXQogICAgICAgICBlcnJvciA9IFtdCiAgICAgICAgIGNyYXNoID0gRmFsc2UKQEAg
LTUyMyw3ICs1MjYsNyBAQCBjbGFzcyBDaHJvbWl1bURyaXZlcihEcml2ZXIpOgogCiAgICAgICAg
IHVyaSA9IHNlbGYuX3BvcnQudGVzdF90b191cmkoZHJpdmVyX2lucHV0LnRlc3RfbmFtZSkKICAg
ICAgICAgY21kID0gc2VsZi5fdGVzdF9zaGVsbF9jb21tYW5kKHVyaSwgZHJpdmVyX2lucHV0LnRp
bWVvdXQsIGRyaXZlcl9pbnB1dC5pbWFnZV9oYXNoKQotICAgICAgICAobGluZSwgY3Jhc2gpID0g
c2VsZi5fd3JpdGVfY29tbWFuZF9hbmRfcmVhZF9saW5lKGlucHV0PWNtZCkKKyAgICAgICAgbGlu
ZSwgY3Jhc2ggPSBzZWxmLl93cml0ZV9jb21tYW5kX2FuZF9yZWFkX2xpbmUoaW5wdXQ9Y21kKQog
CiAgICAgICAgIHdoaWxlIG5vdCBjcmFzaCBhbmQgbGluZS5yc3RyaXAoKSAhPSAiI0VPRiI6CiAg
ICAgICAgICAgICAjIE1ha2Ugc3VyZSB3ZSBoYXZlbid0IGNyYXNoZWQuCkBAIC01NjUsNyArNTY4
LDcgQEAgY2xhc3MgQ2hyb21pdW1Ecml2ZXIoRHJpdmVyKToKICAgICAgICAgICAgIGVsc2U6CiAg
ICAgICAgICAgICAgICAgZXJyb3IuYXBwZW5kKGxpbmUpCiAKLSAgICAgICAgICAgIChsaW5lLCBj
cmFzaCkgPSBzZWxmLl93cml0ZV9jb21tYW5kX2FuZF9yZWFkX2xpbmUoaW5wdXQ9Tm9uZSkKKyAg
ICAgICAgICAgIGxpbmUsIGNyYXNoID0gc2VsZi5fd3JpdGVfY29tbWFuZF9hbmRfcmVhZF9saW5l
KGlucHV0PU5vbmUpCiAKICAgICAgICAgcnVuX3RpbWUgPSB0aW1lLnRpbWUoKSAtIHN0YXJ0X3Rp
bWUKICAgICAgICAgb3V0cHV0X2ltYWdlID0gc2VsZi5fb3V0cHV0X2ltYWdlX3dpdGhfcmV0cnko
KQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9k
cml2ZXIucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2RyaXZl
ci5weQppbmRleCBiNzQyZGFiZjEyNmExNzUxNDcxODVhNTY2ZTY1NTk1MmRiYTdkN2MyLi40ODJj
ZDY2NzQ3N2VjYmNjZjU0ZDc2ZTYxOTA0NTExYTcyNGJmZTgxIDEwMDY0NAotLS0gYS9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2RyaXZlci5weQorKysgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2RyaXZlci5weQpAQCAtMzQsNiArMzQs
NyBAQCBjbGFzcyBEcml2ZXJJbnB1dChvYmplY3QpOgogICAgICAgICBzZWxmLnRlc3RfbmFtZSA9
IHRlc3RfbmFtZQogICAgICAgICBzZWxmLnRpbWVvdXQgPSB0aW1lb3V0ICAjIGluIG1zCiAgICAg
ICAgIHNlbGYuaW1hZ2VfaGFzaCA9IGltYWdlX2hhc2gKKyAgICAgICAgc2VsZi5yZWZfZmlsZSA9
IE5vbmUKIAogCiBjbGFzcyBEcml2ZXJPdXRwdXQob2JqZWN0KToKZGlmZiAtLWdpdCBhL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZHJ5cnVuLnB5IGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9kcnlydW4ucHkKaW5kZXggOGYzMzVlMjIx
YTZhNWE1YWQ4ZDAwMjQyNGVlNzIyYTc2OWQyZTQyNi4uY2EzYmFkZTNkOGU4ZmRlYzk4NDhhYjhj
NWFhZjgxOTljNTUyYTcwMSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC9kcnlydW4ucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC9kcnlydW4ucHkKQEAgLTEzNCw4ICsxMzQsNSBAQCBjbGFzcyBEcnlydW5E
cml2ZXIoRHJpdmVyKToKICAgICAgICAgICAgIGF1ZGlvID0gc2VsZi5fcG9ydC5leHBlY3RlZF9h
dWRpbyhkcml2ZXJfaW5wdXQudGVzdF9uYW1lKQogICAgICAgICByZXR1cm4gRHJpdmVyT3V0cHV0
KHRleHQsIGltYWdlLCBjaGVja3N1bSwgYXVkaW8sIGNyYXNoPUZhbHNlLCB0ZXN0X3RpbWU9dGlt
ZS50aW1lKCkgLSBzdGFydF90aW1lLCB0aW1lb3V0PUZhbHNlLCBlcnJvcj0nJykKIAotICAgIGRl
ZiBzdGFydChzZWxmKToKLSAgICAgICAgcGFzcwotCiAgICAgZGVmIHN0b3Aoc2VsZik6CiAgICAg
ICAgIHBhc3MKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvdGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQv
dGVzdC5weQppbmRleCBhNGFmYTIyZTI1N2M3NjViMWVhNTY1YjM1ZDYzOTU4YjM5YTJlZjc2Li41
YjJhZDMxMjg3YzFiOWY0NjU3NmYyZjM5YjRiOTg2Mzc4MDNmNmU4IDEwMDY0NAotLS0gYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3Rlc3QucHkKKysrIGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC90ZXN0LnB5CkBAIC00ODUsNiArNDg1
LDggQEAgY2xhc3MgVGVzdFBvcnQoUG9ydCk6CiBjbGFzcyBUZXN0RHJpdmVyKERyaXZlcik6CiAg
ICAgIiIiVGVzdC9EdW1teSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgRHVtcFJlbmRlclRyZWUgaW50
ZXJmYWNlLiIiIgogCisgICAgaGFzX3J1biA9IEZhbHNlCisKICAgICBkZWYgY21kX2xpbmUoc2Vs
Zik6CiAgICAgICAgIHJldHVybiBbc2VsZi5fcG9ydC5fcGF0aF90b19kcml2ZXIoKV0gKyBzZWxm
Ll9wb3J0LmdldF9vcHRpb24oJ2FkZGl0aW9uYWxfZHJ0X2ZsYWcnLCBbXSkKIApAQCAtNDkyLDYg
KzQ5NCw4IEBAIGNsYXNzIFRlc3REcml2ZXIoRHJpdmVyKToKICAgICAgICAgcmV0dXJuIFRydWUK
IAogICAgIGRlZiBydW5fdGVzdChzZWxmLCB0ZXN0X2lucHV0KToKKyAgICAgICAgc2VsZi5oYXNf
cnVuID0gVHJ1ZQorCiAgICAgICAgIHN0YXJ0X3RpbWUgPSB0aW1lLnRpbWUoKQogICAgICAgICB0
ZXN0X25hbWUgPSB0ZXN0X2lucHV0LnRlc3RfbmFtZQogICAgICAgICB0ZXN0ID0gc2VsZi5fcG9y
dC5fdGVzdHNbdGVzdF9uYW1lXQpAQCAtNTA5LDggKzUxMyw1IEBAIGNsYXNzIFRlc3REcml2ZXIo
RHJpdmVyKToKICAgICAgICAgICAgIHRlc3QuYWN0dWFsX2NoZWNrc3VtLCBhdWRpbywgY3Jhc2g9
dGVzdC5jcmFzaCwKICAgICAgICAgICAgIHRlc3RfdGltZT10aW1lLnRpbWUoKSAtIHN0YXJ0X3Rp
bWUsIHRpbWVvdXQ9dGVzdC50aW1lb3V0LCBlcnJvcj10ZXN0LmVycm9yKQogCi0gICAgZGVmIHN0
YXJ0KHNlbGYpOgotICAgICAgICBwYXNzCi0KICAgICBkZWYgc3RvcChzZWxmKToKICAgICAgICAg
cGFzcwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC93ZWJraXQucHkgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dl
YmtpdC5weQppbmRleCA0ZDI1MTk1NTExZjYzYzcyZjQ2NTRmOTFlNTZlMDJiMDU4YWQ4M2ZmLi45
NTYxMWI0YTJmMWUzZjcxZGNjY2ViMTFhNWIyZjM1ZWJiODJkMjE4IDEwMDY0NAotLS0gYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dlYmtpdC5weQorKysgYi9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dlYmtpdC5weQpAQCAtNDU1LDYg
KzQ1NSw3IEBAIGNsYXNzIFdlYktpdERyaXZlcihEcml2ZXIpOgogICAgICAgICAjIGluc3RlYWQg
c2NvcGUgdGhlc2UgbG9jYWxseSBpbiBydW5fdGVzdC4KICAgICAgICAgc2VsZi5lcnJvcl9mcm9t
X3Rlc3QgPSBzdHIoKQogICAgICAgICBzZWxmLmVycl9zZWVuX2VvZiA9IEZhbHNlCisgICAgICAg
IHNlbGYuX3NlcnZlcl9wcm9jZXNzID0gTm9uZQogCiAKICAgICAjIEZJWE1FOiBUaGlzIG1heSBi
ZSB1bnNhZmUsIGFzIHB5dGhvbiBkb2VzIG5vdCBndWFyZW50ZWUgYW55IG9yZGVyaW5nIG9mIF9f
ZGVsX18gY2FsbHMKQEAgLTQ3OSw3ICs0ODAsNyBAQCBjbGFzcyBXZWJLaXREcml2ZXIoRHJpdmVy
KToKICAgICAgICAgY21kLmFwcGVuZCgnLScpCiAgICAgICAgIHJldHVybiBjbWQKIAotICAgIGRl
ZiBzdGFydChzZWxmKToKKyAgICBkZWYgX3N0YXJ0KHNlbGYpOgogICAgICAgICBzZXJ2ZXJfbmFt
ZSA9IHNlbGYuX3BvcnQuZHJpdmVyX25hbWUoKQogICAgICAgICBlbnZpcm9ubWVudCA9IHNlbGYu
X3BvcnQuc2V0dXBfZW52aXJvbl9mb3Jfc2VydmVyKHNlcnZlcl9uYW1lKQogICAgICAgICBlbnZp
cm9ubWVudFsnRFlMRF9GUkFNRVdPUktfUEFUSCddID0gc2VsZi5fcG9ydC5fYnVpbGRfcGF0aCgp
CkBAIC01NDAsNiArNTQxLDggQEAgY2xhc3MgV2ViS2l0RHJpdmVyKERyaXZlcik6CiAgICAgICAg
IHJldHVybiAoTm9uZSwgYmxvY2suY29udGVudF9oYXNoKQogCiAgICAgZGVmIHJ1bl90ZXN0KHNl
bGYsIGRyaXZlcl9pbnB1dCk6CisgICAgICAgIGlmIG5vdCBzZWxmLl9zZXJ2ZXJfcHJvY2VzczoK
KyAgICAgICAgICAgIHNlbGYuX3N0YXJ0KCkKICAgICAgICAgc2VsZi5lcnJvcl9mcm9tX3Rlc3Qg
PSBzdHIoKQogICAgICAgICBzZWxmLmVycl9zZWVuX2VvZiA9IEZhbHNlCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114552</attachid>
            <date>2011-11-10 13:10:32 -0800</date>
            <delta_ts>2011-11-10 15:32:11 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-72038-20111110131046.patch</filename>
            <type>text/plain</type>
            <size>6113</size>
            <attacher name="Tony Chang">tony</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTk4OTIKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCAyNzQ3Nzk1YjE1Yzc2ZDAwOGZiMzdlYWU4NjZiMDBlOGRj
NjQzZGRhLi45MmI2NTMxN2UyMzlkMTI1YTU4YzJmMzk1NzBhOTUwOGM1ZGJmMDUzIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTEtMTEtMTAgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4KKworICAgICAg
ICBMYXppbHkgc3RhcnQgRFJUIGluc3RhbmNlcyBpbiBOUldUCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MjAzOAorCisgICAgICAgIFJldmlld2VkIGJ5
IEVyaWMgU2VpZGVsLgorCisgICAgICAgIEp1c3QgYSByZWZhY3RvcmluZywgbm8gbmV3IHRlc3Rz
LgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29udHJvbGxlcnMv
d29ya2VyLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQv
Y2hyb21pdW0ucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC9kcnlydW4ucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9y
dC90ZXN0LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQv
d2Via2l0LnB5OgorCiAyMDExLTExLTEwICBCYWxhenMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0
Lm9yZz4KIAogICAgICAgICBbUXRdIFgxMSBwbHVnaW5zIG5lZWQgdG8gYmUgcmV3b3JrZWQgZm9y
IFF0NQpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvY29u
dHJvbGxlcnMvd29ya2VyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
Y29udHJvbGxlcnMvd29ya2VyLnB5CmluZGV4IDRjZmI3ZTc0NTVmMzgxM2ZmMzhhMzI3YjUxYzc1
ZjU3NTc4NzQ3MmEuLmFiOGFhNzU2ZDQ5NTkxZWZlY2U0MmU3NmY0MTFiMzZjMDE2ZTAyYzAgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL2NvbnRyb2xsZXJz
L3dvcmtlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9jb250
cm9sbGVycy93b3JrZXIucHkKQEAgLTIwNSw3ICsyMDUsNiBAQCBjbGFzcyBXb3JrZXIobWFuYWdl
cl93b3JrZXJfYnJva2VyLkFic3RyYWN0V29ya2VyKToKICAgICAgICAgd29ya2VyID0gc2VsZgog
CiAgICAgICAgIGRyaXZlciA9IHNlbGYuX3BvcnQuY3JlYXRlX2RyaXZlcihzZWxmLl93b3JrZXJf
bnVtYmVyKQotICAgICAgICBkcml2ZXIuc3RhcnQoKQogCiAgICAgICAgIGNsYXNzIFNpbmdsZVRl
c3RUaHJlYWQodGhyZWFkaW5nLlRocmVhZCk6CiAgICAgICAgICAgICBkZWYgX19pbml0X18oc2Vs
Zik6CkBAIC0yNDYsNyArMjQ1LDYgQEAgY2xhc3MgV29ya2VyKG1hbmFnZXJfd29ya2VyX2Jyb2tl
ci5BYnN0cmFjdFdvcmtlcik6CiAgICAgICAgICIiIgogICAgICAgICBpZiBub3Qgc2VsZi5fZHJp
dmVyIG9yIHNlbGYuX2RyaXZlci5wb2xsKCkgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICBzZWxm
Ll9kcml2ZXIgPSBzZWxmLl9wb3J0LmNyZWF0ZV9kcml2ZXIoc2VsZi5fd29ya2VyX251bWJlcikK
LSAgICAgICAgICAgIHNlbGYuX2RyaXZlci5zdGFydCgpCiAgICAgICAgIHJldHVybiBzZWxmLnJ1
bl9zaW5nbGVfdGVzdChzZWxmLl9kcml2ZXIsIHRlc3RfaW5wdXQpCiAKICAgICBkZWYgcnVuX3Np
bmdsZV90ZXN0KHNlbGYsIGRyaXZlciwgdGVzdF9pbnB1dCk6CmRpZmYgLS1naXQgYS9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtLnB5IGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bS5weQppbmRleCAxOWQ4ZTll
ZGYzYmRkZDczNDMzOTk0ZTA5N2FjZDY5NTI4ZTAyOGYwLi43ZjQ5ZGY2MmY3MjBhNWQ2MmU1MmM5
MzUyNDczMGU1MGY3MWU0ZDQzIDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L2Nocm9taXVtLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW0ucHkKQEAgLTQ0OCw3ICs0NDgsNyBAQCBjbGFzcyBD
aHJvbWl1bURyaXZlcihEcml2ZXIpOgogICAgICAgICBjbWQuZXh0ZW5kKHNlbGYuX3dyYXBwZXJf
b3B0aW9ucygpKQogICAgICAgICByZXR1cm4gY21kCiAKLSAgICBkZWYgc3RhcnQoc2VsZik6Cisg
ICAgZGVmIF9zdGFydChzZWxmKToKICAgICAgICAgYXNzZXJ0IG5vdCBzZWxmLl9wcm9jCiAgICAg
ICAgICMgRklYTUU6IFRoaXMgc2hvdWxkIHVzZSBTZXJ2ZXJQcm9jZXNzIGxpa2UgV2ViS2l0RHJp
dmVyIGRvZXMuCiAgICAgICAgICMgRklYTUU6IFdlIHNob3VsZCBiZSByZWFkaW5nIHN0ZGVyciBh
bmQgc3Rkb3V0IHNlcGFyYXRlbHkgbGlrZSBob3cgV2ViS2l0RHJpdmVyIGRvZXMuCkBAIC01MTAs
NiArNTEwLDkgQEAgY2xhc3MgQ2hyb21pdW1Ecml2ZXIoRHJpdmVyKToKICAgICAgICAgICAgIHNl
bGYuX3BvcnQuX2ZpbGVzeXN0ZW0ucmVtb3ZlKHNlbGYuX2ltYWdlX3BhdGgpCiAKICAgICBkZWYg
cnVuX3Rlc3Qoc2VsZiwgZHJpdmVyX2lucHV0KToKKyAgICAgICAgaWYgbm90IHNlbGYuX3Byb2M6
CisgICAgICAgICAgICBzZWxmLl9zdGFydCgpCisKICAgICAgICAgb3V0cHV0ID0gW10KICAgICAg
ICAgZXJyb3IgPSBbXQogICAgICAgICBjcmFzaCA9IEZhbHNlCkBAIC01MjMsNyArNTI2LDcgQEAg
Y2xhc3MgQ2hyb21pdW1Ecml2ZXIoRHJpdmVyKToKIAogICAgICAgICB1cmkgPSBzZWxmLl9wb3J0
LnRlc3RfdG9fdXJpKGRyaXZlcl9pbnB1dC50ZXN0X25hbWUpCiAgICAgICAgIGNtZCA9IHNlbGYu
X3Rlc3Rfc2hlbGxfY29tbWFuZCh1cmksIGRyaXZlcl9pbnB1dC50aW1lb3V0LCBkcml2ZXJfaW5w
dXQuaW1hZ2VfaGFzaCkKLSAgICAgICAgKGxpbmUsIGNyYXNoKSA9IHNlbGYuX3dyaXRlX2NvbW1h
bmRfYW5kX3JlYWRfbGluZShpbnB1dD1jbWQpCisgICAgICAgIGxpbmUsIGNyYXNoID0gc2VsZi5f
d3JpdGVfY29tbWFuZF9hbmRfcmVhZF9saW5lKGlucHV0PWNtZCkKIAogICAgICAgICB3aGlsZSBu
b3QgY3Jhc2ggYW5kIGxpbmUucnN0cmlwKCkgIT0gIiNFT0YiOgogICAgICAgICAgICAgIyBNYWtl
IHN1cmUgd2UgaGF2ZW4ndCBjcmFzaGVkLgpAQCAtNTY1LDcgKzU2OCw3IEBAIGNsYXNzIENocm9t
aXVtRHJpdmVyKERyaXZlcik6CiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIGVy
cm9yLmFwcGVuZChsaW5lKQogCi0gICAgICAgICAgICAobGluZSwgY3Jhc2gpID0gc2VsZi5fd3Jp
dGVfY29tbWFuZF9hbmRfcmVhZF9saW5lKGlucHV0PU5vbmUpCisgICAgICAgICAgICBsaW5lLCBj
cmFzaCA9IHNlbGYuX3dyaXRlX2NvbW1hbmRfYW5kX3JlYWRfbGluZShpbnB1dD1Ob25lKQogCiAg
ICAgICAgIHJ1bl90aW1lID0gdGltZS50aW1lKCkgLSBzdGFydF90aW1lCiAgICAgICAgIG91dHB1
dF9pbWFnZSA9IHNlbGYuX291dHB1dF9pbWFnZV93aXRoX3JldHJ5KCkKZGlmZiAtLWdpdCBhL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZHJ5cnVuLnB5IGIvVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9kcnlydW4ucHkKaW5kZXggOGYzMzVl
MjIxYTZhNWE1YWQ4ZDAwMjQyNGVlNzIyYTc2OWQyZTQyNi4uY2EzYmFkZTNkOGU4ZmRlYzk4NDhh
YjhjNWFhZjgxOTljNTUyYTcwMSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9kcnlydW4ucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9kcnlydW4ucHkKQEAgLTEzNCw4ICsxMzQsNSBAQCBjbGFzcyBEcnly
dW5Ecml2ZXIoRHJpdmVyKToKICAgICAgICAgICAgIGF1ZGlvID0gc2VsZi5fcG9ydC5leHBlY3Rl
ZF9hdWRpbyhkcml2ZXJfaW5wdXQudGVzdF9uYW1lKQogICAgICAgICByZXR1cm4gRHJpdmVyT3V0
cHV0KHRleHQsIGltYWdlLCBjaGVja3N1bSwgYXVkaW8sIGNyYXNoPUZhbHNlLCB0ZXN0X3RpbWU9
dGltZS50aW1lKCkgLSBzdGFydF90aW1lLCB0aW1lb3V0PUZhbHNlLCBlcnJvcj0nJykKIAotICAg
IGRlZiBzdGFydChzZWxmKToKLSAgICAgICAgcGFzcwotCiAgICAgZGVmIHN0b3Aoc2VsZik6CiAg
ICAgICAgIHBhc3MKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvdGVzdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Bv
cnQvdGVzdC5weQppbmRleCBhNGFmYTIyZTI1N2M3NjViMWVhNTY1YjM1ZDYzOTU4YjM5YTJlZjc2
Li43ZTVkOTU2ZWU0ZDQxMGIwNDhiNzM0YzMzNDg2ZmE4ZDhhMTkwNzhkIDEwMDY0NAotLS0gYS9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3Rlc3QucHkKKysrIGIvVG9v
bHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC90ZXN0LnB5CkBAIC01MDksOCAr
NTA5LDUgQEAgY2xhc3MgVGVzdERyaXZlcihEcml2ZXIpOgogICAgICAgICAgICAgdGVzdC5hY3R1
YWxfY2hlY2tzdW0sIGF1ZGlvLCBjcmFzaD10ZXN0LmNyYXNoLAogICAgICAgICAgICAgdGVzdF90
aW1lPXRpbWUudGltZSgpIC0gc3RhcnRfdGltZSwgdGltZW91dD10ZXN0LnRpbWVvdXQsIGVycm9y
PXRlc3QuZXJyb3IpCiAKLSAgICBkZWYgc3RhcnQoc2VsZik6Ci0gICAgICAgIHBhc3MKLQogICAg
IGRlZiBzdG9wKHNlbGYpOgogICAgICAgICBwYXNzCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dlYmtpdC5weSBiL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5CmluZGV4IDRkMjUxOTU1MTFmNjNjNzJm
NDY1NGY5MWU1NmUwMmIwNThhZDgzZmYuLjk1NjExYjRhMmYxZTNmNzFkY2NjZWIxMWE1YjJmMzVl
YmI4MmQyMTggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvd2Via2l0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvd2Via2l0LnB5CkBAIC00NTUsNiArNDU1LDcgQEAgY2xhc3MgV2ViS2l0RHJpdmVyKERy
aXZlcik6CiAgICAgICAgICMgaW5zdGVhZCBzY29wZSB0aGVzZSBsb2NhbGx5IGluIHJ1bl90ZXN0
LgogICAgICAgICBzZWxmLmVycm9yX2Zyb21fdGVzdCA9IHN0cigpCiAgICAgICAgIHNlbGYuZXJy
X3NlZW5fZW9mID0gRmFsc2UKKyAgICAgICAgc2VsZi5fc2VydmVyX3Byb2Nlc3MgPSBOb25lCiAK
IAogICAgICMgRklYTUU6IFRoaXMgbWF5IGJlIHVuc2FmZSwgYXMgcHl0aG9uIGRvZXMgbm90IGd1
YXJlbnRlZSBhbnkgb3JkZXJpbmcgb2YgX19kZWxfXyBjYWxscwpAQCAtNDc5LDcgKzQ4MCw3IEBA
IGNsYXNzIFdlYktpdERyaXZlcihEcml2ZXIpOgogICAgICAgICBjbWQuYXBwZW5kKCctJykKICAg
ICAgICAgcmV0dXJuIGNtZAogCi0gICAgZGVmIHN0YXJ0KHNlbGYpOgorICAgIGRlZiBfc3RhcnQo
c2VsZik6CiAgICAgICAgIHNlcnZlcl9uYW1lID0gc2VsZi5fcG9ydC5kcml2ZXJfbmFtZSgpCiAg
ICAgICAgIGVudmlyb25tZW50ID0gc2VsZi5fcG9ydC5zZXR1cF9lbnZpcm9uX2Zvcl9zZXJ2ZXIo
c2VydmVyX25hbWUpCiAgICAgICAgIGVudmlyb25tZW50WydEWUxEX0ZSQU1FV09SS19QQVRIJ10g
PSBzZWxmLl9wb3J0Ll9idWlsZF9wYXRoKCkKQEAgLTU0MCw2ICs1NDEsOCBAQCBjbGFzcyBXZWJL
aXREcml2ZXIoRHJpdmVyKToKICAgICAgICAgcmV0dXJuIChOb25lLCBibG9jay5jb250ZW50X2hh
c2gpCiAKICAgICBkZWYgcnVuX3Rlc3Qoc2VsZiwgZHJpdmVyX2lucHV0KToKKyAgICAgICAgaWYg
bm90IHNlbGYuX3NlcnZlcl9wcm9jZXNzOgorICAgICAgICAgICAgc2VsZi5fc3RhcnQoKQogICAg
ICAgICBzZWxmLmVycm9yX2Zyb21fdGVzdCA9IHN0cigpCiAgICAgICAgIHNlbGYuZXJyX3NlZW5f
ZW9mID0gRmFsc2UKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>