<?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>72748</bug_id>
          
          <creation_ts>2011-11-18 12:04:38 -0800</creation_ts>
          <short_desc>NRWT fails on unreleased versions of Mac OS X</short_desc>
          <delta_ts>2011-12-06 14:37:31 -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>Tools / Tests</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Roben (:aroben)">aroben</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>abarth</cc>
    
    <cc>darin</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>mrowe</cc>
    
    <cc>ojan</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>505952</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2011-11-18 12:04:38 -0800</bug_when>
    <thetext>When I run NRWT on an unreleased version of Mac OS X, I see this:

Failed to open Skipped file: /Users/aroben/dev/WebKit/OpenSource/LayoutTests/platform/mac-future/Skipped
Starting 1 worker ...Process _Process-1:
Traceback (most recent call last):
  File &quot;/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/process.py&quot;, line 232, in _bootstrap
    self.run()
  File &quot;/Users/aroben/dev/WebKit/OpenSource/Tools/Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py&quot;, line 259, in run
    port_obj = host.port_factory.get(self._platform_name, options)
  File &quot;/Users/aroben/dev/WebKit/OpenSource/Tools/Scripts/webkitpy/layout_tests/port/factory.py&quot;, line 147, in get
    return self._get_kwargs(**kwargs)
  File &quot;/Users/aroben/dev/WebKit/OpenSource/Tools/Scripts/webkitpy/layout_tests/port/factory.py&quot;, line 127, in _get_kwargs
    return maker(host, **kwargs)
  File &quot;/Users/aroben/dev/WebKit/OpenSource/Tools/Scripts/webkitpy/layout_tests/port/mac.py&quot;, line 78, in __init__
    ApplePort.__init__(self, host, **kwargs)
  File &quot;/Users/aroben/dev/WebKit/OpenSource/Tools/Scripts/webkitpy/layout_tests/port/apple.py&quot;, line 73, in __init__
    assert port_name in self.VERSION_FALLBACK_ORDER, &quot;%s is not in %s&quot; % (port_name, self.VERSION_FALLBACK_ORDER)
AssertionError: mac-future is not in [&apos;mac-leopard&apos;, &apos;mac-snowleopard&apos;, &apos;mac-lion&apos;, &apos;mac&apos;]
Starting testing ... 

And then it just hangs there forever.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>505965</commentid>
    <comment_count>1</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-11-18 12:13:12 -0800</bug_when>
    <thetext>bah. Looks like this broke with some recent refactoring and we don&apos;t have a test for it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>505966</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-11-18 12:14:47 -0800</bug_when>
    <thetext>Yeah, I&apos;m sure I broke it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>515972</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2011-12-06 09:37:15 -0800</bug_when>
    <thetext>*** Bug 73927 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>515998</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-12-06 10:09:27 -0800</bug_when>
    <thetext>Someone teach me how to fix this. It’s blocking a lot of work on WebKit at Apple.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516011</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 10:30:57 -0800</bug_when>
    <thetext>The proximate fix is to add the string mac-future to self.VERSION_FALLBACK_ORDER in apple.py.  I&apos;m not sure what else needs to be done.  I&apos;m on #webkit and happy to help.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516013</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 10:33:07 -0800</bug_when>
    <thetext>From Bug 73927:

&gt; I get this on my newfangled post-Lion computer when I use run-webkit-tests.
&gt; 
&gt; Failed to open Skipped file: /Volumes/Home/darin/Safari/OpenSource/LayoutTests/platform/mac-future/Skipped
&gt; 
&gt; This doesn’t seem right. While there might be “mac-future” as an internal version inside the scripts, we have no intention of actually creating mac-future directories. Is this working as designed?

It sounds like we need to teach the tool to look for the mac-future skipped list somewhere else, presumably in LayoutTests/platform/mac/Skipped?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516020</commentid>
    <comment_count>7</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-12-06 10:40:15 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; It sounds like we need to teach the tool to look for the mac-future skipped list somewhere else, presumably in LayoutTests/platform/mac/Skipped?

That sounds right. Here is the design concept:

The directory platform/mac represents Mac in the future and the other directories such as platform/mac-lion mean “things that are different in Lion than the future” and platform/mac-snowleopard means “things that are different in SnowLeopard than Lion”.

Skipped files are an anomaly here; they are independent rather than built on top of each other as deltas, but that is a design mistake. The Skipped file in each directory should be a delta from the Skipped file from below. There should be a master Skipped file that is not platform specific, and then each directory should modify that one.

I’d expect something similar for the Chrome-style expected results file too. And I’d also like to merge the Skipped concept and the expected results concept into a single file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516029</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 10:45:44 -0800</bug_when>
    <thetext>I&apos;m trying to figure out how I can reproduce this issue on a Lion machine by haxoring the version detection logic.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516039</commentid>
    <comment_count>9</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 10:52:44 -0800</bug_when>
    <thetext>I&apos;m developing a theory.  That message is just a warning, by the way.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516040</commentid>
    <comment_count>10</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 10:54:33 -0800</bug_when>
    <thetext>Ok.  I see the bug.  Should be pretty easy to fix.  I need to do an Apple-Mac build to be sure.  That&apos;s going to take about 22 minutes.  I hope to have a patch to most here in about 45 minutes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516082</commentid>
    <comment_count>11</comment_count>
      <attachid>118078</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 11:31:49 -0800</bug_when>
    <thetext>Created attachment 118078
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516085</commentid>
    <comment_count>12</comment_count>
      <attachid>118078</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2011-12-06 11:33:47 -0800</bug_when>
    <thetext>Comment on attachment 118078
Patch

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

&gt; Tools/Scripts/webkitpy/layout_tests/port/mac.py:79
&gt; -        ApplePort.__init__(self, host, **kwargs)
&gt;          self._operating_system = &apos;mac&apos;
&gt; +        ApplePort.__init__(self, host, **kwargs)

This change didn&apos;t make it into your ChangeLog.

&gt; Tools/Scripts/webkitpy/layout_tests/port/win.py:79
&gt; -        ApplePort.__init__(self, host, **kwargs)
&gt;          self._operating_system = &apos;win&apos;
&gt; +        ApplePort.__init__(self, host, **kwargs)

Nor did this one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516087</commentid>
    <comment_count>13</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 11:34:54 -0800</bug_when>
    <thetext>&gt; This change didn&apos;t make it into your ChangeLog.

Oops.  I revised the patch after writing the ChangeLog.  Will fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516095</commentid>
    <comment_count>14</comment_count>
      <attachid>118080</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 11:38:09 -0800</bug_when>
    <thetext>Created attachment 118080
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516106</commentid>
    <comment_count>15</comment_count>
      <attachid>118080</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-12-06 11:48:03 -0800</bug_when>
    <thetext>Comment on attachment 118080
Patch

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

&gt; Tools/Scripts/webkitpy/layout_tests/port/webkit.py:354
&gt; +                _log.debug(&quot;Skipped does not exist: %s&quot; % filename)

It seems like skipped_file_search_paths() shouldn&apos;t be returning a directory that doesn&apos;t exist for mac-future. Can you add a fixme or file a separate bug for that? 

As an aside, I&apos;m not sure what the difference between self.port_name and self.name() is supposed to be; I can&apos;t remember if I added that or someone else did, but it seems like the two names are confusing so we should probably clean that up at some point as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516124</commentid>
    <comment_count>16</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 11:57:53 -0800</bug_when>
    <thetext>&gt; It seems like skipped_file_search_paths() shouldn&apos;t be returning a directory that doesn&apos;t exist for mac-future. Can you add a fixme or file a separate bug for that? 

Will do.

&gt; As an aside, I&apos;m not sure what the difference between self.port_name and self.name() is supposed to be; I can&apos;t remember if I added that or someone else did, but it seems like the two names are confusing so we should probably clean that up at some point as well.

That puzzled me as well.  It seems like a good longer term direction for this code is to separate out the parsing of port names, the state representing which port we&apos;re talking about, and the port-specific behaviors.  At the moment, they&apos;re fairly tightly bound together.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516128</commentid>
    <comment_count>17</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2011-12-06 11:59:32 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; That puzzled me as well.  It seems like a good longer term direction for this code is to separate out the parsing of port names, the state representing which port we&apos;re talking about, and the port-specific behaviors.  At the moment, they&apos;re fairly tightly bound together.

Agreed. Every time I&apos;ve tried to do this thus far it&apos;s devolved into a rewrite-the-world-at-once patch for everything under layout_tests/port/*, but I&apos;m due to try it again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516129</commentid>
    <comment_count>18</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 12:00:10 -0800</bug_when>
    <thetext>Committed r102161: &lt;http://trac.webkit.org/changeset/102161&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516242</commentid>
    <comment_count>19</comment_count>
      <attachid>118080</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-12-06 14:14:05 -0800</bug_when>
    <thetext>Comment on attachment 118080
Patch

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

&gt;&gt; Tools/Scripts/webkitpy/layout_tests/port/webkit.py:354
&gt;&gt; +                _log.debug(&quot;Skipped does not exist: %s&quot; % filename)
&gt; 
&gt; It seems like skipped_file_search_paths() shouldn&apos;t be returning a directory that doesn&apos;t exist for mac-future. Can you add a fixme or file a separate bug for that? 
&gt; 
&gt; As an aside, I&apos;m not sure what the difference between self.port_name and self.name() is supposed to be; I can&apos;t remember if I added that or someone else did, but it seems like the two names are confusing so we should probably clean that up at some point as well.

name() is the random, port-specific string which gets passed in and is parsed with different rules per-port.
port_name is supposed to be the root name of the port, like &quot;mac&quot;, &quot;win&quot;, &quot;chromium&quot;, &quot;qt&quot;, &quot;gtk&quot;, etc.
It was a somewhat failed attempt at preparing the Port clases for moving &quot;name&quot; parsing out of the Port constructors (into Factory or elsewhere).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516261</commentid>
    <comment_count>20</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-06 14:37:31 -0800</bug_when>
    <thetext>At least in some places port_name seems to include the version.  For example, the port_name argument to __init__ can include the version suffix.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118078</attachid>
            <date>2011-12-06 11:31:49 -0800</date>
            <delta_ts>2011-12-06 11:38:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-72748-20111206113148.patch</filename>
            <type>text/plain</type>
            <size>5678</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDEwMjE1NSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDI5IEBACisyMDExLTEyLTA2ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisK
KyAgICAgICAgTlJXVCBmYWlscyBvbiB1bnJlbGVhc2VkIHZlcnNpb25zIG9mIE1hYyBPUyBYCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mjc0OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEhvcGVmdWxseSB0
aGlzIHBhdGNoIHdpbGwgbWFrZSBOUldUIHdvcmsgb24gZnV0dXJlIHZlcnNpb25zIG9uIE1hYyBP
UyBYLgorICAgICAgICBNb3N0IG9mIHRoZSBpbmZyYXN0cnVjdHVyZSB3YXMgYWxyZWFkeSBpbiBw
bGFjZSwgYnV0IHRoZXJlIHdlcmUgc29tZQorICAgICAgICBhc3NlcnRzIHRoYXQgZmFpbGVkLiAg
SSd2ZSB0ZXN0ZWQgdGhpcyBwYXRjaCBieSBoYXhvcmluZyB0aGUgdmVyc2lvbgorICAgICAgICBk
ZXRlY3Rpb24gbG9naWMgdG8gc2ltdWxhdGUgYW4gdW5rbm93biB2ZXJzaW9uLiAgV2UgbWlnaHQg
bmVlZCB0bworICAgICAgICBpdGVyYXRlIGJhc2VkIG9uIGZlZWRiYWNrIGZyb20gZm9sa3Mgd2l0
aCBhIHJlYWwgZnV0dXJlIHZlcnNpb24uCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L2FwcGxlLnB5OgorICAgICAgICAoQXBwbGVQb3J0Ll9faW5pdF9fKToK
KyAgICAgICAgICAgIC0gbWFjLWZ1dHVyZSBpcyBhbiBhbGxvd2VkIHBvcnRfbmFtZSB0aGF0J3Mg
dXNlZCBpbnRlcm5hbGx5IGJ5CisgICAgICAgICAgICAgIHdlYmtpdHB5IHRvIHJlcHJlc2VudCBm
dXR1cmUgdmVyc2lvbnMgb2YgTWFjIE9TIFguCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9tYWNfdW5pdHRlc3QucHk6CisgICAgICAgICh0ZXN0X3ZlcnNpb25z
KToKKyAgICAgICAgICAgIC0gVGVzdCB0aGF0IHdlIGRvbid0IHRocm93IGV4Y2VwdGlvbnMgd2hl
biBkZWFsaW5nIHdpdGggZnV0dXJlCisgICAgICAgICAgICAgIHZlcnNpb25zIG9mIE1hYyBPUyBY
LgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5
OgorICAgICAgICAoV2ViS2l0UG9ydC5fZXhwZWN0YXRpb25zX2Zyb21fc2tpcHBlZF9maWxlcyk6
CisgICAgICAgICAgICAtIERlbW90ZSB0aGlzIGxvZ2dpbmcgbWVzc2FnZSB0byAiZGVidWciLiAg
SXQncyBleHBlY3RlZCB0aGF0CisgICAgICAgICAgICAgIG1hYy1mdXR1cmUgZG9lc24ndCBoYXZl
IGEgU2tpcHBlZCBmaWxlLgorCiAyMDExLTEyLTA2ICBUb21teSBXaWRlbmZseWNodCAgPHRvbW15
d0Bnb29nbGUuY29tPgogCiAgICAgICAgIEFkZGVkIG15c2VsZiBhcyBhIGNvbW1pdHRlci4KSW5k
ZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYXBwbGUucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9hcHBs
ZS5weQkocmV2aXNpb24gMTAyMTUyKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9hcHBsZS5weQkod29ya2luZyBjb3B5KQpAQCAtNzAsNyArNzAsOCBAQCBjbGFz
cyBBcHBsZVBvcnQoV2ViS2l0UG9ydCk6CiAgICAgICAgICAgICBzZWxmLl92ZXJzaW9uID0gc2Vs
Zi5fZGV0ZWN0X3ZlcnNpb24ob3NfdmVyc2lvbl9zdHJpbmcpIG9yIHNlbGYuRlVUVVJFX1ZFUlNJ
T04KICAgICAgICAgICAgIHNlbGYuX25hbWUgPSBzZWxmLnBvcnRfbmFtZSArICctJyArIHNlbGYu
X3ZlcnNpb24KICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGFzc2VydCBwb3J0X25hbWUgaW4g
c2VsZi5WRVJTSU9OX0ZBTExCQUNLX09SREVSLCAiJXMgaXMgbm90IGluICVzIiAlIChwb3J0X25h
bWUsIHNlbGYuVkVSU0lPTl9GQUxMQkFDS19PUkRFUikKKyAgICAgICAgICAgIGFsbG93ZWRfcG9y
dF9uYW1lcyA9IHNlbGYuVkVSU0lPTl9GQUxMQkFDS19PUkRFUiArIFtzZWxmLl9vcGVyYXRpbmdf
c3lzdGVtICsgIi1mdXR1cmUiXQorICAgICAgICAgICAgYXNzZXJ0IHBvcnRfbmFtZSBpbiBhbGxv
d2VkX3BvcnRfbmFtZXMsICIlcyBpcyBub3QgaW4gJXMiICUgKHBvcnRfbmFtZSwgYWxsb3dlZF9w
b3J0X25hbWVzKQogICAgICAgICAgICAgc2VsZi5fdmVyc2lvbiA9IHNlbGYuX3N0cmlwX3BvcnRf
bmFtZV9wcmVmaXgocG9ydF9uYW1lKQogCiAgICAgIyBGSVhNRTogQSBtb3JlIHNvcGhpc2l0Y2F0
ZWQgdmVyc2lvbiBvZiB0aGlzIGZ1bmN0aW9uIHNob3VsZCBtb3ZlIHRvIFdlYktpdFBvcnQgYW5k
IHJlcGxhY2UgYWxsIGNhbGxzIHRvIG5hbWUoKS4KSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFjLnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFjLnB5CShyZXZpc2lvbiAxMDIxNTIpCisrKyBU
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hYy5weQkod29ya2luZyBj
b3B5KQpAQCAtNzUsOCArNzUsOCBAQCBjbGFzcyBNYWNQb3J0KEFwcGxlUG9ydCk6CiAgICAgICAg
IHJldHVybiBvc192ZXJzaW9uKG9zX3ZlcnNpb25fc3RyaW5nKQogCiAgICAgZGVmIF9faW5pdF9f
KHNlbGYsIGhvc3QsICoqa3dhcmdzKToKLSAgICAgICAgQXBwbGVQb3J0Ll9faW5pdF9fKHNlbGYs
IGhvc3QsICoqa3dhcmdzKQogICAgICAgICBzZWxmLl9vcGVyYXRpbmdfc3lzdGVtID0gJ21hYycK
KyAgICAgICAgQXBwbGVQb3J0Ll9faW5pdF9fKHNlbGYsIGhvc3QsICoqa3dhcmdzKQogICAgICAg
ICBzZWxmLl9sZWFrX2RldGVjdG9yID0gTGVha0RldGVjdG9yKHNlbGYpCiAgICAgICAgIGlmIHNl
bGYuZ2V0X29wdGlvbigibGVha3MiKToKICAgICAgICAgICAgICMgRHVtcFJlbmRlclRyZWUgc2xv
d3MgZG93biBub3RpY2FibHkgaWYgd2UgcnVuIG1vcmUgdGhhbiBhYm91dCAxMDAwIHRlc3RzIGlu
IGEgYmF0Y2gKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQv
bWFjX3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvbWFjX3VuaXR0ZXN0LnB5CShyZXZpc2lvbiAxMDIxNTIpCisrKyBUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hY191bml0dGVzdC5weQkod29y
a2luZyBjb3B5KQpAQCAtMTA4LDkgKzEwOCwxMiBAQCBqYXZhLwogCiAgICAgICAgIHNlbGYuYXNz
ZXJ0X25hbWUoTm9uZSwgJzEwLjcnLCAnbWFjLWxpb24nKQogICAgICAgICBzZWxmLmFzc2VydF9u
YW1lKE5vbmUsICcxMC43LjMnLCAnbWFjLWxpb24nKQotICAgICAgICBzZWxmLmFzc2VydF9uYW1l
KE5vbmUsICcxMC44JywgJ21hYy1mdXR1cmUnKQogICAgICAgICBzZWxmLmFzc2VydF9uYW1lKCdt
YWMnLCAnMTAuNy4zJywgJ21hYy1saW9uJykKIAorICAgICAgICBzZWxmLmFzc2VydF9uYW1lKE5v
bmUsICcxMC45JywgJ21hYy1mdXR1cmUnKQorICAgICAgICBzZWxmLmFzc2VydF9uYW1lKCdtYWMn
LCAnMTAuOScsICdtYWMtZnV0dXJlJykKKyAgICAgICAgc2VsZi5hc3NlcnRfbmFtZSgnbWFjLWZ1
dHVyZScsICcxMC45JywgJ21hYy1mdXR1cmUnKQorCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2Vz
KEFzc2VydGlvbkVycm9yLCBzZWxmLmFzc2VydF9uYW1lLCBOb25lLCAnMTAuMy4xJywgJ3Nob3Vs
ZC1yYWlzZS1hc3NlcnRpb24tc28tdGhpcy12YWx1ZS1kb2VzLW5vdC1tYXR0ZXInKQogCiAgICAg
ZGVmIHRlc3RfaXNfdmVyc2lvbl9tZXRob2RzKHNlbGYpOgpJbmRleDogVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQucHkKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQucHkJKHJldmlzaW9uIDEw
MjE1MikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0
LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zNTEsNyArMzUxLDcgQEAgY2xhc3MgV2ViS2l0UG9ydChQ
b3J0KToKICAgICAgICAgZm9yIHNlYXJjaF9wYXRoIGluIHNlbGYuX3NraXBwZWRfZmlsZV9zZWFy
Y2hfcGF0aHMoKToKICAgICAgICAgICAgIGZpbGVuYW1lID0gc2VsZi5fZmlsZXN5c3RlbS5qb2lu
KHNlbGYuX3dlYmtpdF9iYXNlbGluZV9wYXRoKHNlYXJjaF9wYXRoKSwgIlNraXBwZWQiKQogICAg
ICAgICAgICAgaWYgbm90IHNlbGYuX2ZpbGVzeXN0ZW0uZXhpc3RzKGZpbGVuYW1lKToKLSAgICAg
ICAgICAgICAgICBfbG9nLndhcm4oIkZhaWxlZCB0byBvcGVuIFNraXBwZWQgZmlsZTogJXMiICUg
ZmlsZW5hbWUpCisgICAgICAgICAgICAgICAgX2xvZy5kZWJ1ZygiU2tpcHBlZCBkb2VzIG5vdCBl
eGlzdDogJXMiICUgZmlsZW5hbWUpCiAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAg
ICAgIF9sb2cuZGVidWcoIlVzaW5nIFNraXBwZWQgZmlsZTogJXMiICUgZmlsZW5hbWUpCiAgICAg
ICAgICAgICBza2lwcGVkX2ZpbGVfY29udGVudHMgPSBzZWxmLl9maWxlc3lzdGVtLnJlYWRfdGV4
dF9maWxlKGZpbGVuYW1lKQpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvcG9ydC93aW4ucHkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC93aW4ucHkJKHJldmlzaW9uIDEwMjE1MikKKysrIFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2luLnB5CSh3b3JraW5nIGNvcHkpCkBAIC03NSw4
ICs3NSw4IEBAIGNsYXNzIFdpblBvcnQoQXBwbGVQb3J0KToKICAgICAgICAgICAgIHJldHVybiBz
ZWxmLl92ZXJzaW9uX3N0cmluZ19mcm9tX3dpbmRvd3NfdmVyc2lvbl90dXBsZSh2ZXJzaW9uX3R1
cGxlKQogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGhvc3QsICoqa3dhcmdzKToKLSAgICAgICAg
QXBwbGVQb3J0Ll9faW5pdF9fKHNlbGYsIGhvc3QsICoqa3dhcmdzKQogICAgICAgICBzZWxmLl9v
cGVyYXRpbmdfc3lzdGVtID0gJ3dpbicKKyAgICAgICAgQXBwbGVQb3J0Ll9faW5pdF9fKHNlbGYs
IGhvc3QsICoqa3dhcmdzKQogCiAgICAgZGVmIGNvbXBhcmVfdGV4dChzZWxmLCBleHBlY3RlZF90
ZXh0LCBhY3R1YWxfdGV4dCk6CiAgICAgICAgICMgU2FuaXR5IHdhcyByZXN0b3JlZCBpbiBXSzIs
IHNvIHdlIGRvbid0IG5lZWQgdGhpcyBoYWNrIHRoZXJlLgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118080</attachid>
            <date>2011-12-06 11:38:09 -0800</date>
            <delta_ts>2011-12-06 14:14:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-72748-20111206113808.patch</filename>
            <type>text/plain</type>
            <size>5989</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDEwMjE1OSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDM1IEBACisyMDExLTEyLTA2ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisK
KyAgICAgICAgTlJXVCBmYWlscyBvbiB1bnJlbGVhc2VkIHZlcnNpb25zIG9mIE1hYyBPUyBYCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mjc0OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEhvcGVmdWxseSB0
aGlzIHBhdGNoIHdpbGwgbWFrZSBOUldUIHdvcmsgb24gZnV0dXJlIHZlcnNpb25zIG9uIE1hYyBP
UyBYLgorICAgICAgICBNb3N0IG9mIHRoZSBpbmZyYXN0cnVjdHVyZSB3YXMgYWxyZWFkeSBpbiBw
bGFjZSwgYnV0IHRoZXJlIHdlcmUgc29tZQorICAgICAgICBhc3NlcnRzIHRoYXQgZmFpbGVkLiAg
SSd2ZSB0ZXN0ZWQgdGhpcyBwYXRjaCBieSBoYXhvcmluZyB0aGUgdmVyc2lvbgorICAgICAgICBk
ZXRlY3Rpb24gbG9naWMgdG8gc2ltdWxhdGUgYW4gdW5rbm93biB2ZXJzaW9uLiAgV2UgbWlnaHQg
bmVlZCB0bworICAgICAgICBpdGVyYXRlIGJhc2VkIG9uIGZlZWRiYWNrIGZyb20gZm9sa3Mgd2l0
aCBhIHJlYWwgZnV0dXJlIHZlcnNpb24uCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L2FwcGxlLnB5OgorICAgICAgICAoQXBwbGVQb3J0Ll9faW5pdF9fKToK
KyAgICAgICAgICAgIC0gbWFjLWZ1dHVyZSBpcyBhbiBhbGxvd2VkIHBvcnRfbmFtZSB0aGF0J3Mg
dXNlZCBpbnRlcm5hbGx5IGJ5CisgICAgICAgICAgICAgIHdlYmtpdHB5IHRvIHJlcHJlc2VudCBm
dXR1cmUgdmVyc2lvbnMgb2YgTWFjIE9TIFguCisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9tYWNfdW5pdHRlc3QucHk6CisgICAgICAgICh0ZXN0X3ZlcnNpb25z
KToKKyAgICAgICAgICAgIC0gVGVzdCB0aGF0IHdlIGRvbid0IHRocm93IGV4Y2VwdGlvbnMgd2hl
biBkZWFsaW5nIHdpdGggZnV0dXJlCisgICAgICAgICAgICAgIHZlcnNpb25zIG9mIE1hYyBPUyBY
LgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5
OgorICAgICAgICAoV2ViS2l0UG9ydC5fZXhwZWN0YXRpb25zX2Zyb21fc2tpcHBlZF9maWxlcyk6
CisgICAgICAgICAgICAtIERlbW90ZSB0aGlzIGxvZ2dpbmcgbWVzc2FnZSB0byAiZGVidWciLiAg
SXQncyBleHBlY3RlZCB0aGF0CisgICAgICAgICAgICAgIG1hYy1mdXR1cmUgZG9lc24ndCBoYXZl
IGEgU2tpcHBlZCBmaWxlLgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvbWFjLnB5OgorICAgICAgICAoTWFjUG9ydC5fX2luaXRfXyk6CisgICAgICAgICogU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93aW4ucHk6CisgICAgICAgIChXaW5Qb3J0
Ll9faW5pdF9fKToKKyAgICAgICAgICAgIC0gUmUtb3JkZXIgc29tZSBjb2RlIGluIHRoZXNlIGNv
bnN0cnVjdG9ycyBzbyB0aGF0CisgICAgICAgICAgICAgIHNlbGYuX29wZXJhdGluZ19zeXN0ZW0g
aXMgYXZhaWxhYmxlIHRvIHRoZSBBcHBsZVBvcnQgY29uc3RydWN0b3IuCisKIDIwMTEtMTItMDYg
IFRvbW15IFdpZGVuZmx5Y2h0ICA8dG9tbXl3QGdvb2dsZS5jb20+CiAKICAgICAgICAgQWRkZWQg
bXlzZWxmIGFzIGEgY29tbWl0dGVyLgpJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC9hcHBsZS5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L2FwcGxlLnB5CShyZXZpc2lvbiAxMDIxNTIpCisrKyBUb29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2FwcGxlLnB5CSh3b3JraW5nIGNv
cHkpCkBAIC03MCw3ICs3MCw4IEBAIGNsYXNzIEFwcGxlUG9ydChXZWJLaXRQb3J0KToKICAgICAg
ICAgICAgIHNlbGYuX3ZlcnNpb24gPSBzZWxmLl9kZXRlY3RfdmVyc2lvbihvc192ZXJzaW9uX3N0
cmluZykgb3Igc2VsZi5GVVRVUkVfVkVSU0lPTgogICAgICAgICAgICAgc2VsZi5fbmFtZSA9IHNl
bGYucG9ydF9uYW1lICsgJy0nICsgc2VsZi5fdmVyc2lvbgogICAgICAgICBlbHNlOgotICAgICAg
ICAgICAgYXNzZXJ0IHBvcnRfbmFtZSBpbiBzZWxmLlZFUlNJT05fRkFMTEJBQ0tfT1JERVIsICIl
cyBpcyBub3QgaW4gJXMiICUgKHBvcnRfbmFtZSwgc2VsZi5WRVJTSU9OX0ZBTExCQUNLX09SREVS
KQorICAgICAgICAgICAgYWxsb3dlZF9wb3J0X25hbWVzID0gc2VsZi5WRVJTSU9OX0ZBTExCQUNL
X09SREVSICsgW3NlbGYuX29wZXJhdGluZ19zeXN0ZW0gKyAiLWZ1dHVyZSJdCisgICAgICAgICAg
ICBhc3NlcnQgcG9ydF9uYW1lIGluIGFsbG93ZWRfcG9ydF9uYW1lcywgIiVzIGlzIG5vdCBpbiAl
cyIgJSAocG9ydF9uYW1lLCBhbGxvd2VkX3BvcnRfbmFtZXMpCiAgICAgICAgICAgICBzZWxmLl92
ZXJzaW9uID0gc2VsZi5fc3RyaXBfcG9ydF9uYW1lX3ByZWZpeChwb3J0X25hbWUpCiAKICAgICAj
IEZJWE1FOiBBIG1vcmUgc29waGlzaXRjYXRlZCB2ZXJzaW9uIG9mIHRoaXMgZnVuY3Rpb24gc2hv
dWxkIG1vdmUgdG8gV2ViS2l0UG9ydCBhbmQgcmVwbGFjZSBhbGwgY2FsbHMgdG8gbmFtZSgpLgpJ
bmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMucHkKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWMu
cHkJKHJldmlzaW9uIDEwMjE1MikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvbWFjLnB5CSh3b3JraW5nIGNvcHkpCkBAIC03NSw4ICs3NSw4IEBAIGNsYXNzIE1h
Y1BvcnQoQXBwbGVQb3J0KToKICAgICAgICAgcmV0dXJuIG9zX3ZlcnNpb24ob3NfdmVyc2lvbl9z
dHJpbmcpCiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdCwgKiprd2FyZ3MpOgotICAgICAg
ICBBcHBsZVBvcnQuX19pbml0X18oc2VsZiwgaG9zdCwgKiprd2FyZ3MpCiAgICAgICAgIHNlbGYu
X29wZXJhdGluZ19zeXN0ZW0gPSAnbWFjJworICAgICAgICBBcHBsZVBvcnQuX19pbml0X18oc2Vs
ZiwgaG9zdCwgKiprd2FyZ3MpCiAgICAgICAgIHNlbGYuX2xlYWtfZGV0ZWN0b3IgPSBMZWFrRGV0
ZWN0b3Ioc2VsZikKICAgICAgICAgaWYgc2VsZi5nZXRfb3B0aW9uKCJsZWFrcyIpOgogICAgICAg
ICAgICAgIyBEdW1wUmVuZGVyVHJlZSBzbG93cyBkb3duIG5vdGljYWJseSBpZiB3ZSBydW4gbW9y
ZSB0aGFuIGFib3V0IDEwMDAgdGVzdHMgaW4gYSBiYXRjaApJbmRleDogVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWNfdW5pdHRlc3QucHkKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9tYWNfdW5pdHRlc3QucHkJ
KHJldmlzaW9uIDEwMjE1MikKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3BvcnQvbWFjX3VuaXR0ZXN0LnB5CSh3b3JraW5nIGNvcHkpCkBAIC0xMDgsOSArMTA4LDEyIEBA
IGphdmEvCiAKICAgICAgICAgc2VsZi5hc3NlcnRfbmFtZShOb25lLCAnMTAuNycsICdtYWMtbGlv
bicpCiAgICAgICAgIHNlbGYuYXNzZXJ0X25hbWUoTm9uZSwgJzEwLjcuMycsICdtYWMtbGlvbicp
Ci0gICAgICAgIHNlbGYuYXNzZXJ0X25hbWUoTm9uZSwgJzEwLjgnLCAnbWFjLWZ1dHVyZScpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0X25hbWUoJ21hYycsICcxMC43LjMnLCAnbWFjLWxpb24nKQogCisg
ICAgICAgIHNlbGYuYXNzZXJ0X25hbWUoTm9uZSwgJzEwLjknLCAnbWFjLWZ1dHVyZScpCisgICAg
ICAgIHNlbGYuYXNzZXJ0X25hbWUoJ21hYycsICcxMC45JywgJ21hYy1mdXR1cmUnKQorICAgICAg
ICBzZWxmLmFzc2VydF9uYW1lKCdtYWMtZnV0dXJlJywgJzEwLjknLCAnbWFjLWZ1dHVyZScpCisK
ICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQXNzZXJ0aW9uRXJyb3IsIHNlbGYuYXNzZXJ0X25h
bWUsIE5vbmUsICcxMC4zLjEnLCAnc2hvdWxkLXJhaXNlLWFzc2VydGlvbi1zby10aGlzLXZhbHVl
LWRvZXMtbm90LW1hdHRlcicpCiAKICAgICBkZWYgdGVzdF9pc192ZXJzaW9uX21ldGhvZHMoc2Vs
Zik6CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dlYmtp
dC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9w
b3J0L3dlYmtpdC5weQkocmV2aXNpb24gMTAyMTUyKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvcG9ydC93ZWJraXQucHkJKHdvcmtpbmcgY29weSkKQEAgLTM1MSw3ICsz
NTEsNyBAQCBjbGFzcyBXZWJLaXRQb3J0KFBvcnQpOgogICAgICAgICBmb3Igc2VhcmNoX3BhdGgg
aW4gc2VsZi5fc2tpcHBlZF9maWxlX3NlYXJjaF9wYXRocygpOgogICAgICAgICAgICAgZmlsZW5h
bWUgPSBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5fd2Via2l0X2Jhc2VsaW5lX3BhdGgoc2Vh
cmNoX3BhdGgpLCAiU2tpcHBlZCIpCiAgICAgICAgICAgICBpZiBub3Qgc2VsZi5fZmlsZXN5c3Rl
bS5leGlzdHMoZmlsZW5hbWUpOgotICAgICAgICAgICAgICAgIF9sb2cud2FybigiRmFpbGVkIHRv
IG9wZW4gU2tpcHBlZCBmaWxlOiAlcyIgJSBmaWxlbmFtZSkKKyAgICAgICAgICAgICAgICBfbG9n
LmRlYnVnKCJTa2lwcGVkIGRvZXMgbm90IGV4aXN0OiAlcyIgJSBmaWxlbmFtZSkKICAgICAgICAg
ICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgX2xvZy5kZWJ1ZygiVXNpbmcgU2tpcHBlZCBm
aWxlOiAlcyIgJSBmaWxlbmFtZSkKICAgICAgICAgICAgIHNraXBwZWRfZmlsZV9jb250ZW50cyA9
IHNlbGYuX2ZpbGVzeXN0ZW0ucmVhZF90ZXh0X2ZpbGUoZmlsZW5hbWUpCkluZGV4OiBUb29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dpbi5weQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dpbi5weQkocmV2aXNpb24g
MTAyMTUyKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93aW4u
cHkJKHdvcmtpbmcgY29weSkKQEAgLTc1LDggKzc1LDggQEAgY2xhc3MgV2luUG9ydChBcHBsZVBv
cnQpOgogICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3ZlcnNpb25fc3RyaW5nX2Zyb21fd2luZG93
c192ZXJzaW9uX3R1cGxlKHZlcnNpb25fdHVwbGUpCiAKICAgICBkZWYgX19pbml0X18oc2VsZiwg
aG9zdCwgKiprd2FyZ3MpOgotICAgICAgICBBcHBsZVBvcnQuX19pbml0X18oc2VsZiwgaG9zdCwg
Kiprd2FyZ3MpCiAgICAgICAgIHNlbGYuX29wZXJhdGluZ19zeXN0ZW0gPSAnd2luJworICAgICAg
ICBBcHBsZVBvcnQuX19pbml0X18oc2VsZiwgaG9zdCwgKiprd2FyZ3MpCiAKICAgICBkZWYgY29t
cGFyZV90ZXh0KHNlbGYsIGV4cGVjdGVkX3RleHQsIGFjdHVhbF90ZXh0KToKICAgICAgICAgIyBT
YW5pdHkgd2FzIHJlc3RvcmVkIGluIFdLMiwgc28gd2UgZG9uJ3QgbmVlZCB0aGlzIGhhY2sgdGhl
cmUuCg==
</data>
<flag name="review"
          id="117729"
          type_id="1"
          status="+"
          setter="dpranke"
    />
          </attachment>
      

    </bug>

</bugzilla>