<?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>81358</bug_id>
          
          <creation_ts>2012-03-16 09:18:18 -0700</creation_ts>
          <short_desc>New PageCache histogram for tracking the highest leverage frame reject reasons.</short_desc>
          <delta_ts>2012-03-20 09:43:39 -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>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="Gavin Peters">gavinp</reporter>
          <assigned_to name="Gavin Peters">gavinp</assigned_to>
          <cc>beidson</cc>
    
    <cc>cbentzel</cc>
    
    <cc>dinu.jacob</cc>
    
    <cc>mitz</cc>
    
    <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>580570</commentid>
    <comment_count>0</comment_count>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2012-03-16 09:18:18 -0700</bug_when>
    <thetext>New PageCache histogram for tracking the highest leverage frame reject reasons.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580572</commentid>
    <comment_count>1</comment_count>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2012-03-16 09:21:48 -0700</bug_when>
    <thetext>The current chromium FrameClientImpl always denies page cache; but that&apos;s easily fixable.  This histogram tracks which rejection causes occur alone with that cause.  I&apos;m particularly interested in knowing how many more pages would work in the page cache if we could get plugins in.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580574</commentid>
    <comment_count>2</comment_count>
      <attachid>132295</attachid>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2012-03-16 09:24:04 -0700</bug_when>
    <thetext>Created attachment 132295
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580575</commentid>
    <comment_count>3</comment_count>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2012-03-16 09:25:30 -0700</bug_when>
    <thetext>Brady, WDYT?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>582148</commentid>
    <comment_count>4</comment_count>
      <attachid>132295</attachid>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2012-03-19 13:30:10 -0700</bug_when>
    <thetext>Comment on attachment 132295
Patch

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

&gt; Source/WebCore/history/PageCache.cpp:281
&gt; +        ASSERT(frameRejectReasons &amp; (1 &lt;&lt; ClientDeniesCaching));

Should I add:
COMPILE_ASSERT(NumberOfReasonsPageCannotBeInPageCache &lt;= 32, ReasonPageCannotBeInPageCacheDoesNotFitIn32Bits);

here?  I don&apos;t expect the code will live that long, but it seems a good idea.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>582153</commentid>
    <comment_count>5</comment_count>
      <attachid>132295</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-19 13:32:22 -0700</bug_when>
    <thetext>Comment on attachment 132295
Patch

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

&gt; Source/WebCore/history/PageCache.cpp:282
&gt; +        const unsigned v = frameRejectReasons &amp; ~(1 &lt;&lt; ClientDeniesCaching);

v ?  Can we give this variable a name that explains what it is?  Perhaps reasonsForRejectingFrameOtherThanClientDeniesCaching?

&gt; Source/WebCore/history/PageCache.cpp:294
&gt; +        int index = 0;
&gt; +        if (v &amp; 0xFFFF0000)
&gt; +            index = 16;
&gt; +        if (v &amp; 0xFF00FF00)
&gt; +            index += 8;
&gt; +        if (v &amp; 0xF0F0F0F0)
&gt; +            index += 4;
&gt; +        if (v &amp; 0xCCCCCCCC)
&gt; +            index += 2;
&gt; +        if (v &amp; 0xAAAAAAAA)
&gt; +            index += 1;

Can you factor this out into a helper function.  This logic seems pretty general.  That will help folks understand what this code is doing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>582972</commentid>
    <comment_count>6</comment_count>
      <attachid>132806</attachid>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2012-03-20 05:21:55 -0700</bug_when>
    <thetext>Created attachment 132806
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>582973</commentid>
    <comment_count>7</comment_count>
      <attachid>132806</attachid>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2012-03-20 05:22:29 -0700</bug_when>
    <thetext>Comment on attachment 132806
Patch

Here&apos;s the remediated patch; I&apos;ll let this bake on EWS for a bit, and cq+ it later today.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>582980</commentid>
    <comment_count>8</comment_count>
      <attachid>132806</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-03-20 05:30:25 -0700</bug_when>
    <thetext>Comment on attachment 132806
Patch

Attachment 132806 did not pass win-ews (win):
Output: http://queues.webkit.org/results/11994271</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>582982</commentid>
    <comment_count>9</comment_count>
      <attachid>132808</attachid>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2012-03-20 05:34:36 -0700</bug_when>
    <thetext>Created attachment 132808
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583053</commentid>
    <comment_count>10</comment_count>
      <attachid>132808</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-20 07:31:34 -0700</bug_when>
    <thetext>Comment on attachment 132808
Patch

Clearing flags on attachment: 132808

Committed r111391: &lt;http://trac.webkit.org/changeset/111391&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583054</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-20 07:31:39 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583113</commentid>
    <comment_count>12</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-03-20 08:59:42 -0700</bug_when>
    <thetext>It broke debug builds:
cc1plus: warnings being treated as errors
../../../../Source/WebCore/history/PageCache.cpp:86: error: ‘int WebCore::indexOfSingleBit(int32_t)’ defined but not used

It seems some ifdef guard is missing somewhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583145</commentid>
    <comment_count>13</comment_count>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2012-03-20 09:38:15 -0700</bug_when>
    <thetext>Yes, I did.  Patch coming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583153</commentid>
    <comment_count>14</comment_count>
    <who name="Gavin Peters">gavinp</who>
    <bug_when>2012-03-20 09:43:39 -0700</bug_when>
    <thetext>mitz fixed that failure in r111391.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132295</attachid>
            <date>2012-03-16 09:24:04 -0700</date>
            <delta_ts>2012-03-20 05:21:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81358-20120316122403.patch</filename>
            <type>text/plain</type>
            <size>2846</size>
            <attacher name="Gavin Peters">gavinp</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEwNjIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWNkZmRkOTY1NDc5YTIz
N2ZjZGFiY2M2OTBiNTFjZGMyMTU4NTk4Yy4uNWFmMDg5OWYzZmRjYzdjOTExYjRjMWQxMTlmN2Ri
NjIyZGJlNjUwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTAzLTE2ICBHYXZp
biBQZXRlcnMgIDxnYXZpbnBAY2hyb21pdW0ub3JnPgorCisgICAgICAgIE5ldyBQYWdlQ2FjaGUg
aGlzdG9ncmFtIGZvciB0cmFja2luZyB0aGUgaGlnaGVzdCBsZXZlcmFnZSBmcmFtZSByZWplY3Qg
cmVhc29ucy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTgxMzU4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGhlIGN1cnJlbnQgY2hyb21pdW0gRnJhbWVDbGllbnRJbXBsIGFsd2F5cyBkZW5pZXMgcGFnZSBj
YWNoZTsgYnV0CisgICAgICAgIHRoYXQncyBlYXNpbHkgZml4YWJsZS4gIFRoaXMgaGlzdG9ncmFt
IHRyYWNrcyB3aGljaCByZWplY3Rpb24KKyAgICAgICAgY2F1c2VzIG9jY3VyIGFsb25lIHdpdGgg
dGhhdCBjYXVzZS4gIEknbSBwYXJ0aWN1bGFybHkgaW50ZXJlc3RlZAorICAgICAgICBpbiBrbm93
aW5nIGhvdyBtYW55IG1vcmUgcGFnZXMgd291bGQgd29yayBpbiB0aGUgcGFnZSBjYWNoZSBpZiB3
ZQorICAgICAgICBjb3VsZCBnZXQgcGx1Z2lucyBpbi4KKworICAgICAgICAqIGhpc3RvcnkvUGFn
ZUNhY2hlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmxvZ0NhbkNhY2hlUGFnZURlY2lzaW9uKToK
KwogMjAxMi0wMy0xNCAgR2F2aW4gUGV0ZXJzICA8Z2F2aW5wQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBBZGQgYXNzZXJ0cyBhbmQgaW1wcm92ZSBsb2dnaW5nIGluIFBhZ2VDYWNoZS4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNwcAppbmRleCAzZWE0YWE5NGU3MTc4MmQ4NDEwOTVmYjEy
N2YwYTA5NjU0NDYzMDJmLi43NjljZjU1MjRhYzZhOTIwNGFhMWUwMzhjYzJmZDA2MzZhMWFiMTkw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9oaXN0b3J5L1BhZ2VDYWNoZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvaGlzdG9yeS9QYWdlQ2FjaGUuY3BwCkBAIC0yNzIsNiArMjcyLDMwIEBA
IHN0YXRpYyB2b2lkIGxvZ0NhbkNhY2hlUGFnZURlY2lzaW9uKFBhZ2UqIHBhZ2UpCiAgICAgICAg
ICAgICBIaXN0b2dyYW1TdXBwb3J0OjpoaXN0b2dyYW1FbnVtZXJhdGlvbigiUGFnZUNhY2hlLkZy
YW1lUmVqZWN0UmVhc29uQnlQYWdlIiwgaSwgTnVtYmVyT2ZSZWFzb25zRnJhbWVzQ2Fubm90QmVJ
blBhZ2VDYWNoZSk7CiAgICAgICAgIH0KICAgICB9CisjaWYgUExBVEZPUk0oQ0hST01JVU0pCisg
ICAgLy8gVGhpcyBzdHJhbmdlbHkgc3BlY2lmaWMgaGlzdG9ncmFtIGlzIHBhcnRpY3VsYXIgdG8g
Y2hyb21pdW06IGFzIG9mIDIwMTItMDMtMTYsIHRoZSBGcmFtZUNsaWVudEltcGwgYWx3YXlzIGRl
bmllcyBjYWNoaW5nLCBzbworICAgIC8vIG9mIHBhcnRpY3VsYXIgaW50ZXJlc3QgYXJlIHNvbGl0
YXJ5IHJlYXNvbnMgb3RoZXIgdGhhbiB0aGUgZnJhbWVSZWplY3RSZWFzb25zLiBJZiB3ZSBkaWRu
J3QgZ2V0IHRvIHRoZSBDbGllbnREZW5pZXNDYWNoaW5nLCB3ZQorICAgIC8vIHRvb2sgdGhlIGVh
cmx5IGV4aXQgZm9yIHRoZSBib3JpbmcgcmVhc29uIE5vRG9jdW1lbnRMb2FkZXIsIHNvIHdlIHNo
b3VsZCBoYXZlIG9ubHkgb25lIHJlYXNvbiwgYW5kIG5vdCB0d28uCisgICAgLy8gRklYTUU6IHJl
bW92ZSB0aGlzIGhpc3RvZ3JhbSBhZnRlciBkYXRhIGlzIGdhdGhlcmVkLgorICAgIGlmIChmcmFt
ZVJlYXNvbkNvdW50ID09IDIpIHsKKyAgICAgICAgQVNTRVJUKGZyYW1lUmVqZWN0UmVhc29ucyAm
ICgxIDw8IENsaWVudERlbmllc0NhY2hpbmcpKTsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgdiA9
IGZyYW1lUmVqZWN0UmVhc29ucyAmIH4oMSA8PCBDbGllbnREZW5pZXNDYWNoaW5nKTsKKyAgICAg
ICAgLy8gZmluZCB0aGUgaW5kZXggb2YgdGhlIHNpbmdsZSBiaXQgc2V0IGluIHYuCisgICAgICAg
IGludCBpbmRleCA9IDA7CisgICAgICAgIGlmICh2ICYgMHhGRkZGMDAwMCkKKyAgICAgICAgICAg
IGluZGV4ID0gMTY7CisgICAgICAgIGlmICh2ICYgMHhGRjAwRkYwMCkKKyAgICAgICAgICAgIGlu
ZGV4ICs9IDg7CisgICAgICAgIGlmICh2ICYgMHhGMEYwRjBGMCkKKyAgICAgICAgICAgIGluZGV4
ICs9IDQ7CisgICAgICAgIGlmICh2ICYgMHhDQ0NDQ0NDQykKKyAgICAgICAgICAgIGluZGV4ICs9
IDI7CisgICAgICAgIGlmICh2ICYgMHhBQUFBQUFBQSkKKyAgICAgICAgICAgIGluZGV4ICs9IDE7
CisgICAgICAgIEhpc3RvZ3JhbVN1cHBvcnQ6Omhpc3RvZ3JhbUVudW1lcmF0aW9uKCJQYWdlQ2Fj
aGUuRnJhbWVSZWplY3RSZWFzb25CeVBhZ2VXaGVuU2luZ2xlRXhjbHVkaW5nRnJhbWVDbGllbnQi
LCBpbmRleCwgTnVtYmVyT2ZSZWFzb25zUGFnZXNDYW5ub3RCZUluUGFnZUNhY2hlKTsKKyAgICB9
CisjZW5kaWYKKwogICAgIEhpc3RvZ3JhbVN1cHBvcnQ6Omhpc3RvZ3JhbUVudW1lcmF0aW9uKCJQ
YWdlQ2FjaGUuRnJhbWVSZWplY3RSZWFzb25Db3VudEJ5UGFnZSIsIGZyYW1lUmVhc29uQ291bnQs
IDEgKyBOdW1iZXJPZlJlYXNvbnNGcmFtZXNDYW5ub3RCZUluUGFnZUNhY2hlKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132806</attachid>
            <date>2012-03-20 05:21:55 -0700</date>
            <delta_ts>2012-03-20 05:34:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81358-20120320082153.patch</filename>
            <type>text/plain</type>
            <size>3432</size>
            <attacher name="Gavin Peters">gavinp</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTExMzgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDg5ODRjOGFlY2I3ODMy
MjcwZDI4N2Q4OTIyYTg2YTk0YjQ0OGQ2YS4uM2MzOTk4NzBmOTYyM2VhZDJiNzYxNmMzMWU3NmZk
YzI0NDMzODRmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTAzLTE2ICBHYXZp
biBQZXRlcnMgIDxnYXZpbnBAY2hyb21pdW0ub3JnPgorCisgICAgICAgIE5ldyBQYWdlQ2FjaGUg
aGlzdG9ncmFtIGZvciB0cmFja2luZyB0aGUgaGlnaGVzdCBsZXZlcmFnZSBmcmFtZSByZWplY3Qg
cmVhc29ucy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTgxMzU4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKworICAgICAgICBUaGUg
Y3VycmVudCBjaHJvbWl1bSBGcmFtZUNsaWVudEltcGwgYWx3YXlzIGRlbmllcyBwYWdlIGNhY2hl
OyBidXQKKyAgICAgICAgdGhhdCdzIGVhc2lseSBmaXhhYmxlLiAgVGhpcyBoaXN0b2dyYW0gdHJh
Y2tzIHdoaWNoIHJlamVjdGlvbgorICAgICAgICBjYXVzZXMgb2NjdXIgYWxvbmUgd2l0aCB0aGF0
IGNhdXNlLiAgSSdtIHBhcnRpY3VsYXJseSBpbnRlcmVzdGVkCisgICAgICAgIGluIGtub3dpbmcg
aG93IG1hbnkgbW9yZSBwYWdlcyB3b3VsZCB3b3JrIGluIHRoZSBwYWdlIGNhY2hlIGlmIHdlCisg
ICAgICAgIGNvdWxkIGdldCBwbHVnaW5zIGluLgorCisgICAgICAgICogaGlzdG9yeS9QYWdlQ2Fj
aGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6bG9nQ2FuQ2FjaGVQYWdlRGVjaXNpb24pOgorCiAy
MDEyLTAzLTIwICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFdlYiBJbnNwZWN0b3I6IHByb3ZpZGUgY2xhc3MgbmFtZSBmaWx0ZXIgZm9yICJjb21wYXJp
c29uIiB2aWV3IGluIGhlYXAgcHJvZmlsZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2hp
c3RvcnkvUGFnZUNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNw
cAppbmRleCAwNmQ0OGQ1Yzc1MWFmMDNkOGRjMzc5ZjE5OWZlOWQ0ZTM3ODJhZmY1Li4wNGI3MzM3
NTFhYmJjMzlmMjE2ZDkzM2M2NWNmNzNlOGUwNmRkYzcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9oaXN0b3J5L1BhZ2VDYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9Q
YWdlQ2FjaGUuY3BwCkBAIC04Myw2ICs4MywyMiBAQCBlbnVtIFJlYXNvbkZyYW1lQ2Fubm90QmVJ
blBhZ2VDYWNoZSB7CiB9OwogQ09NUElMRV9BU1NFUlQoTnVtYmVyT2ZSZWFzb25zRnJhbWVzQ2Fu
bm90QmVJblBhZ2VDYWNoZSA8PSBzaXplb2YodW5zaWduZWQpKjgsIFJlYXNvbkZyYW1lQ2Fubm90
QmVJblBhZ2VDYWNoZURvZXNOb3RGaXRJbkJpdG1hcCk7CiAKK3N0YXRpYyBpbnQgaW5kZXhPZlNp
bmdsZUJpdChpbnQzMiB2KQoreworICAgIGludCBpbmRleCA9IDA7CisgICAgaWYgKHYgJiAweEZG
RkYwMDAwKQorICAgICAgICBpbmRleCA9IDE2OworICAgIGlmICh2ICYgMHhGRjAwRkYwMCkKKyAg
ICAgICAgaW5kZXggKz0gODsKKyAgICBpZiAodiAmIDB4RjBGMEYwRjApCisgICAgICAgIGluZGV4
ICs9IDQ7CisgICAgaWYgKHYgJiAweENDQ0NDQ0NDKQorICAgICAgICBpbmRleCArPSAyOworICAg
IGlmICh2ICYgMHhBQUFBQUFBQSkKKyAgICAgICAgaW5kZXggKz0gMTsKKyAgICByZXR1cm4gaW5k
ZXg7Cit9CisKIHN0YXRpYyB1bnNpZ25lZCBsb2dDYW5DYWNoZUZyYW1lRGVjaXNpb24oRnJhbWUq
IGZyYW1lLCBpbnQgaW5kZW50TGV2ZWwpCiB7CiAjaWZkZWYgTkRFQlVHCkBAIC0yNzIsNiArMjg4
LDIwIEBAIHN0YXRpYyB2b2lkIGxvZ0NhbkNhY2hlUGFnZURlY2lzaW9uKFBhZ2UqIHBhZ2UpCiAg
ICAgICAgICAgICBIaXN0b2dyYW1TdXBwb3J0OjpoaXN0b2dyYW1FbnVtZXJhdGlvbigiUGFnZUNh
Y2hlLkZyYW1lUmVqZWN0UmVhc29uQnlQYWdlIiwgaSwgTnVtYmVyT2ZSZWFzb25zRnJhbWVzQ2Fu
bm90QmVJblBhZ2VDYWNoZSk7CiAgICAgICAgIH0KICAgICB9CisjaWYgUExBVEZPUk0oQ0hST01J
VU0pCisgICAgLy8gVGhpcyBzdHJhbmdlbHkgc3BlY2lmaWMgaGlzdG9ncmFtIGlzIHBhcnRpY3Vs
YXIgdG8gY2hyb21pdW06IGFzIG9mIDIwMTItMDMtMTYsIHRoZSBGcmFtZUNsaWVudEltcGwgYWx3
YXlzIGRlbmllcyBjYWNoaW5nLCBzbworICAgIC8vIG9mIHBhcnRpY3VsYXIgaW50ZXJlc3QgYXJl
IHNvbGl0YXJ5IHJlYXNvbnMgb3RoZXIgdGhhbiB0aGUgZnJhbWVSZWplY3RSZWFzb25zLiBJZiB3
ZSBkaWRuJ3QgZ2V0IHRvIHRoZSBDbGllbnREZW5pZXNDYWNoaW5nLCB3ZQorICAgIC8vIHRvb2sg
dGhlIGVhcmx5IGV4aXQgZm9yIHRoZSBib3JpbmcgcmVhc29uIE5vRG9jdW1lbnRMb2FkZXIsIHNv
IHdlIHNob3VsZCBoYXZlIG9ubHkgb25lIHJlYXNvbiwgYW5kIG5vdCB0d28uCisgICAgLy8gRklY
TUU6IHJlbW92ZSB0aGlzIGhpc3RvZ3JhbSBhZnRlciBkYXRhIGlzIGdhdGhlcmVkLgorICAgIGlm
IChmcmFtZVJlYXNvbkNvdW50ID09IDIpIHsKKyAgICAgICAgQVNTRVJUKGZyYW1lUmVqZWN0UmVh
c29ucyAmICgxIDw8IENsaWVudERlbmllc0NhY2hpbmcpKTsKKyAgICAgICAgY29uc3QgdW5zaWdu
ZWQgc2luZ2xlUmVhc29uRm9yUmVqZWN0aW5nRnJhbWVPdGhlclRoYW5DbGllbnREZW5pZXNDYWNo
aW5nID0gZnJhbWVSZWplY3RSZWFzb25zICYgfigxIDw8IENsaWVudERlbmllc0NhY2hpbmcpOwor
ICAgICAgICBDT01QSUxFX0FTU0VSVChOdW1iZXJPZlJlYXNvbnNQYWdlc0Nhbm5vdEJlSW5QYWdl
Q2FjaGUgPD0gMzIsIFJlYXNvblBhZ2VDYW5ub3RCZUluUGFnZUNhY2hlRG9lc05vdEZpdEluSW50
MzIpOworICAgICAgICBjb25zdCBpbnQgaW5kZXggPSBpbmRleE9mU2luZ2xlQml0KHN0YXRpY19j
YXN0PGludDMyX3Q+KHNpbmdsZVJlYXNvbkZvclJlamVjdGluZ0ZyYW1lT3RoZXJUaGFuQ2xpZW50
RGVuaWVzQ2FjaGluZykpOworICAgICAgICBIaXN0b2dyYW1TdXBwb3J0OjpoaXN0b2dyYW1FbnVt
ZXJhdGlvbigiUGFnZUNhY2hlLkZyYW1lUmVqZWN0UmVhc29uQnlQYWdlV2hlblNpbmdsZUV4Y2x1
ZGluZ0ZyYW1lQ2xpZW50IiwgaW5kZXgsIE51bWJlck9mUmVhc29uc1BhZ2VzQ2Fubm90QmVJblBh
Z2VDYWNoZSk7CisgICAgfQorI2VuZGlmCisKICAgICBIaXN0b2dyYW1TdXBwb3J0OjpoaXN0b2dy
YW1FbnVtZXJhdGlvbigiUGFnZUNhY2hlLkZyYW1lUmVqZWN0UmVhc29uQ291bnRCeVBhZ2UiLCBm
cmFtZVJlYXNvbkNvdW50LCAxICsgTnVtYmVyT2ZSZWFzb25zRnJhbWVzQ2Fubm90QmVJblBhZ2VD
YWNoZSk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132808</attachid>
            <date>2012-03-20 05:34:36 -0700</date>
            <delta_ts>2012-03-20 07:31:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81358-20120320083435.patch</filename>
            <type>text/plain</type>
            <size>3434</size>
            <attacher name="Gavin Peters">gavinp</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTExMzgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDg5ODRjOGFlY2I3ODMy
MjcwZDI4N2Q4OTIyYTg2YTk0YjQ0OGQ2YS4uNDQzZmFlN2MzMzk3OWI4YWQzMGZiZTZmMzhmZWE4
OTY3NWZiMWM4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTAzLTIwICBHYXZp
biBQZXRlcnMgIDxnYXZpbnBAY2hyb21pdW0ub3JnPgorCisgICAgICAgIE5ldyBQYWdlQ2FjaGUg
aGlzdG9ncmFtIGZvciB0cmFja2luZyB0aGUgaGlnaGVzdCBsZXZlcmFnZSBmcmFtZSByZWplY3Qg
cmVhc29ucy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTgxMzU4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKworICAgICAgICBUaGUg
Y3VycmVudCBjaHJvbWl1bSBGcmFtZUNsaWVudEltcGwgYWx3YXlzIGRlbmllcyBwYWdlIGNhY2hl
OyBidXQKKyAgICAgICAgdGhhdCdzIGVhc2lseSBmaXhhYmxlLiAgVGhpcyBoaXN0b2dyYW0gdHJh
Y2tzIHdoaWNoIHJlamVjdGlvbgorICAgICAgICBjYXVzZXMgb2NjdXIgYWxvbmUgd2l0aCB0aGF0
IGNhdXNlLiAgSSdtIHBhcnRpY3VsYXJseSBpbnRlcmVzdGVkCisgICAgICAgIGluIGtub3dpbmcg
aG93IG1hbnkgbW9yZSBwYWdlcyB3b3VsZCB3b3JrIGluIHRoZSBwYWdlIGNhY2hlIGlmIHdlCisg
ICAgICAgIGNvdWxkIGdldCBwbHVnaW5zIGluLgorCisgICAgICAgICogaGlzdG9yeS9QYWdlQ2Fj
aGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6bG9nQ2FuQ2FjaGVQYWdlRGVjaXNpb24pOgorCiAy
MDEyLTAzLTIwICBZdXJ5IFNlbWlraGF0c2t5ICA8eXVyeXNAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFdlYiBJbnNwZWN0b3I6IHByb3ZpZGUgY2xhc3MgbmFtZSBmaWx0ZXIgZm9yICJjb21wYXJp
c29uIiB2aWV3IGluIGhlYXAgcHJvZmlsZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2hp
c3RvcnkvUGFnZUNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2hpc3RvcnkvUGFnZUNhY2hlLmNw
cAppbmRleCAwNmQ0OGQ1Yzc1MWFmMDNkOGRjMzc5ZjE5OWZlOWQ0ZTM3ODJhZmY1Li4wNDY1YTBi
YjJjNWEwMzlhNjVmNDg3ZDMyZTRiM2JhYzUwYWQzM2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9oaXN0b3J5L1BhZ2VDYWNoZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaGlzdG9yeS9Q
YWdlQ2FjaGUuY3BwCkBAIC04Myw2ICs4MywyMiBAQCBlbnVtIFJlYXNvbkZyYW1lQ2Fubm90QmVJ
blBhZ2VDYWNoZSB7CiB9OwogQ09NUElMRV9BU1NFUlQoTnVtYmVyT2ZSZWFzb25zRnJhbWVzQ2Fu
bm90QmVJblBhZ2VDYWNoZSA8PSBzaXplb2YodW5zaWduZWQpKjgsIFJlYXNvbkZyYW1lQ2Fubm90
QmVJblBhZ2VDYWNoZURvZXNOb3RGaXRJbkJpdG1hcCk7CiAKK3N0YXRpYyBpbnQgaW5kZXhPZlNp
bmdsZUJpdChpbnQzMl90IHYpCit7CisgICAgaW50IGluZGV4ID0gMDsKKyAgICBpZiAodiAmIDB4
RkZGRjAwMDApCisgICAgICAgIGluZGV4ID0gMTY7CisgICAgaWYgKHYgJiAweEZGMDBGRjAwKQor
ICAgICAgICBpbmRleCArPSA4OworICAgIGlmICh2ICYgMHhGMEYwRjBGMCkKKyAgICAgICAgaW5k
ZXggKz0gNDsKKyAgICBpZiAodiAmIDB4Q0NDQ0NDQ0MpCisgICAgICAgIGluZGV4ICs9IDI7Cisg
ICAgaWYgKHYgJiAweEFBQUFBQUFBKQorICAgICAgICBpbmRleCArPSAxOworICAgIHJldHVybiBp
bmRleDsKK30KKwogc3RhdGljIHVuc2lnbmVkIGxvZ0NhbkNhY2hlRnJhbWVEZWNpc2lvbihGcmFt
ZSogZnJhbWUsIGludCBpbmRlbnRMZXZlbCkKIHsKICNpZmRlZiBOREVCVUcKQEAgLTI3Miw2ICsy
ODgsMjAgQEAgc3RhdGljIHZvaWQgbG9nQ2FuQ2FjaGVQYWdlRGVjaXNpb24oUGFnZSogcGFnZSkK
ICAgICAgICAgICAgIEhpc3RvZ3JhbVN1cHBvcnQ6Omhpc3RvZ3JhbUVudW1lcmF0aW9uKCJQYWdl
Q2FjaGUuRnJhbWVSZWplY3RSZWFzb25CeVBhZ2UiLCBpLCBOdW1iZXJPZlJlYXNvbnNGcmFtZXND
YW5ub3RCZUluUGFnZUNhY2hlKTsKICAgICAgICAgfQogICAgIH0KKyNpZiBQTEFURk9STShDSFJP
TUlVTSkKKyAgICAvLyBUaGlzIHN0cmFuZ2VseSBzcGVjaWZpYyBoaXN0b2dyYW0gaXMgcGFydGlj
dWxhciB0byBjaHJvbWl1bTogYXMgb2YgMjAxMi0wMy0xNiwgdGhlIEZyYW1lQ2xpZW50SW1wbCBh
bHdheXMgZGVuaWVzIGNhY2hpbmcsIHNvCisgICAgLy8gb2YgcGFydGljdWxhciBpbnRlcmVzdCBh
cmUgc29saXRhcnkgcmVhc29ucyBvdGhlciB0aGFuIHRoZSBmcmFtZVJlamVjdFJlYXNvbnMuIElm
IHdlIGRpZG4ndCBnZXQgdG8gdGhlIENsaWVudERlbmllc0NhY2hpbmcsIHdlCisgICAgLy8gdG9v
ayB0aGUgZWFybHkgZXhpdCBmb3IgdGhlIGJvcmluZyByZWFzb24gTm9Eb2N1bWVudExvYWRlciwg
c28gd2Ugc2hvdWxkIGhhdmUgb25seSBvbmUgcmVhc29uLCBhbmQgbm90IHR3by4KKyAgICAvLyBG
SVhNRTogcmVtb3ZlIHRoaXMgaGlzdG9ncmFtIGFmdGVyIGRhdGEgaXMgZ2F0aGVyZWQuCisgICAg
aWYgKGZyYW1lUmVhc29uQ291bnQgPT0gMikgeworICAgICAgICBBU1NFUlQoZnJhbWVSZWplY3RS
ZWFzb25zICYgKDEgPDwgQ2xpZW50RGVuaWVzQ2FjaGluZykpOworICAgICAgICBjb25zdCB1bnNp
Z25lZCBzaW5nbGVSZWFzb25Gb3JSZWplY3RpbmdGcmFtZU90aGVyVGhhbkNsaWVudERlbmllc0Nh
Y2hpbmcgPSBmcmFtZVJlamVjdFJlYXNvbnMgJiB+KDEgPDwgQ2xpZW50RGVuaWVzQ2FjaGluZyk7
CisgICAgICAgIENPTVBJTEVfQVNTRVJUKE51bWJlck9mUmVhc29uc1BhZ2VzQ2Fubm90QmVJblBh
Z2VDYWNoZSA8PSAzMiwgUmVhc29uUGFnZUNhbm5vdEJlSW5QYWdlQ2FjaGVEb2VzTm90Rml0SW5J
bnQzMik7CisgICAgICAgIGNvbnN0IGludCBpbmRleCA9IGluZGV4T2ZTaW5nbGVCaXQoc3RhdGlj
X2Nhc3Q8aW50MzJfdD4oc2luZ2xlUmVhc29uRm9yUmVqZWN0aW5nRnJhbWVPdGhlclRoYW5DbGll
bnREZW5pZXNDYWNoaW5nKSk7CisgICAgICAgIEhpc3RvZ3JhbVN1cHBvcnQ6Omhpc3RvZ3JhbUVu
dW1lcmF0aW9uKCJQYWdlQ2FjaGUuRnJhbWVSZWplY3RSZWFzb25CeVBhZ2VXaGVuU2luZ2xlRXhj
bHVkaW5nRnJhbWVDbGllbnQiLCBpbmRleCwgTnVtYmVyT2ZSZWFzb25zUGFnZXNDYW5ub3RCZUlu
UGFnZUNhY2hlKTsKKyAgICB9CisjZW5kaWYKKwogICAgIEhpc3RvZ3JhbVN1cHBvcnQ6Omhpc3Rv
Z3JhbUVudW1lcmF0aW9uKCJQYWdlQ2FjaGUuRnJhbWVSZWplY3RSZWFzb25Db3VudEJ5UGFnZSIs
IGZyYW1lUmVhc29uQ291bnQsIDEgKyBOdW1iZXJPZlJlYXNvbnNGcmFtZXNDYW5ub3RCZUluUGFn
ZUNhY2hlKTsKIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>