Changeset 87301 in webkit


Ignore:
Timestamp:
May 25, 2011 9:50:53 AM (13 years ago)
Author:
commit-queue@webkit.org
Message:

2011-05-25 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r87229.
http://trac.webkit.org/changeset/87229
https://bugs.webkit.org/show_bug.cgi?id=61445

Lots of tests crashing in
CFNetwork!URLResponse::createFilenameFromResponseHeaders on
Windows XP (Requested by aroben on #webkit).

  • platform/network/ResourceResponseBase.cpp: (WebCore::ResourceResponseBase::adopt): (WebCore::ResourceResponseBase::suggestedFilename): (WebCore::ResourceResponseBase::setSuggestedFilename): (WebCore::ResourceResponseBase::httpStatusText): (WebCore::ResourceResponseBase::setHTTPStatusText): (WebCore::ResourceResponseBase::httpHeaderField): (WebCore::ResourceResponseBase::setHTTPHeaderField): (WebCore::ResourceResponseBase::httpHeaderFields): (WebCore::ResourceResponseBase::isAttachment): (WebCore::ResourceResponseBase::setLastModifiedDate): (WebCore::ResourceResponseBase::lastModifiedDate): (WebCore::ResourceResponseBase::wasCached): (WebCore::ResourceResponseBase::connectionReused): (WebCore::ResourceResponseBase::setConnectionReused): (WebCore::ResourceResponseBase::connectionID): (WebCore::ResourceResponseBase::setConnectionID): (WebCore::ResourceResponseBase::resourceLoadTiming): (WebCore::ResourceResponseBase::setResourceLoadTiming): (WebCore::ResourceResponseBase::resourceLoadInfo): (WebCore::ResourceResponseBase::setResourceLoadInfo):
  • platform/network/ResourceResponseBase.h:
  • platform/network/cf/ResourceResponse.h: (WebCore::ResourceResponse::ResourceResponse):
  • platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::platformLazyInit):
  • platform/network/mac/ResourceResponseMac.mm: (WebCore::ResourceResponse::platformLazyInit):
Location:
trunk/Source/WebCore
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r87298 r87301  
     12011-05-25  Sheriff Bot  <webkit.review.bot@gmail.com>
     2
     3        Unreviewed, rolling out r87229.
     4        http://trac.webkit.org/changeset/87229
     5        https://bugs.webkit.org/show_bug.cgi?id=61445
     6
     7        Lots of tests crashing in
     8        CFNetwork!URLResponse::createFilenameFromResponseHeaders on
     9        Windows XP (Requested by aroben on #webkit).
     10
     11        * platform/network/ResourceResponseBase.cpp:
     12        (WebCore::ResourceResponseBase::adopt):
     13        (WebCore::ResourceResponseBase::suggestedFilename):
     14        (WebCore::ResourceResponseBase::setSuggestedFilename):
     15        (WebCore::ResourceResponseBase::httpStatusText):
     16        (WebCore::ResourceResponseBase::setHTTPStatusText):
     17        (WebCore::ResourceResponseBase::httpHeaderField):
     18        (WebCore::ResourceResponseBase::setHTTPHeaderField):
     19        (WebCore::ResourceResponseBase::httpHeaderFields):
     20        (WebCore::ResourceResponseBase::isAttachment):
     21        (WebCore::ResourceResponseBase::setLastModifiedDate):
     22        (WebCore::ResourceResponseBase::lastModifiedDate):
     23        (WebCore::ResourceResponseBase::wasCached):
     24        (WebCore::ResourceResponseBase::connectionReused):
     25        (WebCore::ResourceResponseBase::setConnectionReused):
     26        (WebCore::ResourceResponseBase::connectionID):
     27        (WebCore::ResourceResponseBase::setConnectionID):
     28        (WebCore::ResourceResponseBase::resourceLoadTiming):
     29        (WebCore::ResourceResponseBase::setResourceLoadTiming):
     30        (WebCore::ResourceResponseBase::resourceLoadInfo):
     31        (WebCore::ResourceResponseBase::setResourceLoadInfo):
     32        * platform/network/ResourceResponseBase.h:
     33        * platform/network/cf/ResourceResponse.h:
     34        (WebCore::ResourceResponse::ResourceResponse):
     35        * platform/network/cf/ResourceResponseCFNet.cpp:
     36        (WebCore::ResourceResponse::platformLazyInit):
     37        * platform/network/mac/ResourceResponseMac.mm:
     38        (WebCore::ResourceResponse::platformLazyInit):
     39
    1402011-05-25  Igor Oliveira  <igor.oliveira@openbossa.org>
    241
  • trunk/Source/WebCore/platform/network/ResourceResponseBase.cpp

    r87229 r87301  
    109109    response->setHTTPStatusText(data->m_httpStatusText);
    110110
    111     response->lazyInit(CommonAndUncommonFields);
     111    response->lazyInit(AllFields);
    112112    response->m_httpHeaderFields.adopt(data->m_httpHeaders.release());
    113113    response->setLastModifiedDate(data->m_lastModifiedDate);
     
    206206const String& ResourceResponseBase::suggestedFilename() const
    207207{
    208     lazyInit(AllFields);
     208    lazyInit(CommonFieldsOnly);
    209209
    210210    return m_suggestedFilename;
     
    213213void ResourceResponseBase::setSuggestedFilename(const String& suggestedName)
    214214{
    215     lazyInit(AllFields);
     215    lazyInit(CommonFieldsOnly);
    216216    m_isNull = false;
    217217
     
    235235const String& ResourceResponseBase::httpStatusText() const
    236236{
    237     lazyInit(CommonAndUncommonFields);
     237    lazyInit(AllFields);
    238238
    239239    return m_httpStatusText;
     
    242242void ResourceResponseBase::setHTTPStatusText(const String& statusText)
    243243{
    244     lazyInit(CommonAndUncommonFields);
     244    lazyInit(AllFields);
    245245
    246246    m_httpStatusText = statusText;
     
    256256        return value;
    257257
    258     lazyInit(CommonAndUncommonFields);
     258    lazyInit(AllFields);
    259259
    260260    return m_httpHeaderFields.get(name);
     
    270270        return value;
    271271
    272     lazyInit(CommonAndUncommonFields);
     272    lazyInit(AllFields);
    273273
    274274    return m_httpHeaderFields.get(name);
     
    277277void ResourceResponseBase::setHTTPHeaderField(const AtomicString& name, const String& value)
    278278{
    279     lazyInit(CommonAndUncommonFields);
     279    lazyInit(AllFields);
    280280
    281281    DEFINE_STATIC_LOCAL(const AtomicString, ageHeader, ("age"));
     
    301301const HTTPHeaderMap& ResourceResponseBase::httpHeaderFields() const
    302302{
    303     lazyInit(CommonAndUncommonFields);
     303    lazyInit(AllFields);
    304304
    305305    return m_httpHeaderFields;
     
    465465bool ResourceResponseBase::isAttachment() const
    466466{
    467     lazyInit(CommonAndUncommonFields);
     467    lazyInit(AllFields);
    468468
    469469    DEFINE_STATIC_LOCAL(const AtomicString, headerName, ("content-disposition"));
     
    479479void ResourceResponseBase::setLastModifiedDate(time_t lastModifiedDate)
    480480{
    481     lazyInit(CommonAndUncommonFields);
     481    lazyInit(AllFields);
    482482
    483483    m_lastModifiedDate = lastModifiedDate;
     
    486486time_t ResourceResponseBase::lastModifiedDate() const
    487487{
    488     lazyInit(CommonAndUncommonFields);
     488    lazyInit(AllFields);
    489489
    490490    return m_lastModifiedDate;
     
    493493bool ResourceResponseBase::wasCached() const
    494494{
    495     lazyInit(CommonAndUncommonFields);
     495    lazyInit(AllFields);
    496496
    497497    return m_wasCached;
     
    505505bool ResourceResponseBase::connectionReused() const
    506506{
    507     lazyInit(CommonAndUncommonFields);
     507    lazyInit(AllFields);
    508508
    509509    return m_connectionReused;
     
    512512void ResourceResponseBase::setConnectionReused(bool connectionReused)
    513513{
    514     lazyInit(CommonAndUncommonFields);
     514    lazyInit(AllFields);
    515515
    516516    m_connectionReused = connectionReused;
     
    519519unsigned ResourceResponseBase::connectionID() const
    520520{
    521     lazyInit(CommonAndUncommonFields);
     521    lazyInit(AllFields);
    522522
    523523    return m_connectionID;
     
    526526void ResourceResponseBase::setConnectionID(unsigned connectionID)
    527527{
    528     lazyInit(CommonAndUncommonFields);
     528    lazyInit(AllFields);
    529529
    530530    m_connectionID = connectionID;
     
    533533ResourceLoadTiming* ResourceResponseBase::resourceLoadTiming() const
    534534{
    535     lazyInit(CommonAndUncommonFields);
     535    lazyInit(AllFields);
    536536
    537537    return m_resourceLoadTiming.get();
     
    540540void ResourceResponseBase::setResourceLoadTiming(PassRefPtr<ResourceLoadTiming> resourceLoadTiming)
    541541{
    542     lazyInit(CommonAndUncommonFields);
     542    lazyInit(AllFields);
    543543
    544544    m_resourceLoadTiming = resourceLoadTiming;
     
    547547PassRefPtr<ResourceLoadInfo> ResourceResponseBase::resourceLoadInfo() const
    548548{
    549     lazyInit(CommonAndUncommonFields);
     549    lazyInit(AllFields);
    550550
    551551    return m_resourceLoadInfo.get();
     
    554554void ResourceResponseBase::setResourceLoadInfo(PassRefPtr<ResourceLoadInfo> loadInfo)
    555555{
    556     lazyInit(CommonAndUncommonFields);
     556    lazyInit(AllFields);
    557557
    558558    m_resourceLoadInfo = loadInfo;
  • trunk/Source/WebCore/platform/network/ResourceResponseBase.h

    r87229 r87301  
    133133        Uninitialized,
    134134        CommonFieldsOnly,
    135         CommonAndUncommonFields,
    136135        AllFields
    137136    };
  • trunk/Source/WebCore/platform/network/cf/ResourceResponse.h

    r87229 r87301  
    4545public:
    4646    ResourceResponse()
    47         : m_initLevel(CommonAndUncommonFields)
     47        : m_initLevel(AllFields)
    4848    {
    4949    }
     
    6767    ResourceResponse(const KURL& url, const String& mimeType, long long expectedLength, const String& textEncodingName, const String& filename)
    6868        : ResourceResponseBase(url, mimeType, expectedLength, textEncodingName, filename)
    69         , m_initLevel(CommonAndUncommonFields)
     69        , m_initLevel(AllFields)
    7070    {
    7171    }
  • trunk/Source/WebCore/platform/network/cf/ResourceResponseCFNet.cpp

    r87229 r87301  
    4444
    4545static CFStringRef const commonHeaderFields[] = {
    46     CFSTR("Age"), CFSTR("Cache-Control"), CFSTR("Content-Type"), CFSTR("Date"), CFSTR("Etag"), CFSTR("Expires"), CFSTR("Last-Modified"), CFSTR("Pragma")
     46    CFSTR("Age"), CFSTR("Cache-Control"), CFSTR("Date"), CFSTR("Etag"), CFSTR("Expires"), CFSTR("Last-Modified"), CFSTR("Pragma")
    4747};
    4848static const int numCommonHeaderFields = sizeof(commonHeaderFields) / sizeof(CFStringRef);
     
    9999        m_lastModifiedDate = toTimeT(CFURLResponseGetLastModifiedDate(m_cfResponse.get()));
    100100
     101        RetainPtr<CFStringRef> suggestedFilename(AdoptCF, CFURLResponseCopySuggestedFilename(m_cfResponse.get()));
     102        m_suggestedFilename = suggestedFilename.get();
     103
    101104        CFHTTPMessageRef httpResponse = CFURLResponseGetHTTPResponse(m_cfResponse.get());
    102105        if (httpResponse) {
     
    114117    }
    115118
    116     if (m_initLevel < CommonAndUncommonFields && initLevel >= CommonAndUncommonFields) {
     119    if (m_initLevel < AllFields && initLevel >= AllFields) {
    117120        CFHTTPMessageRef httpResponse = CFURLResponseGetHTTPResponse(m_cfResponse.get());
    118121        if (httpResponse) {
     
    129132        }
    130133    }
    131    
    132     if (m_initLevel < AllFields && initLevel >= AllFields) {
    133         RetainPtr<CFStringRef> suggestedFilename(AdoptCF, CFURLResponseCopySuggestedFilename(m_cfResponse.get()));
    134         m_suggestedFilename = suggestedFilename.get();
    135     }
    136134
    137135    m_initLevel = initLevel;
  • trunk/Source/WebCore/platform/network/mac/ResourceResponseMac.mm

    r87229 r87301  
    4545
    4646static NSString* const commonHeaderFields[] = {
    47     @"Age", @"Cache-Control", @"Content-Type", @"Date", @"Etag", @"Expires", @"Last-Modified", @"Pragma"
     47    @"Age", @"Cache-Control", @"Date", @"Etag", @"Expires", @"Last-Modified", @"Pragma"
    4848};
    4949static const int numCommonHeaderFields = sizeof(commonHeaderFields) / sizeof(AtomicString*);
     
    8989            m_textEncodingName = m_textEncodingName.substring(1, textEncodingNameLength - 2);
    9090
     91        m_suggestedFilename = [m_nsResponse.get() suggestedFilename];
     92
    9193        if ([m_nsResponse.get() isKindOfClass:[NSHTTPURLResponse class]]) {
    9294            NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)m_nsResponse.get();
     
    106108    }
    107109
    108     if (m_initLevel < CommonAndUncommonFields && initLevel >= CommonAndUncommonFields) {
    109         if ([m_nsResponse.get() isKindOfClass:[NSHTTPURLResponse class]]) {
    110             NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
     110    if (m_initLevel < AllFields && initLevel >= AllFields && [m_nsResponse.get() isKindOfClass:[NSHTTPURLResponse class]]) {
     111        NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
    111112
    112             NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)m_nsResponse.get();
     113        NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)m_nsResponse.get();
    113114
    114             RetainPtr<NSString> httpStatusLine(AdoptNS, wkCopyNSURLResponseStatusLine(m_nsResponse.get()));
    115             if (httpStatusLine)
    116                 m_httpStatusText = extractReasonPhraseFromHTTPStatusLine(httpStatusLine.get());
    117             else
    118                 m_httpStatusText = "OK";
     115        RetainPtr<NSString> httpStatusLine(AdoptNS, wkCopyNSURLResponseStatusLine(m_nsResponse.get()));
     116        if (httpStatusLine)
     117            m_httpStatusText = extractReasonPhraseFromHTTPStatusLine(httpStatusLine.get());
     118        else
     119            m_httpStatusText = "OK";
    119120
    120             NSDictionary *headers = [httpResponse allHeaderFields];
    121             NSEnumerator *e = [headers keyEnumerator];
    122             while (NSString *name = [e nextObject])
    123                 m_httpHeaderFields.set(name, [headers objectForKey:name]);
    124            
    125             [pool drain];
    126         }
     121        NSDictionary *headers = [httpResponse allHeaderFields];
     122        NSEnumerator *e = [headers keyEnumerator];
     123        while (NSString *name = [e nextObject])
     124            m_httpHeaderFields.set(name, [headers objectForKey:name]);
     125       
     126        [pool drain];
    127127    }
    128      
    129     if (m_initLevel < AllFields && initLevel >= AllFields)
    130         m_suggestedFilename = [m_nsResponse.get() suggestedFilename];
    131128
    132129    m_initLevel = initLevel;
Note: See TracChangeset for help on using the changeset viewer.