WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
47736
WebCore cache gets corrupted if revalidation request starts at an inopportune time
https://bugs.webkit.org/show_bug.cgi?id=47736
Summary
WebCore cache gets corrupted if revalidation request starts at an inopportune...
Alexey Proskuryakov
Reported
Friday, October 15, 2010 9:30:55 PM UTC
If a revalidation request cannot be started due to SubresourceLoader::create() returning 0, we don't correctly cancel revalidation. So, a revalidation request with an error bit set gets stuck in cache. <
rdar://problem/8429396
>
Attachments
proposed fix
(71.14 KB, patch)
2010-10-15 13:38 PDT
,
Alexey Proskuryakov
darin
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Alexey Proskuryakov
Comment 1
Friday, October 15, 2010 9:38:48 PM UTC
Created
attachment 70892
[details]
proposed fix
Darin Adler
Comment 2
Friday, October 15, 2010 10:51:35 PM UTC
Comment on
attachment 70892
[details]
proposed fix View in context:
https://bugs.webkit.org/attachment.cgi?id=70892&action=review
I am finding this a little hard to review because of the logging. Can we land an initial patch that just adds the logging, and then land the bug fix separately?
> WebCore/ChangeLog:6 > + <
rdar://problem/8429396
> WebCore cache gets corrupted if revalidation request starts at a wrong time
I would call this “an inopportune time” maybe. It’s not “wrong”, is it?
> WebCore/loader/loader.cpp:387 > + if (resource->resourceToRevalidate()) > + cache()->revalidationFailed(resource);
Is this the bug fix?
Alexey Proskuryakov
Comment 3
Friday, October 15, 2010 10:59:33 PM UTC
> I would call this “an inopportune time” maybe.
A word a day :-)
> > WebCore/loader/loader.cpp:387 > > + if (resource->resourceToRevalidate()) > > + cache()->revalidationFailed(resource); > > Is this the bug fix?
Yes. I'll land it separately.
Alexey Proskuryakov
Comment 4
Friday, October 15, 2010 11:14:19 PM UTC
Committed <
http://trac.webkit.org/changeset/69887
>, and logging in <
http://trac.webkit.org/changeset/69886
>.
WebKit Review Bot
Comment 5
Saturday, October 16, 2010 12:48:59 AM UTC
http://trac.webkit.org/changeset/69886
might have broken Leopard Intel Debug (Tests) The following tests are not passing: http/tests/uri/utf8-path.html
WebKit Review Bot
Comment 6
Saturday, October 16, 2010 12:49:09 AM UTC
http://trac.webkit.org/changeset/69887
might have broken Leopard Intel Debug (Tests) The following tests are not passing: http/tests/uri/utf8-path.html
Alexey Proskuryakov
Comment 7
Saturday, October 16, 2010 12:57:51 AM UTC
This sounds like it could be caused by the logging patch, but I don't see how exactly. I cannot reproduce this on Snow Leopard.
Alexey Proskuryakov
Comment 8
Saturday, October 16, 2010 1:19:49 AM UTC
OK, I got a stack trace from buildbot. Will fix (not yet sure how, but I will).
Alexey Proskuryakov
Comment 9
Saturday, October 16, 2010 1:42:54 AM UTC
This is a CRASH in FastMalloc, called from String::latin1() via CString::newUninitialized(). Committed speculative fix in <
http://trac.webkit.org/changeset/69898
>.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug