<?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>37387</bug_id>
          
          <creation_ts>2010-04-10 08:08:45 -0700</creation_ts>
          <short_desc>run_webkit_tests.py shouldn&apos;t have platform-specific logic</short_desc>
          <delta_ts>2010-04-10 15:17:50 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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>37388</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cjerdonek</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>ojan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>211149</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-04-10 08:08:45 -0700</bug_when>
    <thetext>run_webkit_tests.py shouldn&apos;t have platform-specific logic</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211150</commentid>
    <comment_count>1</comment_count>
      <attachid>53040</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-04-10 08:10:54 -0700</bug_when>
    <thetext>Created attachment 53040
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211151</commentid>
    <comment_count>2</comment_count>
      <attachid>53041</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-04-10 08:13:50 -0700</bug_when>
    <thetext>Created attachment 53041
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211164</commentid>
    <comment_count>3</comment_count>
      <attachid>53041</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2010-04-10 11:11:25 -0700</bug_when>
    <thetext>Comment on attachment 53041
Patch

Looks basically good to me, although I&apos;m really not that familiar with what the Executive package does; I&apos;ll have to look into that more now that this code is rather dependent on it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211173</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-04-10 12:43:14 -0700</bug_when>
    <thetext>Thanks.  Executive.cpu_count shouldn&apos;t exist.  It only exits because the multiprocessing package is in Python 2.6 and later.  We shouldn&apos;t have a bunch of different pieces of code that work around the lack of the multiprocessing.  In principle, we could just implement our own version of multiprocessing, like we do for os.relpath, but we decide to put it on executive so it could be non-static (which is better for testing).

The main point of this patch is that it makes sense for a WebKit port to recommend a default number of DRT instances.  It doesn&apos;t make a lot of sense for a WebKit port to tell you how many CPUs your machine has.  Some lower-level piece of code should do that.  The webkitpy.common.system package houses all the non-WebKit specific code for interacting with the operating system (that isn&apos;t supplied by the standard library), so the CPU counting code should live there.  Now, what to do with the CPU count, that&apos;s a question for the layout_test package.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211179</commentid>
    <comment_count>5</comment_count>
      <attachid>53041</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-10 14:12:17 -0700</bug_when>
    <thetext>Comment on attachment 53041
Patch

I wish executive had more testing.

OK.

We need to kill the 4-limit hack.  I have never reproduced the errors Dirk saw, but I would like to... so we can fix them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211194</commentid>
    <comment_count>6</comment_count>
      <attachid>53041</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-04-10 15:17:37 -0700</bug_when>
    <thetext>Comment on attachment 53041
Patch

Clearing flags on attachment: 53041

Committed r57422: &lt;http://trac.webkit.org/changeset/57422&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>211195</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-04-10 15:17:50 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53040</attachid>
            <date>2010-04-10 08:10:54 -0700</date>
            <delta_ts>2010-04-10 08:13:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-37387-20100410081053.patch</filename>
            <type>text/plain</type>
            <size>6307</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA0OGIxNDU2Li45ZjhmOWIwIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTAtMDQt
MTAgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBydW5fd2Via2l0X3Rlc3RzLnB5IHNob3VsZG4n
dCBoYXZlIHBsYXRmb3JtLXNwZWNpZmljIGxvZ2ljCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNzM4NworCisgICAgICAgIERpcmsgUHJhbmtlIHBvaW50
ZWQgb3V0IHRoYXQgbXkgbGFzdCBwYXRjaCB3YXMgd3JvbmcgYmVjYXVzZSBJCisgICAgICAgIGlu
dHJvZHVjZWQgcGxhdGZvcm0tc3BlY2lmaWMgbG9naWMgaW50byBydW5fd2Via2l0X3Rlc3RzLnB5
LCBsaW1pdGluZworICAgICAgICB0aGUgcGFyYWxsZWxpc20gaW4gQ2hyb21pdW0gdG8gd29yayBh
cm91bmQgYSBidWcgaW4gdGhlIG1haW4gTWFjIHBvcnQuCisKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlLnB5OgorICAgICAgICAgICAgLSBGaXggYSB0
eXBvIHBvaW50ZWQgb3V0IGJ5IENocmlzIEplcmRvbmVrLgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L21hYy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9ydW5fd2Via2l0X3Rlc3RzLnB5OgorCiAyMDEwLTA0LTEwICBSb2JlcnQg
SG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkIGZpeCB0byBy
ZWdyZXNzaW9ucyBpbiByNTc0MTYuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdHB5L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlLnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93
ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZS5weQppbmRleCAwNDMwYmNmLi44MmIyNGQz
IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0v
ZXhlY3V0aXZlLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5
c3RlbS9leGVjdXRpdmUucHkKQEAgLTEyNyw3ICsxMjcsNyBAQCBjbGFzcyBFeGVjdXRpdmUob2Jq
ZWN0KToKICAgICAgICAgICAgIHJldHVybiBtdWx0aXByb2Nlc3NpbmcuY3B1X2NvdW50KCkKICAg
ICAgICAgIyBEYXJuLiAgV2UgZG9uJ3QgaGF2ZSB0aGUgbXVsdGlwcm9jZXNzaW5nIHBhY2thZ2Uu
CiAgICAgICAgIHN5c3RlbV9uYW1lID0gcGxhdGZvcm0uc3lzdGVtKCkKLSAgICAgICAgaWYgc3lz
dGVtX25hbWUgPT0gIkRhd2luIjoKKyAgICAgICAgaWYgc3lzdGVtX25hbWUgPT0gIkRhcndpbiI6
CiAgICAgICAgICAgICByZXR1cm4gaW50KHNlbGYucnVuX2NvbW1hbmQoWyJzeXNjdGwiLCAiLW4i
LCAiaHcubmNwdSJdKSkKICAgICAgICAgZWxpZiBzeXN0ZW1fbmFtZSA9PSAiV2luZG93cyI6CiAg
ICAgICAgICAgICByZXR1cm4gaW50KG9zLmVudmlyb24uZ2V0KCdOVU1CRVJfT0ZfUFJPQ0VTU09S
UycsIDEpKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9iYXNlLnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9iYXNlLnB5CmluZGV4IGU1ZjAxZGUuLjdkMzc4MGQgMTAwNjQ0Ci0tLSBhL1dl
YktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQorKysg
Yi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkK
QEAgLTQyLDYgKzQyLDggQEAgaW1wb3J0IGFwYWNoZV9odHRwX3NlcnZlcgogaW1wb3J0IGh0dHBf
c2VydmVyCiBpbXBvcnQgd2Vic29ja2V0X3NlcnZlcgogCitmcm9tIHdlYmtpdHB5LmNvbW1vbi5z
eXN0ZW0uZXhlY3V0aXZlIGltcG9ydCBFeGVjdXRpdmUKKwogIyBQeXRob24gYnVnIHdvcmthcm91
bmQuICBTZWUgUG9ydC53ZGlmZl90ZXh0KCkgZm9yIGFuIGV4cGxhbmF0aW9uLgogX3dkaWZmX2F2
YWlsYWJsZSA9IFRydWUKIApAQCAtNTksMTMgKzYxLDE3IEBAIGNsYXNzIFBvcnQob2JqZWN0KToK
ICAgICAgICAgfQogICAgICAgICByZXR1cm4gZmxhZ3NfYnlfY29uZmlndXJhdGlvbltjb25maWd1
cmF0aW9uXQogCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIHBvcnRfbmFtZT1Ob25lLCBvcHRpb25z
PU5vbmUpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwb3J0X25hbWU9Tm9uZSwgb3B0aW9ucz1O
b25lLCBleGVjdXRpdmU9RXhlY3V0aXZlKCkpOgogICAgICAgICBzZWxmLl9uYW1lID0gcG9ydF9u
YW1lCiAgICAgICAgIHNlbGYuX29wdGlvbnMgPSBvcHRpb25zCiAgICAgICAgIHNlbGYuX2hlbHBl
ciA9IE5vbmUKICAgICAgICAgc2VsZi5faHR0cF9zZXJ2ZXIgPSBOb25lCiAgICAgICAgIHNlbGYu
X3dlYmtpdF9iYXNlX2RpciA9IE5vbmUKICAgICAgICAgc2VsZi5fd2Vic29ja2V0X3NlcnZlciA9
IE5vbmUKKyAgICAgICAgc2VsZi5fZXhlY3V0aXZlID0gZXhlY3V0aXZlCisKKyAgICBkZWYgZGVm
YXVsdF9udW1fZHVtcF9yZW5kZXJfdHJlZXMoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLl9l
eGVjdXRpdmUuY3B1X2NvdW50KCkKIAogICAgIGRlZiBiYXNlbGluZV9wYXRoKHNlbGYpOgogICAg
ICAgICAiIiJSZXR1cm4gdGhlIGFic29sdXRlIHBhdGggdG8gdGhlIGRpcmVjdG9yeSB0byBzdG9y
ZSBuZXcgYmFzZWxpbmVzCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9wb3J0L21hYy5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvbWFjLnB5CmluZGV4IGExNWYzOWEuLmQxY2NkNTkgMTAwNjQ0Ci0t
LSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFjLnB5
CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFj
LnB5CkBAIC00NSw3ICs0NSw2IEBAIGltcG9ydCBiYXNlCiBpbXBvcnQgc2VydmVyX3Byb2Nlc3MK
IAogaW1wb3J0IHdlYmtpdHB5Ci1pbXBvcnQgd2Via2l0cHkuY29tbW9uLnN5c3RlbS5leGVjdXRp
dmUgYXMgZXhlY3V0aXZlCiBpbXBvcnQgd2Via2l0cHkuY29tbW9uLnN5c3RlbS5vc3BhdGggYXMg
b3NwYXRoCiAKIF9sb2cgPSBsb2dnaW5nLmdldExvZ2dlcigid2Via2l0cHkubGF5b3V0X3Rlc3Rz
LnBvcnQubWFjIikKQEAgLTY2LDYgKzY1LDE1IEBAIGNsYXNzIE1hY1BvcnQoYmFzZS5Qb3J0KToK
ICAgICAgICAgICAgb3B0aW9ucy5waXhlbF90ZXN0cyBpcyBOb25lKToKICAgICAgICAgICAgIG9w
dGlvbnMucGl4ZWxfdGVzdHMgPSBGYWxzZQogCisgICAgZGVmIGRlZmF1bHRfbnVtX2R1bXBfcmVu
ZGVyX3RyZWVzKHNlbGYpOgorICAgICAgICAjIEZJWE1FOiBuZXctcnVuLXdlYmtpdC10ZXN0cyBp
cyB1bnN0YWJsZSBvbiBNYWMgcnVubmluZyBtb3JlIHRoYW4KKyAgICAgICAgIyBmb3VyIHRocmVh
ZHMgaW4gcGFyYWxsZWwuCisgICAgICAgICMgU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0zNjYyMgorICAgICAgICBudW1fZHVtcF9yZW5kZXJfdHJlZXMgPSBiYXNl
LlBvcnQuZGVmYXVsdF9udW1fZHVtcF9yZW5kZXJfdHJlZXMoc2VsZikKKyAgICAgICAgaWYgbnVt
X2R1bXBfcmVuZGVyX3RyZWVzID4gNDoKKyAgICAgICAgICAgIHJldHVybiA0CisgICAgICAgIHJl
dHVybiBudW1fZHVtcF9yZW5kZXJfdHJlZXMKKwogICAgIGRlZiBiYXNlbGluZV9wYXRoKHNlbGYp
OgogICAgICAgICByZXR1cm4gc2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgoc2VsZi5fbmFtZSkK
IApAQCAtODUsNyArOTMsNyBAQCBjbGFzcyBNYWNQb3J0KGJhc2UuUG9ydCk6CiAgICAgICAgICAg
ICBzZWxmLnNjcmlwdF9wYXRoKCJidWlsZC1kdW1wcmVuZGVydHJlZSIpLAogICAgICAgICAgICAg
c2VsZi5mbGFnX2Zyb21fY29uZmlndXJhdGlvbihzZWxmLl9vcHRpb25zLmNvbmZpZ3VyYXRpb24p
LAogICAgICAgICBdCi0gICAgICAgIGlmIGV4ZWN1dGl2ZS5ydW5fY29tbWFuZChidWlsZF9kcnRf
Y29tbWFuZCwgcmV0dXJuX2V4aXRfY29kZT1UcnVlKToKKyAgICAgICAgaWYgc2VsZi5fZXhlY3V0
aXZlLnJ1bl9jb21tYW5kKGJ1aWxkX2RydF9jb21tYW5kLCByZXR1cm5fZXhpdF9jb2RlPVRydWUp
OgogICAgICAgICAgICAgcmV0dXJuIEZhbHNlCiAKICAgICAgICAgaWYgbm90IHNlbGYuY2hlY2tf
aW1hZ2VfZGlmZigpOgpAQCAtOTgsNyArMTA2LDcgQEAgY2xhc3MgTWFjUG9ydChiYXNlLlBvcnQp
OgogCiAgICAgICAgIGphdmFfdGVzdHNfcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLmxheW91dF90
ZXN0c19kaXIoKSwgImphdmEiKQogICAgICAgICBidWlsZF9qYXZhID0gWyIvdXNyL2Jpbi9tYWtl
IiwgIi1DIiwgamF2YV90ZXN0c19wYXRoXQotICAgICAgICBpZiBleGVjdXRpdmUucnVuX2NvbW1h
bmQoYnVpbGRfamF2YSwgcmV0dXJuX2V4aXRfY29kZT1UcnVlKToKKyAgICAgICAgaWYgc2VsZi5f
ZXhlY3V0aXZlLnJ1bl9jb21tYW5kKGJ1aWxkX2phdmEsIHJldHVybl9leGl0X2NvZGU9VHJ1ZSk6
CiAgICAgICAgICAgICBfbG9nLmVycm9yKCJGYWlsZWQgdG8gYnVpbGQgSmF2YSBzdXBwb3J0IGZp
bGVzOiAlcyIgJSBidWlsZF9qYXZhKQogICAgICAgICAgICAgcmV0dXJuIEZhbHNlCiAKQEAgLTMy
NCw3ICszMzIsNyBAQCBjbGFzcyBNYWNQb3J0KGJhc2UuUG9ydCk6CiAKICAgICBkZWYgX3dlYmtp
dF9idWlsZF9kaXJlY3Rvcnkoc2VsZiwgYXJncyk6CiAgICAgICAgIGNtZCA9IFtzZWxmLnNjcmlw
dF9wYXRoKCJ3ZWJraXQtYnVpbGQtZGlyZWN0b3J5IildICsgYXJncwotICAgICAgICByZXR1cm4g
ZXhlY3V0aXZlLnJ1bl9jb21tYW5kKGNtZCkucnN0cmlwKCkKKyAgICAgICAgcmV0dXJuIHNlbGYu
X2V4ZWN1dGl2ZS5ydW5fY29tbWFuZChjbWQpLnJzdHJpcCgpCiAKICAgICBkZWYgX2J1aWxkX3Bh
dGgoc2VsZiwgKmNvbXBzKToKICAgICAgICAgaWYgbm90IHNlbGYuX2NhY2hlZF9idWlsZF9yb290
OgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cnVuX3dlYmtpdF90ZXN0cy5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0
X3Rlc3RzL3J1bl93ZWJraXRfdGVzdHMucHkKaW5kZXggNTE4NTk0Ny4uZTVmYzEzOSAxMDA3NTUK
LS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcnVuX3dlYmtp
dF90ZXN0cy5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9ydW5fd2Via2l0X3Rlc3RzLnB5CkBAIC0xNDI3LDEyICsxNDI3LDcgQEAgZGVmIG1haW4ob3B0
aW9ucywgYXJncyk6CiAKICAgICBpZiBub3Qgb3B0aW9ucy5udW1fZHVtcF9yZW5kZXJfdHJlZXM6
CiAgICAgICAgICMgRklYTUU6IEludmVzdGlnYXRlIHBlcmYvZmxha2luZXNzIGltcGFjdCBvZiB1
c2luZyBjcHVfY291bnQgKyAxLgotICAgICAgICBvcHRpb25zLm51bV9kdW1wX3JlbmRlcl90cmVl
cyA9IGV4ZWN1dGl2ZS5jcHVfY291bnQoKQotICAgICAgICAjIEZJWE1FOiBuZXctcnVuLXdlYmtp
dC10ZXN0cyBpcyB1bnN0YWJsZSBvbiBNYWMgcnVubmluZyBtb3JlIHRoYW4KLSAgICAgICAgIyBm
b3VyIHRocmVhZHMgaW4gcGFyYWxsZWwuCi0gICAgICAgICMgU2VlIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNjYyMgotICAgICAgICBpZiBwbGF0Zm9ybS5zeXN0ZW0o
KSA9PSAiRGF3aW4iIGFuZCBvcHRpb25zLm51bV9kdW1wX3JlbmRlcl90cmVlcyA+IDQ6Ci0gICAg
ICAgICAgICBvcHRpb25zLm51bV9kdW1wX3JlbmRlcl90cmVlcyA9IDQKKyAgICAgICAgb3B0aW9u
cy5udW1fZHVtcF9yZW5kZXJfdHJlZXMgPSBwb3J0X29iai5kZWZhdWx0X251bV9kdW1wX3JlbmRl
cl90cmVlcygpCiAKICAgICB3cml0ZSA9IGNyZWF0ZV9sb2dnaW5nX3dyaXRlcihvcHRpb25zLCAn
Y29uZmlnJykKICAgICB3cml0ZSgiUnVubmluZyAlcyBEdW1wUmVuZGVyVHJlZXMgaW4gcGFyYWxs
ZWwiICUgb3B0aW9ucy5udW1fZHVtcF9yZW5kZXJfdHJlZXMpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53041</attachid>
            <date>2010-04-10 08:13:50 -0700</date>
            <delta_ts>2010-04-10 15:17:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-37387-20100410081349.patch</filename>
            <type>text/plain</type>
            <size>6399</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA0OGIxNDU2Li45ZjhmOWIwIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTAtMDQt
MTAgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBydW5fd2Via2l0X3Rlc3RzLnB5IHNob3VsZG4n
dCBoYXZlIHBsYXRmb3JtLXNwZWNpZmljIGxvZ2ljCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zNzM4NworCisgICAgICAgIERpcmsgUHJhbmtlIHBvaW50
ZWQgb3V0IHRoYXQgbXkgbGFzdCBwYXRjaCB3YXMgd3JvbmcgYmVjYXVzZSBJCisgICAgICAgIGlu
dHJvZHVjZWQgcGxhdGZvcm0tc3BlY2lmaWMgbG9naWMgaW50byBydW5fd2Via2l0X3Rlc3RzLnB5
LCBsaW1pdGluZworICAgICAgICB0aGUgcGFyYWxsZWxpc20gaW4gQ2hyb21pdW0gdG8gd29yayBh
cm91bmQgYSBidWcgaW4gdGhlIG1haW4gTWFjIHBvcnQuCisKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlLnB5OgorICAgICAgICAgICAgLSBGaXggYSB0
eXBvIHBvaW50ZWQgb3V0IGJ5IENocmlzIEplcmRvbmVrLgorICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L21hYy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5
L2xheW91dF90ZXN0cy9ydW5fd2Via2l0X3Rlc3RzLnB5OgorCiAyMDEwLTA0LTEwICBSb2JlcnQg
SG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkIGZpeCB0byBy
ZWdyZXNzaW9ucyBpbiByNTc0MTYuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdHB5L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlLnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93
ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZS5weQppbmRleCAwNDMwYmNmLi44MmIyNGQz
IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0v
ZXhlY3V0aXZlLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5
c3RlbS9leGVjdXRpdmUucHkKQEAgLTEyNyw3ICsxMjcsNyBAQCBjbGFzcyBFeGVjdXRpdmUob2Jq
ZWN0KToKICAgICAgICAgICAgIHJldHVybiBtdWx0aXByb2Nlc3NpbmcuY3B1X2NvdW50KCkKICAg
ICAgICAgIyBEYXJuLiAgV2UgZG9uJ3QgaGF2ZSB0aGUgbXVsdGlwcm9jZXNzaW5nIHBhY2thZ2Uu
CiAgICAgICAgIHN5c3RlbV9uYW1lID0gcGxhdGZvcm0uc3lzdGVtKCkKLSAgICAgICAgaWYgc3lz
dGVtX25hbWUgPT0gIkRhd2luIjoKKyAgICAgICAgaWYgc3lzdGVtX25hbWUgPT0gIkRhcndpbiI6
CiAgICAgICAgICAgICByZXR1cm4gaW50KHNlbGYucnVuX2NvbW1hbmQoWyJzeXNjdGwiLCAiLW4i
LCAiaHcubmNwdSJdKSkKICAgICAgICAgZWxpZiBzeXN0ZW1fbmFtZSA9PSAiV2luZG93cyI6CiAg
ICAgICAgICAgICByZXR1cm4gaW50KG9zLmVudmlyb24uZ2V0KCdOVU1CRVJfT0ZfUFJPQ0VTU09S
UycsIDEpKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9iYXNlLnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9iYXNlLnB5CmluZGV4IGU1ZjAxZGUuLjIxMGIyYjIgMTAwNjQ0Ci0tLSBhL1dl
YktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weQorKysg
Yi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkK
QEAgLTQyLDYgKzQyLDggQEAgaW1wb3J0IGFwYWNoZV9odHRwX3NlcnZlcgogaW1wb3J0IGh0dHBf
c2VydmVyCiBpbXBvcnQgd2Vic29ja2V0X3NlcnZlcgogCitmcm9tIHdlYmtpdHB5LmNvbW1vbi5z
eXN0ZW0uZXhlY3V0aXZlIGltcG9ydCBFeGVjdXRpdmUKKwogIyBQeXRob24gYnVnIHdvcmthcm91
bmQuICBTZWUgUG9ydC53ZGlmZl90ZXh0KCkgZm9yIGFuIGV4cGxhbmF0aW9uLgogX3dkaWZmX2F2
YWlsYWJsZSA9IFRydWUKIApAQCAtNTksMTMgKzYxLDE5IEBAIGNsYXNzIFBvcnQob2JqZWN0KToK
ICAgICAgICAgfQogICAgICAgICByZXR1cm4gZmxhZ3NfYnlfY29uZmlndXJhdGlvbltjb25maWd1
cmF0aW9uXQogCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIHBvcnRfbmFtZT1Ob25lLCBvcHRpb25z
PU5vbmUpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwb3J0X25hbWU9Tm9uZSwgb3B0aW9ucz1O
b25lLCBleGVjdXRpdmU9RXhlY3V0aXZlKCkpOgogICAgICAgICBzZWxmLl9uYW1lID0gcG9ydF9u
YW1lCiAgICAgICAgIHNlbGYuX29wdGlvbnMgPSBvcHRpb25zCiAgICAgICAgIHNlbGYuX2hlbHBl
ciA9IE5vbmUKICAgICAgICAgc2VsZi5faHR0cF9zZXJ2ZXIgPSBOb25lCiAgICAgICAgIHNlbGYu
X3dlYmtpdF9iYXNlX2RpciA9IE5vbmUKICAgICAgICAgc2VsZi5fd2Vic29ja2V0X3NlcnZlciA9
IE5vbmUKKyAgICAgICAgc2VsZi5fZXhlY3V0aXZlID0gZXhlY3V0aXZlCisKKyAgICBkZWYgZGVm
YXVsdF9udW1fZHVtcF9yZW5kZXJfdHJlZXMoc2VsZik6CisgICAgICAgICIiIlJldHVybiB0aGUg
bnVtYmVyIG9mIER1bXBSZW5kZXJUcmVlIGluc3RhbmNlcyB0byB1c2UgZm9yIHRoaXMKKyAgICAg
ICAgcG9ydC4iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX2V4ZWN1dGl2ZS5jcHVfY291bnQoKQog
CiAgICAgZGVmIGJhc2VsaW5lX3BhdGgoc2VsZik6CiAgICAgICAgICIiIlJldHVybiB0aGUgYWJz
b2x1dGUgcGF0aCB0byB0aGUgZGlyZWN0b3J5IHRvIHN0b3JlIG5ldyBiYXNlbGluZXMKZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFj
LnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMu
cHkKaW5kZXggYTE1ZjM5YS4uZDFjY2Q1OSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKKysrIGIvV2ViS2l0VG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKQEAgLTQ1LDcgKzQ1LDYgQEAg
aW1wb3J0IGJhc2UKIGltcG9ydCBzZXJ2ZXJfcHJvY2VzcwogCiBpbXBvcnQgd2Via2l0cHkKLWlt
cG9ydCB3ZWJraXRweS5jb21tb24uc3lzdGVtLmV4ZWN1dGl2ZSBhcyBleGVjdXRpdmUKIGltcG9y
dCB3ZWJraXRweS5jb21tb24uc3lzdGVtLm9zcGF0aCBhcyBvc3BhdGgKIAogX2xvZyA9IGxvZ2dp
bmcuZ2V0TG9nZ2VyKCJ3ZWJraXRweS5sYXlvdXRfdGVzdHMucG9ydC5tYWMiKQpAQCAtNjYsNiAr
NjUsMTUgQEAgY2xhc3MgTWFjUG9ydChiYXNlLlBvcnQpOgogICAgICAgICAgICBvcHRpb25zLnBp
eGVsX3Rlc3RzIGlzIE5vbmUpOgogICAgICAgICAgICAgb3B0aW9ucy5waXhlbF90ZXN0cyA9IEZh
bHNlCiAKKyAgICBkZWYgZGVmYXVsdF9udW1fZHVtcF9yZW5kZXJfdHJlZXMoc2VsZik6CisgICAg
ICAgICMgRklYTUU6IG5ldy1ydW4td2Via2l0LXRlc3RzIGlzIHVuc3RhYmxlIG9uIE1hYyBydW5u
aW5nIG1vcmUgdGhhbgorICAgICAgICAjIGZvdXIgdGhyZWFkcyBpbiBwYXJhbGxlbC4KKyAgICAg
ICAgIyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM2NjIyCisg
ICAgICAgIG51bV9kdW1wX3JlbmRlcl90cmVlcyA9IGJhc2UuUG9ydC5kZWZhdWx0X251bV9kdW1w
X3JlbmRlcl90cmVlcyhzZWxmKQorICAgICAgICBpZiBudW1fZHVtcF9yZW5kZXJfdHJlZXMgPiA0
OgorICAgICAgICAgICAgcmV0dXJuIDQKKyAgICAgICAgcmV0dXJuIG51bV9kdW1wX3JlbmRlcl90
cmVlcworCiAgICAgZGVmIGJhc2VsaW5lX3BhdGgoc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxm
Ll93ZWJraXRfYmFzZWxpbmVfcGF0aChzZWxmLl9uYW1lKQogCkBAIC04NSw3ICs5Myw3IEBAIGNs
YXNzIE1hY1BvcnQoYmFzZS5Qb3J0KToKICAgICAgICAgICAgIHNlbGYuc2NyaXB0X3BhdGgoImJ1
aWxkLWR1bXByZW5kZXJ0cmVlIiksCiAgICAgICAgICAgICBzZWxmLmZsYWdfZnJvbV9jb25maWd1
cmF0aW9uKHNlbGYuX29wdGlvbnMuY29uZmlndXJhdGlvbiksCiAgICAgICAgIF0KLSAgICAgICAg
aWYgZXhlY3V0aXZlLnJ1bl9jb21tYW5kKGJ1aWxkX2RydF9jb21tYW5kLCByZXR1cm5fZXhpdF9j
b2RlPVRydWUpOgorICAgICAgICBpZiBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQoYnVpbGRf
ZHJ0X2NvbW1hbmQsIHJldHVybl9leGl0X2NvZGU9VHJ1ZSk6CiAgICAgICAgICAgICByZXR1cm4g
RmFsc2UKIAogICAgICAgICBpZiBub3Qgc2VsZi5jaGVja19pbWFnZV9kaWZmKCk6CkBAIC05OCw3
ICsxMDYsNyBAQCBjbGFzcyBNYWNQb3J0KGJhc2UuUG9ydCk6CiAKICAgICAgICAgamF2YV90ZXN0
c19wYXRoID0gb3MucGF0aC5qb2luKHNlbGYubGF5b3V0X3Rlc3RzX2RpcigpLCAiamF2YSIpCiAg
ICAgICAgIGJ1aWxkX2phdmEgPSBbIi91c3IvYmluL21ha2UiLCAiLUMiLCBqYXZhX3Rlc3RzX3Bh
dGhdCi0gICAgICAgIGlmIGV4ZWN1dGl2ZS5ydW5fY29tbWFuZChidWlsZF9qYXZhLCByZXR1cm5f
ZXhpdF9jb2RlPVRydWUpOgorICAgICAgICBpZiBzZWxmLl9leGVjdXRpdmUucnVuX2NvbW1hbmQo
YnVpbGRfamF2YSwgcmV0dXJuX2V4aXRfY29kZT1UcnVlKToKICAgICAgICAgICAgIF9sb2cuZXJy
b3IoIkZhaWxlZCB0byBidWlsZCBKYXZhIHN1cHBvcnQgZmlsZXM6ICVzIiAlIGJ1aWxkX2phdmEp
CiAgICAgICAgICAgICByZXR1cm4gRmFsc2UKIApAQCAtMzI0LDcgKzMzMiw3IEBAIGNsYXNzIE1h
Y1BvcnQoYmFzZS5Qb3J0KToKIAogICAgIGRlZiBfd2Via2l0X2J1aWxkX2RpcmVjdG9yeShzZWxm
LCBhcmdzKToKICAgICAgICAgY21kID0gW3NlbGYuc2NyaXB0X3BhdGgoIndlYmtpdC1idWlsZC1k
aXJlY3RvcnkiKV0gKyBhcmdzCi0gICAgICAgIHJldHVybiBleGVjdXRpdmUucnVuX2NvbW1hbmQo
Y21kKS5yc3RyaXAoKQorICAgICAgICByZXR1cm4gc2VsZi5fZXhlY3V0aXZlLnJ1bl9jb21tYW5k
KGNtZCkucnN0cmlwKCkKIAogICAgIGRlZiBfYnVpbGRfcGF0aChzZWxmLCAqY29tcHMpOgogICAg
ICAgICBpZiBub3Qgc2VsZi5fY2FjaGVkX2J1aWxkX3Jvb3Q6CmRpZmYgLS1naXQgYS9XZWJLaXRU
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9ydW5fd2Via2l0X3Rlc3RzLnB5IGIv
V2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcnVuX3dlYmtpdF90ZXN0
cy5weQppbmRleCA1MTg1OTQ3Li5lNWZjMTM5IDEwMDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9ydW5fd2Via2l0X3Rlc3RzLnB5CisrKyBiL1dlYktp
dFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3J1bl93ZWJraXRfdGVzdHMucHkK
QEAgLTE0MjcsMTIgKzE0MjcsNyBAQCBkZWYgbWFpbihvcHRpb25zLCBhcmdzKToKIAogICAgIGlm
IG5vdCBvcHRpb25zLm51bV9kdW1wX3JlbmRlcl90cmVlczoKICAgICAgICAgIyBGSVhNRTogSW52
ZXN0aWdhdGUgcGVyZi9mbGFraW5lc3MgaW1wYWN0IG9mIHVzaW5nIGNwdV9jb3VudCArIDEuCi0g
ICAgICAgIG9wdGlvbnMubnVtX2R1bXBfcmVuZGVyX3RyZWVzID0gZXhlY3V0aXZlLmNwdV9jb3Vu
dCgpCi0gICAgICAgICMgRklYTUU6IG5ldy1ydW4td2Via2l0LXRlc3RzIGlzIHVuc3RhYmxlIG9u
IE1hYyBydW5uaW5nIG1vcmUgdGhhbgotICAgICAgICAjIGZvdXIgdGhyZWFkcyBpbiBwYXJhbGxl
bC4KLSAgICAgICAgIyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTM2NjIyCi0gICAgICAgIGlmIHBsYXRmb3JtLnN5c3RlbSgpID09ICJEYXdpbiIgYW5kIG9wdGlv
bnMubnVtX2R1bXBfcmVuZGVyX3RyZWVzID4gNDoKLSAgICAgICAgICAgIG9wdGlvbnMubnVtX2R1
bXBfcmVuZGVyX3RyZWVzID0gNAorICAgICAgICBvcHRpb25zLm51bV9kdW1wX3JlbmRlcl90cmVl
cyA9IHBvcnRfb2JqLmRlZmF1bHRfbnVtX2R1bXBfcmVuZGVyX3RyZWVzKCkKIAogICAgIHdyaXRl
ID0gY3JlYXRlX2xvZ2dpbmdfd3JpdGVyKG9wdGlvbnMsICdjb25maWcnKQogICAgIHdyaXRlKCJS
dW5uaW5nICVzIER1bXBSZW5kZXJUcmVlcyBpbiBwYXJhbGxlbCIgJSBvcHRpb25zLm51bV9kdW1w
X3JlbmRlcl90cmVlcykK
</data>

          </attachment>
      

    </bug>

</bugzilla>