[project @ 2004-06-23 11:40:29 by bursa]

Fix destroying of contents after redirects.

svn path=/import/netsurf/; revision=996
This commit is contained in:
James Bursa 2004-06-23 11:40:29 +00:00
parent c5f42cd7c5
commit ecc3e59fdc
2 changed files with 8 additions and 1 deletions

View File

@ -283,7 +283,8 @@ struct content * content_get(const char *url)
struct content *c; struct content *c;
for (c = content_list; c; c = c->next) { for (c = content_list; c; c = c->next) {
if (c->fresh && strcmp(c->url, url) == 0) if (c->fresh && c->status != CONTENT_STATUS_ERROR &&
strcmp(c->url, url) == 0)
return c; return c;
} }

View File

@ -278,6 +278,9 @@ void fetchcache_callback(fetch_msg msg, void *p, const char *data,
msg_data.error = messages_get("BadRedirect"); msg_data.error = messages_get("BadRedirect");
content_broadcast(c, CONTENT_MSG_ERROR, msg_data); content_broadcast(c, CONTENT_MSG_ERROR, msg_data);
} }
/* set the status to ERROR so that the content is
* destroyed in content_clean() */
c->status = CONTENT_STATUS_ERROR;
break; break;
#ifdef WITH_AUTH #ifdef WITH_AUTH
case FETCH_AUTH: case FETCH_AUTH:
@ -286,6 +289,9 @@ void fetchcache_callback(fetch_msg msg, void *p, const char *data,
c->fetch = 0; c->fetch = 0;
msg_data.auth_realm = data; msg_data.auth_realm = data;
content_broadcast(c, CONTENT_MSG_AUTH, msg_data); content_broadcast(c, CONTENT_MSG_AUTH, msg_data);
/* set the status to ERROR so that the content is
* destroyed in content_clean() */
c->status = CONTENT_STATUS_ERROR;
break; break;
#endif #endif
default: default: