<?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>33652</bug_id>
          
          <creation_ts>2010-01-13 22:31:10 -0800</creation_ts>
          <short_desc>REGRESSION: Frames stop appearing after browsing for a while</short_desc>
          <delta_ts>2012-09-26 14:14:59 -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>Frames</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>180546</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-01-13 22:31:10 -0800</bug_when>
    <thetext>Frames that go into b/f cache still count towards the limit of 200 frames on a page (even once cached pages are destroyed). So, frames may cease to be rendered after browsing for a while.

Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>180549</commentid>
    <comment_count>1</comment_count>
      <attachid>46540</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-01-13 22:38:09 -0800</bug_when>
    <thetext>Created attachment 46540
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>180550</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-01-13 22:43:37 -0800</bug_when>
    <thetext>Attachment 46540 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
WebCore/page/Page.h:135:  More than one command on the same line  [whitespace/newline] [4]
WebCore/page/Page.h:136:  More than one command on the same line  [whitespace/newline] [4]
Total errors found: 2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>180788</commentid>
    <comment_count>3</comment_count>
      <attachid>46540</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-01-14 10:50:55 -0800</bug_when>
    <thetext>Comment on attachment 46540
proposed fix

r+

(fun layout test)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>180799</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-01-14 11:04:28 -0800</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/changeset/53274&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>180802</commentid>
    <comment_count>5</comment_count>
      <attachid>46540</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-01-14 11:07:04 -0800</bug_when>
    <thetext>Comment on attachment 46540
proposed fix

&gt; +#if !ASSERT_DISABLED
&gt; +void Page::checkFrameCountConsistency() const
&gt; +{
&gt; +    ASSERT(m_frameCount &gt;= 0);
&gt; +
&gt; +    int frameCount = 0;
&gt; +    for (Frame* frame = mainFrame(); frame; frame = frame-&gt;tree()-&gt;traverseNext())
&gt; +        ++frameCount;
&gt; +
&gt; +    ASSERT(m_frameCount + 1 == frameCount);
&gt; +}
&gt; +#endif
&gt;  } // namespace WebCore

Seems to me it should be m_subframeCount, since the main frame is not included in the count.

Missing blank line here too.

&gt; +#if ASSERT_DISABLED
&gt; +        void checkFrameCountConsistency() const { }
&gt; +#else
&gt; +        void checkFrameCountConsistency() const;
&gt; +#endif

I normally prefer to keep the #if out of the class definition in a case like this, using a separate inline function definition later in the header.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>180849</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-01-14 12:21:31 -0800</bug_when>
    <thetext>&gt; Seems to me it should be m_subframeCount, since the main frame is not included
&gt; in the count.

It definitely should! Brady and me agreed that this change shouldn&apos;t be part of this patch though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>728969</commentid>
    <comment_count>7</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-09-26 14:14:59 -0700</bug_when>
    <thetext>Renamed to subframe count in http://trac.webkit.org/changeset/129707</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>46540</attachid>
            <date>2010-01-13 22:38:09 -0800</date>
            <delta_ts>2010-01-14 11:07:04 -0800</delta_ts>
            <desc>proposed fix</desc>
            <filename>FrameCount.txt</filename>
            <type>text/plain</type>
            <size>12091</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MzIzOCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzUgQEAKKzIwMTAtMDEtMTMgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMzNjUyCisgICAgICAgIFJF
R1JFU1NJT046IEZyYW1lcyBzdG9wIGFwcGVhcmluZyBhZnRlciBicm93c2luZyBmb3IgYSB3aGls
ZQorCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83MzA4MzEyPiBSRUdSRVNTSU9OOiBpQmVuY2gg
Z2V0cyBzbG93ZXIgYWZ0ZXIgc2V2ZXJhbCBydW5zCisKKyAgICAgICAgSSBkbyBub3Qga25vdyBo
b3cgbm90IGNyZWF0aW5nIHJlbmRlcmVycyBmb3IgZnJhbWVzIGNvdWxkIG1ha2UgaUJlbmNoIHNs
b3dlciwgYnV0IGl0IGRpZC4KKworICAgICAgICBUZXN0OiBmYXN0L2ZyYW1lcy9jYWNoZWQtZnJh
bWUtY291bnRlci5odG1sCisKKyAgICAgICAgKiBoaXN0b3J5L0NhY2hlZEZyYW1lLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNhY2hlZEZyYW1lOjpDYWNoZWRGcmFtZSk6IEEgZnJhbWUgdGhhdCdz
IGNhY2hlZCBpcyBtb3ZlZCBhd2F5IGZyb20gUGFnZSwKKyAgICAgICAgc28gZGVjcmVtZW50IGZy
YW1lIGNvdW50IGhlcmUuCisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRGcmFtZTo6b3Blbik6IElu
Y3JlYXNlIGZyYW1lIGNvdW50IHdoZW4gYSBmcmFtZSBpcyByZXN0b3JlZC4KKworICAgICAgICAq
IGhpc3RvcnkvQ2FjaGVkRnJhbWUuaDogUmVtb3ZlIHVubmVlZGVkIGZvcndhcmQgZGVjbGFyYXRp
b25zLgorCisgICAgICAgICogaGlzdG9yeS9DYWNoZWRQYWdlLmg6IERpdHRvLgorCisgICAgICAg
ICogaGlzdG9yeS9DYWNoZWRQYWdlLmNwcDogKFdlYkNvcmU6OkNhY2hlZFBhZ2U6OnJlc3RvcmUp
OiBBc3NlcnQgdGhhdCBwYWdlIGZyYW1lIGNvdW50IGlzCisgICAgICAgIHplcm8gcHJpb3IgdG8g
cmVzdG9yaW5nIGEgcGFnZSBmcm9tIGIvZiBjYWNoZS4KKyAgICAgICAgCisgICAgICAgICogcGFn
ZS9QYWdlLmNwcDogKFdlYkNvcmU6OlBhZ2U6OmNoZWNrRnJhbWVDb3VudENvbnNpc3RlbmN5KTog
QSBkZWJ1Zy1vbmx5IG1ldGhvZCB0bworICAgICAgICBjaGVjayB0aGF0IGZyYW1lIGNvdW50IHN0
b3JlZCBpbiBQYWdlIG1hdGNoZXMgdGhlIG51bWJlciBvZiBmcmFtZXMgaW4gZnJhbWUgdHJlZS4K
KworICAgICAgICAqIHBhZ2UvUGFnZS5oOgorICAgICAgICAoV2ViQ29yZTo6UGFnZTo6ZGVjcmVt
ZW50RnJhbWVDb3VudCk6IEFzc2VydCB0aGF0IGZyYW1lIGNvdW50IGlzIHBvc2l0aXZlLgorICAg
ICAgICAoV2ViQ29yZTo6UGFnZTo6ZnJhbWVDb3VudCk6IENhbGwgY2hlY2tGcmFtZUNvdW50Q29u
c2lzdGVuY3koKS4KKwogMjAxMC0wMS0xMyAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGdvb2dsZS5j
b20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2xpdmVyIEh1bnQuCkluZGV4OiBXZWJDb3JlL2hp
c3RvcnkvQ2FjaGVkRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaGlzdG9yeS9DYWNo
ZWRGcmFtZS5jcHAJKHJldmlzaW9uIDUzMTQ5KQorKysgV2ViQ29yZS9oaXN0b3J5L0NhY2hlZEZy
YW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTM2LDYgKzEzNiw5IEBAIENhY2hlZEZyYW1lOjpD
YWNoZWRGcmFtZShGcmFtZSogZnJhbWUpCiAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IG1f
Y2hpbGRGcmFtZXMuc2l6ZSgpOyArK2kpCiAgICAgICAgIGZyYW1lLT50cmVlKCktPnJlbW92ZUNo
aWxkKG1fY2hpbGRGcmFtZXNbaV0tPnZpZXcoKS0+ZnJhbWUoKSk7CiAKKyAgICBpZiAoIW1faXNN
YWluRnJhbWUpCisgICAgICAgIGZyYW1lLT5wYWdlKCktPmRlY3JlbWVudEZyYW1lQ291bnQoKTsK
KwogI2lmbmRlZiBOREVCVUcKICAgICBpZiAobV9pc01haW5GcmFtZSkKICAgICAgICAgTE9HKFBh
Z2VDYWNoZSwgIkZpbmlzaGVkIGNyZWF0aW5nIENhY2hlZEZyYW1lIGZvciBtYWluIGZyYW1lIHVy
bCAnJXMnIGFuZCBEb2N1bWVudExvYWRlciAlcFxuIiwgbV91cmwuc3RyaW5nKCkudXRmOCgpLmRh
dGEoKSwgbV9kb2N1bWVudExvYWRlci5nZXQoKSk7CkBAIC0xNDgsNiArMTUxLDkgQEAgdm9pZCBD
YWNoZWRGcmFtZTo6b3BlbigpCiB7CiAgICAgQVNTRVJUKG1fdmlldyk7CiAgICAgbV92aWV3LT5m
cmFtZSgpLT5sb2FkZXIoKS0+b3BlbigqdGhpcyk7CisKKyAgICBpZiAoIW1faXNNYWluRnJhbWUp
CisgICAgICAgIG1fdmlldy0+ZnJhbWUoKS0+cGFnZSgpLT5pbmNyZW1lbnRGcmFtZUNvdW50KCk7
CiB9CiAKIHZvaWQgQ2FjaGVkRnJhbWU6OmNsZWFyKCkKSW5kZXg6IFdlYkNvcmUvaGlzdG9yeS9D
YWNoZWRGcmFtZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaGlzdG9yeS9DYWNoZWRGcmFtZS5o
CShyZXZpc2lvbiA1MzE0OSkKKysrIFdlYkNvcmUvaGlzdG9yeS9DYWNoZWRGcmFtZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zMSwxNSArMzEsMTMgQEAKICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKLSAgICAKLSAgICBjbGFzcyBDYWNoZWRGcmFtZTsKLSAgICBj
bGFzcyBDYWNoZWRGcmFtZVBsYXRmb3JtRGF0YTsKLSAgICBjbGFzcyBET01XaW5kb3c7Ci0gICAg
Y2xhc3MgRG9jdW1lbnQ7Ci0gICAgY2xhc3MgRG9jdW1lbnRMb2FkZXI7Ci0gICAgY2xhc3MgRnJh
bWU7Ci0gICAgY2xhc3MgRnJhbWVWaWV3OwotICAgIGNsYXNzIE5vZGU7CisKK2NsYXNzIENhY2hl
ZEZyYW1lOworY2xhc3MgQ2FjaGVkRnJhbWVQbGF0Zm9ybURhdGE7CitjbGFzcyBEb2N1bWVudDsK
K2NsYXNzIERvY3VtZW50TG9hZGVyOworY2xhc3MgRnJhbWVWaWV3OworY2xhc3MgTm9kZTsKIAog
dHlwZWRlZiBWZWN0b3I8UmVmUHRyPENhY2hlZEZyYW1lPiA+IENhY2hlZEZyYW1lVmVjdG9yOwog
CkluZGV4OiBXZWJDb3JlL2hpc3RvcnkvQ2FjaGVkUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9oaXN0b3J5L0NhY2hlZFBhZ2UuY3BwCShyZXZpc2lvbiA1MzE0OSkKKysrIFdlYkNvcmUv
aGlzdG9yeS9DYWNoZWRQYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjksNiArNjksNyBAQCB2
b2lkIENhY2hlZFBhZ2U6OnJlc3RvcmUoUGFnZSogcGFnZSkKIHsKICAgICBBU1NFUlQobV9jYWNo
ZWRNYWluRnJhbWUpOwogICAgIEFTU0VSVChwYWdlICYmIHBhZ2UtPm1haW5GcmFtZSgpICYmIHBh
Z2UtPm1haW5GcmFtZSgpID09IG1fY2FjaGVkTWFpbkZyYW1lLT52aWV3KCktPmZyYW1lKCkpOwor
ICAgIEFTU0VSVCghcGFnZS0+ZnJhbWVDb3VudCgpKTsKIAogICAgIG1fY2FjaGVkTWFpbkZyYW1l
LT5vcGVuKCk7CiAgICAgCkluZGV4OiBXZWJDb3JlL2hpc3RvcnkvQ2FjaGVkUGFnZS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvaGlzdG9yeS9DYWNoZWRQYWdlLmgJKHJldmlzaW9uIDUzMTQ5KQor
KysgV2ViQ29yZS9oaXN0b3J5L0NhY2hlZFBhZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtMzAsMTQg
KzMwLDkgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIAotICAgIGNsYXNzIENhY2hlZEZy
YW1lUGxhdGZvcm1EYXRhOwotICAgIGNsYXNzIERPTVdpbmRvdzsKLSAgICBjbGFzcyBEb2N1bWVu
dDsKLSAgICBjbGFzcyBEb2N1bWVudExvYWRlcjsKLSAgICBjbGFzcyBGcmFtZVZpZXc7Ci0gICAg
Y2xhc3MgS1VSTDsKLSAgICBjbGFzcyBOb2RlOwotICAgIGNsYXNzIFBhZ2U7CitjbGFzcyBEb2N1
bWVudDsKK2NsYXNzIERvY3VtZW50TG9hZGVyOworY2xhc3MgUGFnZTsKIAogY2xhc3MgQ2FjaGVk
UGFnZSA6IHB1YmxpYyBSZWZDb3VudGVkPENhY2hlZFBhZ2U+IHsKIHB1YmxpYzoKSW5kZXg6IFdl
YkNvcmUvcGFnZS9QYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvUGFnZS5jcHAJ
KHJldmlzaW9uIDUzMTQ5KQorKysgV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC03NzUsNCArNzc1LDE2IEBAIHZvaWQgUGFnZTo6ZGlkU3RvcFBsdWdpbihIYWx0YWJsZVBs
dWdpbioKICAgICAgICAgbV9wbHVnaW5IYWx0ZXItPmRpZFN0b3BQbHVnaW4ob2JqKTsKIH0KIAor
I2lmICFBU1NFUlRfRElTQUJMRUQKK3ZvaWQgUGFnZTo6Y2hlY2tGcmFtZUNvdW50Q29uc2lzdGVu
Y3koKSBjb25zdAoreworICAgIEFTU0VSVChtX2ZyYW1lQ291bnQgPj0gMCk7CisKKyAgICBpbnQg
ZnJhbWVDb3VudCA9IDA7CisgICAgZm9yIChGcmFtZSogZnJhbWUgPSBtYWluRnJhbWUoKTsgZnJh
bWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS0+dHJhdmVyc2VOZXh0KCkpCisgICAgICAgICsrZnJh
bWVDb3VudDsKKworICAgIEFTU0VSVChtX2ZyYW1lQ291bnQgKyAxID09IGZyYW1lQ291bnQpOwor
fQorI2VuZGlmCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBXZWJDb3JlL3BhZ2UvUGFn
ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9QYWdlLmgJKHJldmlzaW9uIDUzMTQ5KQor
KysgV2ViQ29yZS9wYWdlL1BhZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtMTMyLDggKzEzMiw4IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgUGFnZUdyb3VwKiBncm91cFB0cigpIHsgcmV0
dXJuIG1fZ3JvdXA7IH0gLy8gY2FuIHJldHVybiAwCiAKICAgICAgICAgdm9pZCBpbmNyZW1lbnRG
cmFtZUNvdW50KCkgeyArK21fZnJhbWVDb3VudDsgfQotICAgICAgICB2b2lkIGRlY3JlbWVudEZy
YW1lQ291bnQoKSB7IC0tbV9mcmFtZUNvdW50OyB9Ci0gICAgICAgIGludCBmcmFtZUNvdW50KCkg
Y29uc3QgeyByZXR1cm4gbV9mcmFtZUNvdW50OyB9CisgICAgICAgIHZvaWQgZGVjcmVtZW50RnJh
bWVDb3VudCgpIHsgQVNTRVJUKG1fZnJhbWVDb3VudCk7IC0tbV9mcmFtZUNvdW50OyB9CisgICAg
ICAgIGludCBmcmFtZUNvdW50KCkgY29uc3QgeyBjaGVja0ZyYW1lQ291bnRDb25zaXN0ZW5jeSgp
OyByZXR1cm4gbV9mcmFtZUNvdW50OyB9CiAKICAgICAgICAgQ2hyb21lKiBjaHJvbWUoKSBjb25z
dCB7IHJldHVybiBtX2Nocm9tZS5nZXQoKTsgfQogICAgICAgICBTZWxlY3Rpb25Db250cm9sbGVy
KiBkcmFnQ2FyZXRDb250cm9sbGVyKCkgY29uc3QgeyByZXR1cm4gbV9kcmFnQ2FyZXRDb250cm9s
bGVyLmdldCgpOyB9CkBAIC0yNDQsNiArMjQ0LDEyIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAg
ICBwcml2YXRlOgogICAgICAgICB2b2lkIGluaXRHcm91cCgpOwogCisjaWYgQVNTRVJUX0RJU0FC
TEVECisgICAgICAgIHZvaWQgY2hlY2tGcmFtZUNvdW50Q29uc2lzdGVuY3koKSBjb25zdCB7IH0K
KyNlbHNlCisgICAgICAgIHZvaWQgY2hlY2tGcmFtZUNvdW50Q29uc2lzdGVuY3koKSBjb25zdDsK
KyNlbmRpZgorCiAgICAgICAgIE93blB0cjxDaHJvbWU+IG1fY2hyb21lOwogICAgICAgICBPd25Q
dHI8U2VsZWN0aW9uQ29udHJvbGxlcj4gbV9kcmFnQ2FyZXRDb250cm9sbGVyOwogI2lmIEVOQUJM
RShEUkFHX1NVUFBPUlQpCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA1MzIzOCkKKysrIExheW91dFRlc3Rz
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDEwLTAxLTEzICBB
bGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zMzY1MgorICAgICAgICBSRUdSRVNTSU9OOiBGcmFtZXMgc3RvcCBhcHBlYXJp
bmcgYWZ0ZXIgYnJvd3NpbmcgZm9yIGEgd2hpbGUKKworICAgICAgICAqIGZhc3QvZnJhbWVzL2Nh
Y2hlZC1mcmFtZS1jb3VudGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9m
cmFtZXMvY2FjaGVkLWZyYW1lLWNvdW50ZXIuaHRtbDogQWRkZWQuCisKIDIwMTAtMDEtMTMgIEtl
bm5ldGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE9s
aXZlciBIdW50LgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9mcmFtZXMvY2FjaGVkLWZyYW1lLWNv
dW50ZXItZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZnJhbWVz
L2NhY2hlZC1mcmFtZS1jb3VudGVyLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2Zhc3QvZnJhbWVzL2NhY2hlZC1mcmFtZS1jb3VudGVyLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwzIEBACitUZXN0IHRoYXQgZnJhbWUgY291bnQgbGltaXQgaXMg
cmVzZXQgb24gbmF2aWdhdGlvbnMuCisKK1BBU1MKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZnJh
bWVzL2NhY2hlZC1mcmFtZS1jb3VudGVyLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9mcmFtZXMvY2FjaGVkLWZyYW1lLWNvdW50ZXIuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL2Zhc3QvZnJhbWVzL2NhY2hlZC1mcmFtZS1jb3VudGVyLmh0bWwJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMTQzIEBACis8Ym9keSBvbmxvYWQ9InNldFRpbWVvdXQoJ3Rlc3QoKScs
IDUwMCkiPgorPHA+VGVzdCB0aGF0IGZyYW1lIGNvdW50IGxpbWl0IGlzIHJlc2V0IG9uIG5hdmln
YXRpb25zLjwvcD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7
CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgIGxheW91dFRlc3RD
b250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKK30KKworZnVuY3Rpb24gdGVzdCgpCit7CisgICAg
dmFyIGxvb3AgPSBwYXJzZUZsb2F0KGRvY3VtZW50LmxvY2F0aW9uLnNlYXJjaC5zdWJzdHJpbmco
MSkpOworICAgIGlmICghbG9vcCkKKyAgICAgICAgbG9vcCA9IDA7CisKKyAgICB0cnkgeworICAg
ICAgICB3aW5kb3cuZnJhbWVzWzEwMF0uZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmlubmVySFRN
TDsKKyAgICB9IGNhdGNoIChleCkgeworICAgICAgICBkb2N1bWVudC53cml0ZSgiRkFJTDogIiAr
IGV4ICsgIjxwPiIpOworICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQor
ICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgaWYgKGxvb3AgPCAyKSB7CisgICAgICAgICsrbG9vcDsKKyAg
ICAgICAgZG9jdW1lbnQubG9jYXRpb24uc2VhcmNoID0gIj8iICsgbG9vcDsKKyAgICAgICAgcmV0
dXJuOworICAgIH0KKworICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3Jl
YXRlVGV4dE5vZGUoKC9Xb3JsZC8udGVzdCh3aW5kb3cuZnJhbWVzWzEwMF0uZG9jdW1lbnQuZG9j
dW1lbnRFbGVtZW50LmlubmVySFRNTCkgPyAiUEFTUyIgOiAiRkFJTCIpKSk7CisKKyAgICB2YXIg
aWZyOworICAgIHdoaWxlIChpZnIgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaWZy
YW1lIilbMF0pCisgICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoaWZyKTsKKworICAg
IGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250
cm9sbGVyLm5vdGlmeURvbmUoKTsKK30KKzwvc2NyaXB0PgorCis8IS0tIDEwMSBpZnJhbWUgLS0+
Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0
OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8
aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJs
YW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZy
YW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5r
Ij48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1l
IHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48
L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNy
Yz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lm
cmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0i
YWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFt
ZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJv
dXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4K
KzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6
YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxp
ZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6Ymxh
bmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJh
bWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6Ymxhbmsi
PjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUg
c3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwv
aWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3Jj
PSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZy
YW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJh
Ym91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1l
PgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91
dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgor
PGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpi
bGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlm
cmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFu
ayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFt
ZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+
PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBz
cmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9p
ZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9
ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJh
bWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFi
b3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+
Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0
OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8
aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJs
YW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZy
YW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5r
Ij48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1l
IHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48
L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNy
Yz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lm
cmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0i
YWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFt
ZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJv
dXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4K
KzxpZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6
YmxhbmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxp
ZnJhbWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6Ymxh
bmsiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJh
bWUgc3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6Ymxhbmsi
PjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUg
c3JjPSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwv
aWZyYW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3Jj
PSJhYm91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZy
YW1lPgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJh
Ym91dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1l
PgorPGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91
dDpibGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgor
PGlmcmFtZSBzcmM9ImFib3V0OmJsYW5rIj48L2lmcmFtZT4KKzxpZnJhbWUgc3JjPSJhYm91dDpi
bGFuayI+PC9pZnJhbWU+Cis8aWZyYW1lIHNyYz0iYWJvdXQ6YmxhbmsiPjwvaWZyYW1lPgorPGlm
cmFtZSBzcmM9ImphdmFzY3JpcHQ6JzxwPkhlbGxvLCBXb3JsZCE8L3A+JyI+PC9pZnJhbWU+Cis8
L2JvZHk+Cg==
</data>
<flag name="review"
          id="28825"
          type_id="1"
          status="+"
          setter="beidson"
    />
          </attachment>
      

    </bug>

</bugzilla>