diff options
author | Daniel Silverstone <dsilvers@netsurf-browser.org> | 2010-03-28 16:28:28 +0000 |
---|---|---|
committer | Daniel Silverstone <dsilvers@netsurf-browser.org> | 2010-03-28 16:28:28 +0000 |
commit | 8effd1cb98bb9291ed732509ec1e81e2a2436360 (patch) | |
tree | d200cc111011f4cd145cb81bc71a3cf7aa7c830e /content/llcache.c | |
parent | cb7412181ffed3e22d77b9c4889bd25afec7c4a0 (diff) | |
download | netsurf-8effd1cb98bb9291ed732509ec1e81e2a2436360.tar.gz netsurf-8effd1cb98bb9291ed732509ec1e81e2a2436360.tar.bz2 |
Ensure that finished redirection objects in llcache do not get found by subsequent fetch attempts.
svn path=/trunk/netsurf/; revision=10188
Diffstat (limited to 'content/llcache.c')
-rw-r--r-- | content/llcache.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/content/llcache.c b/content/llcache.c index 8b6e65513..0c7c2b83c 100644 --- a/content/llcache.c +++ b/content/llcache.c @@ -1370,7 +1370,12 @@ nserror llcache_fetch_redirect(llcache_object *object, const char *target, /* Abort fetch for this object */ fetch_abort(object->fetch.fetch); object->fetch.fetch = NULL; - + + /* Invalidate the cache control data */ + memset(&(object->cache), 0, sizeof(llcache_cache_control)); + /* And mark it complete */ + object->fetch.state = LLCACHE_FETCH_COMPLETE; + /** \todo Limit redirect depth, or detect cycles */ /* Make target absolute */ |