<?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>22623</bug_id>
          
          <creation_ts>2008-12-03 05:13:02 -0800</creation_ts>
          <short_desc>Uninitialized memory access in cache parsing code</short_desc>
          <delta_ts>2008-12-03 07:05:32 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dean McNamee">deanm</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ddkilzer</cc>
    
    <cc>koivisto</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>101181</commentid>
    <comment_count>0</comment_count>
    <who name="Dean McNamee">deanm</who>
    <bug_when>2008-12-03 05:13:02 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/38145
https://bugs.webkit.org/show_bug.cgi?id=21596

This patch added two additional fields:

 	129	    mutable bool m_haveParsedCacheControlHeader:1; 
 	130	    mutable bool m_haveParsedPragmaHeader:1; 

These are not initialized anywhere.  They should likely both be set to false in the constructor above.  This is causing undefined behavior, it can lead to the code thinking we have already parsed the cache control header (and returning the already parsed value), when we actually have no parsed anything.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101182</commentid>
    <comment_count>1</comment_count>
      <attachid>25707</attachid>
    <who name="Dean McNamee">deanm</who>
    <bug_when>2008-12-03 05:17:59 -0800</bug_when>
    <thetext>Created attachment 25707
Patch to initialize the variables in the contructors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101191</commentid>
    <comment_count>2</comment_count>
      <attachid>25707</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2008-12-03 06:32:50 -0800</bug_when>
    <thetext>Comment on attachment 25707
Patch to initialize the variables in the contructors.

&gt;+2008-12-03  Dean McNamee  &lt;deanm@chromium.org&gt;
&gt;+
&gt;+        Reviewed by NOBODY (OOPS!).
&gt;+
&gt;+        Initialize m_haveParsedCacheControlHeader and m_haveParsedPragmaHeader.
&gt;+
&gt;+        * platform/network/ResourceResponseBase.h:
&gt;+        (WebCore::ResourceResponseBase::ResourceResponseBase):

Please include a reference to this bug in the ChangeLog entry before landing the patch.

Otherwise, looks good.  Thanks for finding this!  r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101192</commentid>
    <comment_count>3</comment_count>
      <attachid>25709</attachid>
    <who name="Dean McNamee">deanm</who>
    <bug_when>2008-12-03 06:38:12 -0800</bug_when>
    <thetext>Created attachment 25709
Added bug reference</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101194</commentid>
    <comment_count>4</comment_count>
    <who name="Dean McNamee">deanm</who>
    <bug_when>2008-12-03 06:41:34 -0800</bug_when>
    <thetext>Added a reference to the bug.  I don&apos;t have commit access, so if you could commit it for me that&apos;d be great.  Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101197</commentid>
    <comment_count>5</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2008-12-03 07:02:03 -0800</bug_when>
    <thetext>$ git svn dcommit
Committing to http://svn.webkit.org/repository/webkit/trunk ...
        M       WebCore/ChangeLog
        M       WebCore/platform/network/ResourceResponseBase.h
Committed r38940

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101198</commentid>
    <comment_count>6</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2008-12-03 07:05:32 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/38940

</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25707</attachid>
            <date>2008-12-03 05:17:59 -0800</date>
            <delta_ts>2008-12-03 06:32:50 -0800</delta_ts>
            <desc>Patch to initialize the variables in the contructors.</desc>
            <filename>z.diff</filename>
            <type>text/plain</type>
            <size>1256</size>
            <attacher name="Dean McNamee">deanm</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
M2U1YmM5Ny4uZTViYjllYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAwOC0xMi0wMyAgRGVhbiBNY05hbWVl
ICA8ZGVhbm1AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEluaXRpYWxpemUgbV9oYXZlUGFyc2VkQ2FjaGVDb250cm9sSGVhZGVy
IGFuZCBtX2hhdmVQYXJzZWRQcmFnbWFIZWFkZXIuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmg6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZVJl
c3BvbnNlQmFzZTo6UmVzb3VyY2VSZXNwb25zZUJhc2UpOgorCiAyMDA4LTEyLTAzICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBQcm9iYWJsZSBidWlsZCBmaXgu
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJh
c2UuaCBiL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5oCmlu
ZGV4IDNkZTFhMmYuLmI4MzEzZTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9S
ZXNvdXJjZVJlc3BvbnNlQmFzZS5oCkBAIC05MSw2ICs5MSw4IEBAIGNsYXNzIFJlc291cmNlUmVz
cG9uc2VCYXNlIHsKICAgICAgICAgLCBtX2V4cGlyYXRpb25EYXRlKDApCiAgICAgICAgICwgbV9s
YXN0TW9kaWZpZWREYXRlKDApCiAgICAgICAgICwgbV9pc051bGwodHJ1ZSkKKyAgICAgICAgLCBt
X2hhdmVQYXJzZWRDYWNoZUNvbnRyb2xIZWFkZXIoZmFsc2UpCisgICAgICAgICwgbV9oYXZlUGFy
c2VkUHJhZ21hSGVhZGVyKGZhbHNlKQogICAgIHsKICAgICB9CiAKQEAgLTEwNCw2ICsxMDYsOCBA
QCBjbGFzcyBSZXNvdXJjZVJlc3BvbnNlQmFzZSB7CiAgICAgICAgICwgbV9leHBpcmF0aW9uRGF0
ZSgwKQogICAgICAgICAsIG1fbGFzdE1vZGlmaWVkRGF0ZSgwKQogICAgICAgICAsIG1faXNOdWxs
KGZhbHNlKQorICAgICAgICAsIG1faGF2ZVBhcnNlZENhY2hlQ29udHJvbEhlYWRlcihmYWxzZSkK
KyAgICAgICAgLCBtX2hhdmVQYXJzZWRQcmFnbWFIZWFkZXIoZmFsc2UpCiAgICAgewogICAgIH0K
IAo=
</data>
<flag name="review"
          id="12010"
          type_id="1"
          status="+"
          setter="ddkilzer"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25709</attachid>
            <date>2008-12-03 06:38:12 -0800</date>
            <delta_ts>2008-12-03 06:38:12 -0800</delta_ts>
            <desc>Added bug reference</desc>
            <filename>z.diff</filename>
            <type>text/plain</type>
            <size>1311</size>
            <attacher name="Dean McNamee">deanm</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
M2U1YmM5Ny4uOGM1YzhmNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAwOC0xMi0wMyAgRGVhbiBNY05hbWVl
ICA8ZGVhbm1AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEluaXRpYWxpemUgbV9oYXZlUGFyc2VkQ2FjaGVDb250cm9sSGVhZGVy
IGFuZCBtX2hhdmVQYXJzZWRQcmFnbWFIZWFkZXIuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjYyMworCisgICAgICAgICogcGxhdGZvcm0vbmV0d29y
ay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VSZXNw
b25zZUJhc2U6OlJlc291cmNlUmVzcG9uc2VCYXNlKToKKwogMjAwOC0xMi0wMyAgQW50dGkgS29p
dmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgUHJvYmFibGUgYnVpbGQgZml4Lgpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNl
LmggYi9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuaAppbmRl
eCAzZGUxYTJmLi5iODMxM2U3IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
UmVzb3VyY2VSZXNwb25zZUJhc2UuaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUmVz
b3VyY2VSZXNwb25zZUJhc2UuaApAQCAtOTEsNiArOTEsOCBAQCBjbGFzcyBSZXNvdXJjZVJlc3Bv
bnNlQmFzZSB7CiAgICAgICAgICwgbV9leHBpcmF0aW9uRGF0ZSgwKQogICAgICAgICAsIG1fbGFz
dE1vZGlmaWVkRGF0ZSgwKQogICAgICAgICAsIG1faXNOdWxsKHRydWUpCisgICAgICAgICwgbV9o
YXZlUGFyc2VkQ2FjaGVDb250cm9sSGVhZGVyKGZhbHNlKQorICAgICAgICAsIG1faGF2ZVBhcnNl
ZFByYWdtYUhlYWRlcihmYWxzZSkKICAgICB7CiAgICAgfQogCkBAIC0xMDQsNiArMTA2LDggQEAg
Y2xhc3MgUmVzb3VyY2VSZXNwb25zZUJhc2UgewogICAgICAgICAsIG1fZXhwaXJhdGlvbkRhdGUo
MCkKICAgICAgICAgLCBtX2xhc3RNb2RpZmllZERhdGUoMCkKICAgICAgICAgLCBtX2lzTnVsbChm
YWxzZSkKKyAgICAgICAgLCBtX2hhdmVQYXJzZWRDYWNoZUNvbnRyb2xIZWFkZXIoZmFsc2UpCisg
ICAgICAgICwgbV9oYXZlUGFyc2VkUHJhZ21hSGVhZGVyKGZhbHNlKQogICAgIHsKICAgICB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>