<?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>5499</bug_id>
          
          <creation_ts>2005-10-25 09:53:08 -0700</creation_ts>
          <short_desc>Page reload does not send any cache control headers</short_desc>
          <delta_ts>2006-06-19 22:18:25 -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>Page Loading</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://www.apple.com</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Nicolas Sandri">nicolas.sandri</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>ap</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>22923</commentid>
    <comment_count>0</comment_count>
    <who name="Nicolas Sandri">nicolas.sandri</who>
    <bug_when>2005-10-25 09:53:08 -0700</bug_when>
    <thetext>There is no difference between loading a page and reloading a page except for the local cache. Because 
headers are strictly same, cache or proxy server between client browser and http server are not 
refreshed.
The HTTP 1.1 protocol RFC describe the request directives (in 14.9.4, Cache Revalidation and Reload 
Controls) needed to refresh page content.
Since there&apos;s a growing use of NetCache by ISPs to save their bandwidth, this problem (I already 
reported two years ago using the Safari 1.0 bug report) can really be a missing function for users 
(especially if they&apos;re web developer like me).
Firefox, for example, refresh correctly the page, adding the needed directives to its requests :
   If-Modified-Since: Wed, 12 Oct 2005 17:09:46 GMT
   If-None-Match: &quot;1a54-434d435a&quot;
   Cache-Control: max-age=0
Since I update my website&apos;s pages, I need to use Firefox to ask the cache server to refresh its contents 
and then use Safari to see it.

When this will be corrected, the button could be renamed &quot;Refresh&quot; instead of &quot;Reload&quot; ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>22925</commentid>
    <comment_count>1</comment_count>
      <attachid>4474</attachid>
    <who name="Nicolas Sandri">nicolas.sandri</who>
    <bug_when>2005-10-25 10:00:05 -0700</bug_when>
    <thetext>Created attachment 4474
Safari load headers dump</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>22926</commentid>
    <comment_count>2</comment_count>
      <attachid>4475</attachid>
    <who name="Nicolas Sandri">nicolas.sandri</who>
    <bug_when>2005-10-25 10:00:36 -0700</bug_when>
    <thetext>Created attachment 4475
Safari reload headers dump</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>22927</commentid>
    <comment_count>3</comment_count>
      <attachid>4476</attachid>
    <who name="Nicolas Sandri">nicolas.sandri</who>
    <bug_when>2005-10-25 10:01:32 -0700</bug_when>
    <thetext>Created attachment 4476
Firefox load headers dump</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>22928</commentid>
    <comment_count>4</comment_count>
      <attachid>4477</attachid>
    <who name="Nicolas Sandri">nicolas.sandri</who>
    <bug_when>2005-10-25 10:01:52 -0700</bug_when>
    <thetext>Created attachment 4477
Firefox reload headers dump</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32396</commentid>
    <comment_count>5</comment_count>
    <who name="Joost de Valk (AlthA)">joost</who>
    <bug_when>2006-02-13 16:05:24 -0800</bug_when>
    <thetext>Reassigning to webkit-unassigned, to make sure more people see this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>40838</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-05-02 04:43:48 -0700</bug_when>
    <thetext>This is related to bug 7414 (shift-reload functionality).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46115</commentid>
    <comment_count>7</comment_count>
      <attachid>8891</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-06-17 16:16:24 -0700</bug_when>
    <thetext>Created attachment 8891
proposed fix

This fixes both manual reload and window.location.reload; not sure if there are other ways to cause reload that should send cache control headers (window.location.assign to the same URL doesn&apos;t do that in Firefox).

Unfortunately, there doesn&apos;t seem to be a way to send If-Modified-Since together with max-age=0 (in other words, to validate freshness) with NSURLRequest, rdar://4590785. This doesn&apos;t affect correctness, but wastes bandwidth.

The TransferJob-related code in WebCore::Frame seemed to be unused, other than for passing response HTTP headers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46300</commentid>
    <comment_count>8</comment_count>
      <attachid>8891</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-06-19 13:42:52 -0700</bug_when>
    <thetext>Comment on attachment 8891
proposed fix

r=me

I&apos;m not sure about that FIXME in loadRequest: -- seems a little cryptic to me. It&apos;s fine to add a FIXME, but I&apos;d like it to be more specific if possible.

Can the include of TransferJob.h be removed from Frame.cpp?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46336</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-06-19 22:18:25 -0700</bug_when>
    <thetext>Committed revision 14920.

(In reply to comment #8)
&gt; I&apos;m not sure about that FIXME in loadRequest: -- seems a little cryptic to me.
&gt; It&apos;s fine to add a FIXME, but I&apos;d like it to be more specific if possible.

Changed the wording and also the meaning. There&apos;s probably nothing else needed to reset, but doing this in loadRequest: looks a bit hackish to me.

&gt; Can the include of TransferJob.h be removed from Frame.cpp?

My patch was already removing it - am I missing something?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>4474</attachid>
            <date>2005-10-25 10:00:05 -0700</date>
            <delta_ts>2005-10-25 10:00:05 -0700</delta_ts>
            <desc>Safari load headers dump</desc>
            <filename>safari-load-dump.txt</filename>
            <type>text/plain</type>
            <size>256</size>
            <attacher name="Nicolas Sandri">nicolas.sandri</attacher>
            
              <data encoding="base64">R0VUIC8gSFRUUC8xLjENCkFjY2VwdDogKi8qDQpBY2NlcHQtTGFuZ3VhZ2U6IGZyDQpBY2NlcHQt
RW5jb2Rpbmc6IGd6aXAsIGRlZmxhdGUNCkNvb2tpZTogKioqKioqKioNClVzZXItQWdlbnQ6IE1v
emlsbGEvNS4wIChNYWNpbnRvc2g7IFU7IFBQQyBNYWMgT1MgWDsgZnIpIEFwcGxlV2ViS2l0LzQx
Mi43IChLSFRNTCwgbGlrZSBHZWNrbykgU2FmYXJpLzQxMi41DQpDb25uZWN0aW9uOiBrZWVwLWFs
aXZlDQpIb3N0OiB3d3cuYXBwbGUuY29tDQoNCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>4475</attachid>
            <date>2005-10-25 10:00:36 -0700</date>
            <delta_ts>2005-10-25 10:01:03 -0700</delta_ts>
            <desc>Safari reload headers dump</desc>
            <filename>safari-reload-dump.txt</filename>
            <type>text/plain</type>
            <size>305</size>
            <attacher name="Nicolas Sandri">nicolas.sandri</attacher>
            
              <data encoding="base64">R0VUIC8gSFRUUC8xLjENCkFjY2VwdDogKi8qDQpBY2NlcHQtTGFuZ3VhZ2U6IGZyDQpBY2NlcHQt
RW5jb2Rpbmc6IGd6aXAsIGRlZmxhdGUNCkNvb2tpZTogKioqKioqKioKVXNlci1BZ2VudDogTW96
aWxsYS81LjAgKE1hY2ludG9zaDsgVTsgUFBDIE1hYyBPUyBYOyBmcikgQXBwbGVXZWJLaXQvNDEy
LjcgKEtIVE1MLCBsaWtlIEdlY2tvKSBTYWZhcmkvNDEyLjUNCklmLU1vZGlmaWVkLVNpbmNlOiBU
dWUsIDI1IE9jdCAyMDA1IDE0OjE3OjQyIEdNVA0KQ29ubmVjdGlvbjoga2VlcC1hbGl2ZQ0KSG9z
dDogd3d3LmFwcGxlLmNvbQ0KDQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>4476</attachid>
            <date>2005-10-25 10:01:32 -0700</date>
            <delta_ts>2005-10-25 10:01:32 -0700</delta_ts>
            <desc>Firefox load headers dump</desc>
            <filename>firefox-load-dump.txt</filename>
            <type>text/plain</type>
            <size>447</size>
            <attacher name="Nicolas Sandri">nicolas.sandri</attacher>
            
              <data encoding="base64">R0VUIC8gSFRUUC8xLjENCkhvc3Q6IHd3dy5hcHBsZS5jb20NClVzZXItQWdlbnQ6IE1vemlsbGEv
NS4wIChNYWNpbnRvc2g7IFU7IFBQQyBNYWMgT1MgWCBNYWNoLU87IGZyLUZSOyBydjoxLjcuNikg
R2Vja28vMjAwNTAyMjYgRmlyZWZveC8xLjAuMQ0KQWNjZXB0OiB0ZXh0L3htbCxhcHBsaWNhdGlv
bi94bWwsYXBwbGljYXRpb24veGh0bWwreG1sLHRleHQvaHRtbDtxPTAuOSx0ZXh0L3BsYWluO3E9
MC44LGltYWdlL3BuZywqLyo7cT0wLjUNCkFjY2VwdC1MYW5ndWFnZTogZnIsZnItZnI7cT0wLjgs
ZW4tdXM7cT0wLjUsZW47cT0wLjMNCkFjY2VwdC1FbmNvZGluZzogZ3ppcCxkZWZsYXRlDQpBY2Nl
cHQtQ2hhcnNldDogSVNPLTg4NTktMSx1dGYtODtxPTAuNywqO3E9MC43DQpLZWVwLUFsaXZlOiAz
MDANCkNvbm5lY3Rpb246IGtlZXAtYWxpdmUNCkNvb2tpZTogKioqKioqKioNCg0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>4477</attachid>
            <date>2005-10-25 10:01:52 -0700</date>
            <delta_ts>2005-10-25 10:01:52 -0700</delta_ts>
            <desc>Firefox reload headers dump</desc>
            <filename>firefox-reload-dump.txt</filename>
            <type>text/plain</type>
            <size>473</size>
            <attacher name="Nicolas Sandri">nicolas.sandri</attacher>
            
              <data encoding="base64">R0VUIC8gSFRUUC8xLjENCkhvc3Q6IHd3dy5hcHBsZS5jb20NClVzZXItQWdlbnQ6IE1vemlsbGEv
NS4wIChNYWNpbnRvc2g7IFU7IFBQQyBNYWMgT1MgWCBNYWNoLU87IGZyLUZSOyBydjoxLjcuNikg
R2Vja28vMjAwNTAyMjYgRmlyZWZveC8xLjAuMQ0KQWNjZXB0OiB0ZXh0L3htbCxhcHBsaWNhdGlv
bi94bWwsYXBwbGljYXRpb24veGh0bWwreG1sLHRleHQvaHRtbDtxPTAuOSx0ZXh0L3BsYWluO3E9
MC44LGltYWdlL3BuZywqLyo7cT0wLjUNCkFjY2VwdC1MYW5ndWFnZTogZnIsZnItZnI7cT0wLjgs
ZW4tdXM7cT0wLjUsZW47cT0wLjMNCkFjY2VwdC1FbmNvZGluZzogZ3ppcCxkZWZsYXRlDQpBY2Nl
cHQtQ2hhcnNldDogSVNPLTg4NTktMSx1dGYtODtxPTAuNywqO3E9MC43DQpLZWVwLUFsaXZlOiAz
MDANCkNvbm5lY3Rpb246IGtlZXAtYWxpdmUNCkNvb2tpZTogKioqKioqKioNCkNhY2hlLUNvbnRy
b2w6IG1heC1hZ2U9MA0KDQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>8891</attachid>
            <date>2006-06-17 16:16:24 -0700</date>
            <delta_ts>2006-06-19 13:42:52 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>5499r1_patch.txt</filename>
            <type>text/plain</type>
            <size>10032</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9yZWZyZXNoLWhlYWRlcnMtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9yZWZyZXNo
LWhlYWRlcnMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9taXNjL3JlZnJlc2gtaGVhZGVycy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMyBAQAorU1VDQ0VTUworCitUZXN0IGZvciBidWcgNTQ5OTogUGFnZSByZWxvYWQgZG9l
cyBub3Qgc2VuZCBhbnkgY2FjaGUgY29udHJvbCBoZWFkZXJzLgpJbmRleDogTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9taXNjL3JlZnJlc2gtaGVhZGVycy5waHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9taXNjL3JlZnJlc2gtaGVhZGVycy5waHAJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVmcmVzaC1oZWFkZXJzLnBocAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwzNCBAQAorPD9waHAKKyAgJGdvdE1heEFnZT1mYWxzZTsKKyAgJGdv
dE5vQ2FjaGU9ZmFsc2U7CisgICRoZWFkZXJzID0gZ2V0YWxsaGVhZGVycygpOyAKKworICBmb3Jl
YWNoICgkaGVhZGVycyBhcyAkbmFtZSA9PiAkY29udGVudCkgeworICAgIGlmICgwID09IHN0cmNh
c2VjbXAoJG5hbWUsICJDYWNoZS1Db250cm9sIikgJiYgMCA9PSBzdHJjYXNlY21wKCRjb250ZW50
LCAibWF4LWFnZT0wIikpCisgICAgeworICAgICAgJGdvdE1heEFnZSA9IHRydWU7CisgICAgfQor
ICAgIAorICAgIGlmICgoMCA9PSBzdHJjYXNlY21wKCRuYW1lLCAiQ2FjaGUtQ29udHJvbCIpICYm
IDAgPT0gc3RyY2FzZWNtcCgkY29udGVudCwgIm5vLWNhY2hlIikpIHx8CisgICAgICAgICgwID09
IHN0cmNhc2VjbXAoJG5hbWUsICJQcmFnbWEiKSAmJiAwID09IHN0cmNhc2VjbXAoJGNvbnRlbnQs
ICJuby1jYWNoZSIpKSkKKyAgICB7CisgICAgICAkZ290Tm9DYWNoZSA9IHRydWU7CisgICAgfQor
ICB9CisgIAorICBpZiAoJGdvdE5vQ2FjaGUpIHsKKyAgICBlY2hvICc8cD5Hb3QgYSBuby1jYWNo
ZSBkaXJlY3RpdmU7IEZBSUxVUkUhPC9wPic7CisgICAgZWNobyAnPHNjcmlwdD5pZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKSB7IGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUo
KTsgfTwvc2NyaXB0Pic7CisgIH0gZWxzZSBpZiAoJGdvdE1heEFnZSkgeworICAgIGVjaG8gJzxw
PlNVQ0NFU1M8L3A+JzsKKyAgICBlY2hvICc8c2NyaXB0PmlmICh3aW5kb3cubGF5b3V0VGVzdENv
bnRyb2xsZXIpIHsgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOyB9PC9zY3JpcHQ+
JzsKKyAgfSBlbHNlIHsKKyAgICBlY2hvICc8Ym9keSBvbmxvYWQ9IndpbmRvdy5sb2NhdGlvbi5y
ZWxvYWQoKTsiPic7CisgICAgZWNobyAnPHA+Tm8gY2FjaGUgY29udHJvbCBoZWFkZXJzLCByZWxv
YWRpbmcuLi48L3A+JzsKKyAgICBlY2hvICc8c2NyaXB0PmlmICh3aW5kb3cubGF5b3V0VGVzdENv
bnRyb2xsZXIpIHsgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOyB9PC9zY3Jp
cHQ+JzsKKyAgICBlY2hvICc8c2NyaXB0PmZ1bmN0aW9uIHRlc3QoKSB7d2luZG93LmxvY2F0aW9u
LnJlbG9hZCgpO308L3NjcmlwdD4nOworICB9CisKKyAgZWNobyAnPHNjcmlwdD5pZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKSB7IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQo
KTsgfTwvc2NyaXB0Pic7CisgIGVjaG8gJzxwPlRlc3QgZm9yIDxhIGhyZWY9Imh0dHA6Ly9idWd6
aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTQ5OSI+YnVnIDU0OTk8L2E+OiBQ
YWdlIHJlbG9hZCBkb2VzIG5vdCBzZW5kIGFueSBjYWNoZSBjb250cm9sIGhlYWRlcnMuPC9wPic7
Cis/PgpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy9qcy9ranNfd2luZG93LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL2pzL2tqc193aW5kb3cuY3BwCShyZXZpc2lvbiAxNDg5NikK
KysrIFdlYkNvcmUvYmluZGluZ3MvanMva2pzX3dpbmRvdy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTIyMDIsMTAgKzIyMDIsOSBAQCBKU1ZhbHVlICpMb2NhdGlvbkZ1bmM6OmNhbGxBc0Z1bmN0aW9u
KEV4CiAgICAgY2FzZSBMb2NhdGlvbjo6UmVsb2FkOgogICAgIHsKICAgICAgIGNvbnN0IFdpbmRv
dyogd2luZG93ID0gV2luZG93OjpyZXRyaWV2ZVdpbmRvdyhmcmFtZSk7Ci0gICAgICBGcmFtZSog
YWN0aXZlUGFydCA9IFdpbmRvdzo6cmV0cmlldmVBY3RpdmUoZXhlYyktPmZyYW1lKCk7CiAgICAg
ICBpZiAoIWZyYW1lLT51cmwoKS51cmwoKS5zdGFydHNXaXRoKCJqYXZhc2NyaXB0OiIsIGZhbHNl
KSB8fCAod2luZG93ICYmIHdpbmRvdy0+aXNTYWZlU2NyaXB0KGV4ZWMpKSkgewogICAgICAgICBi
b29sIHVzZXJHZXN0dXJlID0gc3RhdGljX2Nhc3Q8U2NyaXB0SW50ZXJwcmV0ZXIgKj4oZXhlYy0+
ZHluYW1pY0ludGVycHJldGVyKCkpLT53YXNSdW5CeVVzZXJHZXN0dXJlKCk7Ci0gICAgICAgIGZy
YW1lLT5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGZyYW1lLT51cmwoKS51cmwoKSwgYWN0aXZlUGFy
dC0+cmVmZXJyZXIoKSwgdHJ1ZS8qbG9jayBoaXN0b3J5Ki8sIHVzZXJHZXN0dXJlKTsKKyAgICAg
ICAgZnJhbWUtPnNjaGVkdWxlUmVmcmVzaCh1c2VyR2VzdHVyZSk7CiAgICAgICB9CiAgICAgICBi
cmVhazsKICAgICB9CkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvcGFnZS9GcmFtZS5jcHAJKHJldmlzaW9uIDE0ODk2KQorKysgV2ViQ29yZS9wYWdl
L0ZyYW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsNyArNjUsNiBAQAogI2luY2x1ZGUgIlNl
Z21lbnRlZFN0cmluZy5oIgogI2luY2x1ZGUgIlRleHREb2N1bWVudC5oIgogI2luY2x1ZGUgIlRl
eHRJdGVyYXRvci5oIgotI2luY2x1ZGUgIlRyYW5zZmVySm9iLmgiCiAjaW5jbHVkZSAiVHlwaW5n
Q29tbWFuZC5oIgogI2luY2x1ZGUgImNzc3N0eWxlc2VsZWN0b3IuaCIKICNpbmNsdWRlICJkb20y
X2V2ZW50c2ltcGwuaCIKQEAgLTIzNywxNyArMjM2LDYgQEAgYm9vbCBGcmFtZTo6ZGlkT3BlblVS
TChjb25zdCBLVVJMJiB1cmwpCiAgIAogICBjbG9zZVVSTCgpOwogCi0gIGlmIChkLT5tX3JlcXVl
c3QucmVsb2FkKQotICAgICBkLT5tX2NhY2hlUG9saWN5ID0gS0lPOjpDQ19SZWZyZXNoOwotICBl
bHNlCi0gICAgIGQtPm1fY2FjaGVQb2xpY3kgPSBLSU86OkNDX1ZlcmlmeTsKLQotICBpZiAoZC0+
bV9yZXF1ZXN0LmRvUG9zdCgpICYmIHVybC5wcm90b2NvbCgpLnN0YXJ0c1dpdGgoImh0dHAiKSkg
ewotICAgICAgZC0+bV9qb2IgPSBuZXcgVHJhbnNmZXJKb2IodGhpcywgIlBPU1QiLCB1cmwsIGQt
Pm1fcmVxdWVzdC5wb3N0RGF0YSk7Ci0gICAgICBkLT5tX2pvYi0+YWRkTWV0YURhdGEoImNvbnRl
bnQtdHlwZSIsIGQtPm1fcmVxdWVzdC5jb250ZW50VHlwZSgpKTsKLSAgfSBlbHNlCi0gICAgICBk
LT5tX2pvYiA9IG5ldyBUcmFuc2ZlckpvYih0aGlzLCAiR0VUIiwgdXJsKTsKLQogICBkLT5tX2JD
b21wbGV0ZSA9IGZhbHNlOwogICBkLT5tX2JMb2FkaW5nTWFpblJlc291cmNlID0gdHJ1ZTsKICAg
ZC0+bV9iTG9hZEV2ZW50RW1pdHRlZCA9IGZhbHNlOwpAQCAtMjg3LDEyICsyNzUsOCBAQCB2b2lk
IEZyYW1lOjpzdG9wTG9hZGluZyhib29sIHNlbmRVbmxvYWQpCiB7CiAgIGlmIChkLT5tX2RvYyAm
JiBkLT5tX2RvYy0+dG9rZW5pemVyKCkpCiAgICAgZC0+bV9kb2MtPnRva2VuaXplcigpLT5zdG9w
UGFyc2luZygpOwotICAgIAotICBpZiAoZC0+bV9qb2IpCi0gIHsKLSAgICBkLT5tX2pvYi0+a2ls
bCgpOwotICAgIGQtPm1fam9iID0gMDsKLSAgfQorICAKKyAgZC0+bV9tZXRhRGF0YS5jbGVhcigp
OwogCiAgIGlmIChzZW5kVW5sb2FkKSB7CiAgICAgaWYgKGQtPm1fZG9jKSB7CkBAIC01MDgsNyAr
NDkyLDcgQEAgdm9pZCBGcmFtZTo6cmVjZWl2ZWRGaXJzdERhdGEoKQogICAgIERlcHJlY2F0ZWRT
dHJpbmcgcURhdGE7CiAKICAgICAvLyBTdXBwb3J0IGZvciBodHRwLXJlZnJlc2gKLSAgICBxRGF0
YSA9IGQtPm1fam9iLT5xdWVyeU1ldGFEYXRhKCJodHRwLXJlZnJlc2giKS5kZXByZWNhdGVkU3Ry
aW5nKCk7CisgICAgcURhdGEgPSBkLT5tX21ldGFEYXRhLmdldCgiaHR0cC1yZWZyZXNoIikuZGVw
cmVjYXRlZFN0cmluZygpOwogICAgIGlmICghcURhdGEuaXNFbXB0eSgpKSB7CiAgICAgICBkb3Vi
bGUgZGVsYXk7CiAgICAgICBpbnQgcG9zID0gcURhdGEuZmluZCgnOycpOwpAQCAtNTQ2LDIyICs1
MzAsNyBAQCB2b2lkIEZyYW1lOjpyZWNlaXZlZEZpcnN0RGF0YSgpCiAgICAgfQogCiAgICAgLy8g
U3VwcG9ydCBmb3IgaHR0cCBsYXN0LW1vZGlmaWVkCi0gICAgZC0+bV9sYXN0TW9kaWZpZWQgPSBk
LT5tX2pvYi0+cXVlcnlNZXRhRGF0YSgibW9kaWZpZWQiKTsKLX0KLQotdm9pZCBGcmFtZTo6cmVj
ZWl2ZWRBbGxEYXRhKFRyYW5zZmVySm9iKiBqb2IpCi17Ci0gICAgZC0+bV9qb2IgPSAwOwotCi0g
ICAgaWYgKGpvYi0+ZXJyb3IoKSkgewotICAgICAgICBjaGVja0NvbXBsZXRlZCgpOwotICAgICAg
ICByZXR1cm47Ci0gICAgfQotCi0gICAgZC0+bV93b3JraW5nVVJMID0gS1VSTCgpOwotCi0gICAg
aWYgKGQtPm1fZG9jLT5wYXJzaW5nKCkpCi0gICAgICAgIGVuZCgpOyAvLyB3aWxsIGNhbGwgY29t
cGxldGVkKCkKKyAgICBkLT5tX2xhc3RNb2RpZmllZCA9IGQtPm1fbWV0YURhdGEuZ2V0KCJtb2Rp
ZmllZCIpOwogfQogCiB2b2lkIEZyYW1lOjpjaGlsZEJlZ2luKCkKQEAgLTkzNSw2ICs5MDQsMjkg
QEAgdm9pZCBGcmFtZTo6c2NoZWR1bGVMb2NhdGlvbkNoYW5nZShjb25zdAogICAgICAgICBzdGFy
dFJlZGlyZWN0aW9uVGltZXIoKTsKIH0KIAordm9pZCBGcmFtZTo6c2NoZWR1bGVSZWZyZXNoKGJv
b2wgdXNlckdlc3R1cmUpCit7CisgICAgLy8gSGFuZGxlIGEgbG9jYXRpb24gY2hhbmdlIG9mIGEg
cGFnZSB3aXRoIG5vIGRvY3VtZW50IGFzIGEgc3BlY2lhbCBjYXNlLgorICAgIC8vIFRoaXMgbWF5
IGhhcHBlbiB3aGVuIGEgZnJhbWUgcmVxdWVzdHMgYSByZWZyZXNoIG9mIGFub3RoZXIgZnJhbWUu
CisgICAgZC0+bV9zY2hlZHVsZWRSZWRpcmVjdGlvbiA9IGQtPm1fZG9jID8gbG9jYXRpb25DaGFu
Z2VTY2hlZHVsZWQgOiBsb2NhdGlvbkNoYW5nZVNjaGVkdWxlZER1cmluZ0xvYWQ7CisgICAgCisg
ICAgLy8gSWYgYSByZWZyZXNoIHdhcyBzY2hlZHVsZWQgZHVyaW5nIGEgbG9hZCwgdGhlbiBzdG9w
IHRoZSBjdXJyZW50IGxvYWQuCisgICAgLy8gT3RoZXJ3aXNlIHdoZW4gdGhlIGN1cnJlbnQgbG9h
ZCB0cmFuc2l0aW9ucyBmcm9tIGEgcHJvdmlzaW9uYWwgdG8gYSAKKyAgICAvLyBjb21taXR0ZWQg
c3RhdGUsIHBlbmRpbmcgcmVkaXJlY3RzIG1heSBiZSBjYW5jZWxsZWQuIAorICAgIGlmIChkLT5t
X3NjaGVkdWxlZFJlZGlyZWN0aW9uID09IGxvY2F0aW9uQ2hhbmdlU2NoZWR1bGVkRHVyaW5nTG9h
ZCkKKyAgICAgICAgc3RvcExvYWRpbmcodHJ1ZSk7ICAgCisKKyAgICBkLT5tX2RlbGF5UmVkaXJl
Y3QgPSAwOworICAgIGQtPm1fcmVkaXJlY3RVUkwgPSB1cmwoKS51cmwoKTsKKyAgICBkLT5tX3Jl
ZGlyZWN0UmVmZXJyZXIgPSByZWZlcnJlcigpOworICAgIGQtPm1fcmVkaXJlY3RMb2NrSGlzdG9y
eSA9IHRydWU7CisgICAgZC0+bV9yZWRpcmVjdFVzZXJHZXN0dXJlID0gdXNlckdlc3R1cmU7Cisg
ICAgZC0+bV9jYWNoZVBvbGljeSA9IEtJTzo6Q0NfUmVmcmVzaDsKKyAgICBzdG9wUmVkaXJlY3Rp
b25UaW1lcigpOworICAgIGlmIChkLT5tX2JDb21wbGV0ZSkKKyAgICAgICAgc3RhcnRSZWRpcmVj
dGlvblRpbWVyKCk7Cit9CisKIGJvb2wgRnJhbWU6OmlzU2NoZWR1bGVkTG9jYXRpb25DaGFuZ2VQ
ZW5kaW5nKCkgY29uc3QKIHsKICAgICBzd2l0Y2ggKGQtPm1fc2NoZWR1bGVkUmVkaXJlY3Rpb24p
IHsKQEAgLTEwMDcsNiArOTk5LDggQEAgdm9pZCBGcmFtZTo6Y2hhbmdlTG9jYXRpb24oY29uc3Qg
RGVwcmVjYQogICAgIGlmICghcmVmZXJyZXIuaXNFbXB0eSgpKQogICAgICAgICByZXF1ZXN0LnNl
dFJlZmVycmVyKHJlZmVycmVyKTsKIAorICAgIHJlcXVlc3QucmVsb2FkID0gKGQtPm1fY2FjaGVQ
b2xpY3kgPT0gS0lPOjpDQ19SZWxvYWQpIHx8IChkLT5tX2NhY2hlUG9saWN5ID09IEtJTzo6Q0Nf
UmVmcmVzaCk7CisgICAgCiAgICAgdXJsU2VsZWN0ZWQocmVxdWVzdCwgIl9zZWxmIik7CiB9CiAK
QEAgLTEwNDIsMTEgKzEwMzYsNiBAQCB2b2lkIEZyYW1lOjpyZWRpcmVjdGlvblRpbWVyRmlyZWQo
VGltZXI8CiAgICAgY2hhbmdlTG9jYXRpb24oVVJMLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIHVz
ZXJHZXN0dXJlKTsKIH0KIAotdm9pZCBGcmFtZTo6cmVjZWl2ZWRSZWRpcmVjdChUcmFuc2Zlckpv
YiosIGNvbnN0IEtVUkwmIHVybCkKLXsKLSAgICBkLT5tX3dvcmtpbmdVUkwgPSB1cmw7Ci19Ci0K
IERlcHJlY2F0ZWRTdHJpbmcgRnJhbWU6OmVuY29kaW5nKCkgY29uc3QKIHsKICAgICBpZiAoZC0+
bV9oYXZlRW5jb2RpbmcgJiYgIWQtPm1fZW5jb2RpbmcuaXNFbXB0eSgpKQpAQCAtMzEwNCw3ICsz
MDkzLDcgQEAgYm9vbCBGcmFtZTo6c2Nyb2xsYmFyc1Zpc2libGUoKQogCiB2b2lkIEZyYW1lOjph
ZGRNZXRhRGF0YShjb25zdCBTdHJpbmcmIGtleSwgY29uc3QgU3RyaW5nJiB2YWx1ZSkKIHsKLSAg
ICBkLT5tX2pvYi0+YWRkTWV0YURhdGEoa2V5LCB2YWx1ZSk7CisgICAgZC0+bV9tZXRhRGF0YS5z
ZXQoa2V5LCB2YWx1ZSk7CiB9CiAKIC8vIFRoaXMgZG9lcyB0aGUgc2FtZSBraW5kIG9mIHdvcmsg
dGhhdCBGcmFtZTo6b3BlblVSTCBkb2VzLCBleGNlcHQgaXQgcmVsaWVzIG9uIHRoZSBmYWN0Cklu
ZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvRnJh
bWUuaAkocmV2aXNpb24gMTQ4OTYpCisrKyBXZWJDb3JlL3BhZ2UvRnJhbWUuaAkod29ya2luZyBj
b3B5KQpAQCAtMzcsNyArMzcsNiBAQAogI2luY2x1ZGUgIk5vZGUuaCIKICNpbmNsdWRlICJUZXh0
QWZmaW5pdHkuaCIKICNpbmNsdWRlICJUZXh0R3JhbnVsYXJpdHkuaCIKLSNpbmNsdWRlICJUcmFu
c2ZlckpvYkNsaWVudC5oIgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlICJSZW5k
ZXJPYmplY3QuaCIKIApAQCAtOTIsNyArOTEsNyBAQCBlbnVtIE9iamVjdENvbnRlbnRUeXBlIHsK
ICAgICBPYmplY3RDb250ZW50UGx1Z2luLAogfTsKIAotY2xhc3MgRnJhbWUgOiBwdWJsaWMgU2hh
cmVkPEZyYW1lPiwgTm9uY29weWFibGUsIFRyYW5zZmVySm9iQ2xpZW50IHsKK2NsYXNzIEZyYW1l
IDogcHVibGljIFNoYXJlZDxGcmFtZT4sIE5vbmNvcHlhYmxlIHsKIAogcHVibGljOgogICBlbnVt
IHsgTm9YUG9zRm9yVmVydGljYWxBcnJvd05hdmlnYXRpb24gPSBJTlRfTUlOIH07CkBAIC0xNzgs
NiArMTc3LDcgQEAgcHVibGljOgogICAgKi8KICAgdm9pZCBjaGFuZ2VMb2NhdGlvbihjb25zdCBE
ZXByZWNhdGVkU3RyaW5nJiBVUkwsIGNvbnN0IERlcHJlY2F0ZWRTdHJpbmcmIHJlZmVycmVyLCBi
b29sIGxvY2tIaXN0b3J5ID0gdHJ1ZSwgYm9vbCB1c2VyR2VzdHVyZSA9IGZhbHNlKTsKICAgdm9p
ZCBzY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKGNvbnN0IERlcHJlY2F0ZWRTdHJpbmcmIHVybCwgY29u
c3QgRGVwcmVjYXRlZFN0cmluZyYgcmVmZXJyZXIsIGJvb2wgbG9ja0hpc3RvcnkgPSB0cnVlLCBi
b29sIHVzZXJHZXN0dXJlID0gZmFsc2UpOworICB2b2lkIHNjaGVkdWxlUmVmcmVzaChib29sIHVz
ZXJHZXN0dXJlID0gZmFsc2UpOwogICBib29sIGlzU2NoZWR1bGVkTG9jYXRpb25DaGFuZ2VQZW5k
aW5nKCkgY29uc3Q7CiAKICAgLyoqCkBAIC01ODYsOCArNTg2LDYgQEAgcHVibGljOgogICB2b2lk
IHJlcGFyc2VDb25maWd1cmF0aW9uKCk7CiAKIHByaXZhdGU6Ci0gICAgdmlydHVhbCB2b2lkIHJl
Y2VpdmVkUmVkaXJlY3QoVHJhbnNmZXJKb2IqLCBjb25zdCBLVVJMJik7Ci0gICAgdmlydHVhbCB2
b2lkIHJlY2VpdmVkQWxsRGF0YShUcmFuc2ZlckpvYiopOwogCiAgIHZvaWQgY2hpbGRCZWdpbigp
OwogCkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWVQcml2YXRlLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9wYWdlL0ZyYW1lUHJpdmF0ZS5oCShyZXZpc2lvbiAxNDg5NikKKysrIFdlYkNvcmUvcGFn
ZS9GcmFtZVByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtNjYsNyArNjYsNiBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAgICAgICAgICAgICAsIG1fYkphdmFFbmFibGVkKHRydWUpCiAgICAgICAg
ICAgICAsIG1fYlBsdWdpbnNFbmFibGVkKHRydWUpCiAgICAgICAgICAgICAsIG1fc2V0dGluZ3Mo
MCkKLSAgICAgICAgICAgICwgbV9qb2IoMCkKICAgICAgICAgICAgICwgbV9iQ29tcGxldGUodHJ1
ZSkKICAgICAgICAgICAgICwgbV9iTG9hZGluZ01haW5SZXNvdXJjZShmYWxzZSkKICAgICAgICAg
ICAgICwgbV9iTG9hZEV2ZW50RW1pdHRlZCh0cnVlKQpAQCAtMTM1LDcgKzEzNCw3IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBLSFRNTFNldHRpbmdzKiBtX3NldHRpbmdzOwogCi0g
ICAgICAgIFRyYW5zZmVySm9iKiBtX2pvYjsKKyAgICAgICAgSGFzaE1hcDxTdHJpbmcsIFN0cmlu
Zz4gbV9tZXRhRGF0YTsKIAogICAgICAgICBTdHJpbmcgbV9ranNTdGF0dXNCYXJUZXh0OwogICAg
ICAgICBTdHJpbmcgbV9ranNEZWZhdWx0U3RhdHVzQmFyVGV4dDsKSW5kZXg6IFdlYktpdC9XZWJW
aWV3L1dlYkZyYW1lLm0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L1dlYlZpZXcvV2ViRnJhbWUubQko
cmV2aXNpb24gMTQ4OTYpCisrKyBXZWJLaXQvV2ViVmlldy9XZWJGcmFtZS5tCSh3b3JraW5nIGNv
cHkpCkBAIC0yNzQ3LDYgKzI3NDcsOSBAQCBzdGF0aWMgQ0ZBYnNvbHV0ZVRpbWUgX3RpbWVPZkxh
c3RDb21wbGV0CiB7CiAgICAgW3JlcXVlc3QgX3dlYl9zZXRIVFRQVXNlckFnZW50Oltbc2VsZiB3
ZWJWaWV3XSB1c2VyQWdlbnRGb3JVUkw6W3JlcXVlc3QgVVJMXV1dOwogICAgIAorICAgIGlmIChf
cHJpdmF0ZS0+bG9hZFR5cGUgPT0gV2ViRnJhbWVMb2FkVHlwZVJlbG9hZCkKKyAgICAgICAgW3Jl
cXVlc3Qgc2V0VmFsdWU6QCJtYXgtYWdlPTAiIGZvckhUVFBIZWFkZXJGaWVsZDpAIkNhY2hlLUNv
bnRyb2wiXTsKKyAgICAKICAgICAvLyBEb24ndCBzZXQgdGhlIGNvb2tpZSBwb2xpY3kgVVJMIGlm
IGl0J3MgYWxyZWFkeSBiZWVuIHNldC4KICAgICBpZiAoW3JlcXVlc3QgbWFpbkRvY3VtZW50VVJM
XSA9PSBuaWwpIHsKICAgICAgICAgaWYgKG1haW5SZXNvdXJjZSAmJiAoc2VsZiA9PSBbW3NlbGYg
d2ViVmlld10gbWFpbkZyYW1lXSB8fCBmKSkKQEAgLTI4NzEsNiArMjg3NCw3IEBAIHN0YXRpYyBD
RkFic29sdXRlVGltZSBfdGltZU9mTGFzdENvbXBsZXQKIAogLSAodm9pZClsb2FkUmVxdWVzdDoo
TlNVUkxSZXF1ZXN0ICopcmVxdWVzdAogeworICAgIF9wcml2YXRlLT5sb2FkVHlwZSA9IFdlYkZy
YW1lTG9hZFR5cGVTdGFuZGFyZDsgLy8gRklYTUU6IHdoYXQgZWxzZSBtYXkgbmVlZCB0byBiZSBy
ZXNldD8KICAgICBbc2VsZiBfbG9hZFJlcXVlc3Q6cmVxdWVzdCBhcmNoaXZlOm5pbF07CiB9CiAK
</data>
<flag name="review"
          id="2600"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>