summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Bursa <james@netsurf-browser.org>2002-12-23 20:06:21 +0000
committerJames Bursa <james@netsurf-browser.org>2002-12-23 20:06:21 +0000
commit9284658d28e2cb6471962e02fafddf6c305c5642 (patch)
tree832dfd36a797e172c7082d5796f55d18ef7f0691
parent995412e0063ea3b8c2f27ba6021d9085a6c2cefc (diff)
downloadnetsurf-9284658d28e2cb6471962e02fafddf6c305c5642.tar.gz
netsurf-9284658d28e2cb6471962e02fafddf6c305c5642.tar.bz2
[project @ 2002-12-23 20:04:57 by bursa]
Logging changes. svn path=/import/netsurf/; revision=49
-rw-r--r--desktop/browser.c85
1 files changed, 48 insertions, 37 deletions
diff --git a/desktop/browser.c b/desktop/browser.c
index 441197fc4..230de39bb 100644
--- a/desktop/browser.c
+++ b/desktop/browser.c
@@ -1,5 +1,5 @@
/**
- * $Id: browser.c,v 1.4 2002/11/02 22:28:05 bursa Exp $
+ * $Id: browser.c,v 1.6 2002/12/23 20:06:21 bursa Exp $
*/
#include "netsurf/riscos/font.h"
@@ -9,6 +9,7 @@
#include "netsurf/desktop/browser.h"
#include "netsurf/render/utils.h"
#include "netsurf/desktop/cache.h"
+#include "netsurf/utils/log.h"
#include <string.h>
#include <stdlib.h>
#include <assert.h>
@@ -55,20 +56,20 @@ void content_destroy(struct content* c)
case CONTENT_HTML:
/* free other memory here */
// xmlFreeParserCtxt(c->data.html.parser);
- fprintf(stderr, "free parser\n");
+ LOG(("free parser"));
// htmlFreeParserCtxt(c->data.html.parser);
- fprintf(stderr, "free sheet\n");
+ LOG(("free sheet"));
// xfree(c->data.html.stylesheet);
- fprintf(stderr, "free style\n");
+ LOG(("free style"));
// xfree(c->data.html.style);
if (c->data.html.layout != NULL)
{
- fprintf(stderr, "box_free box\n");
+ LOG(("box_free box"));
// box_free(c->data.html.layout);
- fprintf(stderr, "free box\n");
+ LOG(("free box"));
// xfree(c->data.html.layout);
}
- fprintf(stderr, "free font\n");
+ LOG(("free font"));
font_free_set(c->data.html.fonts);
break;
default:
@@ -122,7 +123,7 @@ void content_html_reformat(struct content* c, int width)
char* file;
struct css_selector* selector = xcalloc(1, sizeof(struct css_selector));
- Log("content_html_reformat", "Starting stuff");
+ LOG(("Starting stuff"));
if (c->data.html.layout != NULL)
{
/* TODO: skip if width is unchanged */
@@ -130,14 +131,14 @@ void content_html_reformat(struct content* c, int width)
return;
}
- Log("content_html_reformat", "Setting document to myDoc");
+ LOG(("Setting document to myDoc"));
c->data.html.document = c->data.html.parser->myDoc;
/* skip to start of html */
- Log("content_html_reformat", "Skipping to html");
+ LOG(("Skipping to html"));
if (c->data.html.document == NULL)
{
- Log("content_html_reformat", "There is no document!");
+ LOG(("There is no document!"));
return;
}
for (c->data.html.markup = c->data.html.document->children;
@@ -148,38 +149,38 @@ void content_html_reformat(struct content* c, int width)
if (c->data.html.markup == 0)
{
- Log("content_html_reformat", "No markup");
+ LOG(("No markup"));
return;
}
if (strcmp((const char *) c->data.html.markup->name, "html"))
{
- Log("content_html_reformat", "Not html");
+ LOG(("Not html"));
return;
}
// xfree(c->data.html.stylesheet);
// xfree(c->data.html.style);
- Log("content_html_reformat", "Loading CSS");
+ LOG(("Loading CSS"));
file = load("<NetSurf$Dir>.Resources.CSS"); /*!!! not portable! !!!*/
c->data.html.stylesheet = css_new_stylesheet();
- Log("content_html_reformat", "Parsing stylesheet");
+ LOG(("Parsing stylesheet"));
css_parse_stylesheet(c->data.html.stylesheet, file);
- Log("content_html_reformat", "Copying base style");
+ LOG(("Copying base style"));
c->data.html.style = xcalloc(1, sizeof(struct css_style));
memcpy(c->data.html.style, &css_base_style, sizeof(struct css_style));
- Log("content_html_reformat", "Creating box");
+ LOG(("Creating box"));
c->data.html.layout = xcalloc(1, sizeof(struct box));
c->data.html.layout->type = BOX_BLOCK;
c->data.html.layout->node = c->data.html.markup;
c->data.html.fonts = font_new_set();
- Log("content_html_reformat", "XML to box");
+ LOG(("XML to box"));
xml_to_box(c->data.html.markup, c->data.html.style, c->data.html.stylesheet, &selector, 0, c->data.html.layout, 0, 0, c->data.html.fonts);
- Log("content_html_reformat", "Layout document");
+ LOG(("Layout document"));
layout_document(c->data.html.layout->children, (unsigned long)width);
/* can tidy up memory here? */
@@ -192,7 +193,7 @@ void browser_window_reformat(struct browser_window* bw)
char status[100];
clock_t time0, time1;
- Log("browser_window_reformat", "Entering...");
+ LOG(("Entering..."));
if (bw == NULL)
return;
if (bw->current_content == NULL)
@@ -201,34 +202,34 @@ void browser_window_reformat(struct browser_window* bw)
switch (bw->current_content->type)
{
case CONTENT_HTML:
- Log("browser_window_reformat", "HTML content.");
+ LOG(("HTML content."));
browser_window_set_status(bw, "Formatting page...");
time0 = clock();
content_html_reformat(bw->current_content, gui_window_get_width(bw->window));
time1 = clock();
- Log("browser_window_reformat", "Content reformatted");
+ LOG(("Content reformatted"));
if (bw->current_content->data.html.layout != NULL)
{
- Log("browser_window_reformat", "Setting extent");
+ LOG(("Setting extent"));
gui_window_set_extent(bw->window, bw->current_content->data.html.layout->children->width, bw->current_content->data.html.layout->children->height);
- Log("browser_window_reformat", "Setting scroll");
+ LOG(("Setting scroll"));
gui_window_set_scroll(bw->window, 0, 0);
- Log("browser_window_reformat", "Redraw window");
+ LOG(("Redraw window"));
gui_window_redraw_window(bw->window);
- Log("browser_window_reformat", "Complete");
+ LOG(("Complete"));
sprintf(status, "Format complete (%gs).", ((float) time1 - time0) / CLOCKS_PER_SEC);
browser_window_set_status(bw, status);
}
else
{
- Log("browser_window_reformat", "This isn't html");
+ LOG(("This isn't html"));
browser_window_set_status(bw, "This is not HTML!");
cache_free(bw->current_content);
bw->current_content = NULL;
}
break;
default:
- Log("browser_window_reformat", "Unknown content type");
+ LOG(("Unknown content type"));
break;
}
}
@@ -328,11 +329,13 @@ void browser_window_set_status(struct browser_window* bw, char* text)
void browser_window_destroy(struct browser_window* bw)
{
- if (bw == NULL)
- return;
+ LOG(("bw = %p", bw));
+ assert(bw != 0);
- cache_free(bw->current_content);
- cache_free(bw->future_content);
+ if (bw->current_content != NULL)
+ cache_free(bw->current_content);
+ if (bw->future_content != NULL)
+ cache_free(bw->future_content);
if (bw->history != NULL)
{
@@ -363,13 +366,14 @@ void browser_window_destroy(struct browser_window* bw)
xfree(bw);
- return;
+ LOG(("end"));
}
void browser_window_open_location_historical(struct browser_window* bw, char* url)
{
- if (bw == NULL)
- return;
+ LOG(("bw = %p, url = %s", bw, url));
+
+ assert(bw != 0 && url != 0);
if (bw->future_content != NULL)
cache_free(bw->future_content);
@@ -380,6 +384,8 @@ void browser_window_open_location_historical(struct browser_window* bw, char* ur
/* not in cache: start fetch */
struct fetch_request* req;
+ LOG(("not in cache: starting fetch"));
+
req = xcalloc(1, sizeof(struct fetch_request));
req->type = REQUEST_FROM_BROWSER;
req->requestor.browser = bw;
@@ -394,14 +400,17 @@ void browser_window_open_location_historical(struct browser_window* bw, char* ur
else
{
/* in cache: reformat page and display */
+ LOG(("in cache: reformatting"));
browser_window_reformat(bw);
}
- return;
+ LOG(("end"));
}
void browser_window_open_location(struct browser_window* bw, char* url)
{
+ LOG(("bw = %p, url = %s", bw, url));
+ assert(bw != 0 && url != 0);
browser_window_open_location_historical(bw, url);
if (bw->history == NULL)
bw->history = history_create(NULL, bw->future_content->main_fetch->location);
@@ -410,6 +419,7 @@ void browser_window_open_location(struct browser_window* bw, char* url)
history_remember(bw->history, NULL, bw->future_content->main_fetch->location);
bw->history = bw->history->later;
}
+ LOG(("end"));
}
int browser_window_message(struct browser_window* bw, struct browser_message* msg)
@@ -475,7 +485,8 @@ int browser_window_message(struct browser_window* bw, struct browser_message* ms
htmlParseChunk(bw->future_content->data.html.parser, "", 0, 1);
bw->future_content->main_fetch = NULL;
previous_safety = gui_window_set_redraw_safety(bw->window, UNSAFE);
- cache_free(bw->current_content);
+ if (bw->current_content != NULL)
+ cache_free(bw->current_content);
bw->current_content = bw->future_content;
bw->future_content = NULL;
browser_window_reformat(bw);