From 2748fe4f6483f8cfb3c4f91a01e8d897b7d1ac47 Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Mon, 5 Apr 2010 21:35:38 +0000 Subject: Make downloads work again. svn path=/trunk/netsurf/; revision=10243 --- amiga/download.c | 24 ++++++++++++++---------- amiga/download.h | 4 +++- 2 files changed, 17 insertions(+), 11 deletions(-) (limited to 'amiga') diff --git a/amiga/download.c b/amiga/download.c index 4f11f1b5f..1929d163f 100644 --- a/amiga/download.c +++ b/amiga/download.c @@ -37,11 +37,11 @@ #include "amiga/iff_dr2d.h" #include "amiga/theme.h" -#include "content/fetch.h" - +#include "desktop/download.h" #include "desktop/selection.h" #include "desktop/save_complete.h" +#include "utils/errors.h" #include "utils/messages.h" #include "utils/utils.h" @@ -55,10 +55,12 @@ #include -struct gui_download_window *gui_download_window_create(const char *url, - const char *mime_type, struct fetch *fetch, - unsigned int total_size, struct gui_window *gui) +struct gui_download_window *gui_download_window_create(download_context *ctx, + struct gui_window *gui) { + const char *url = download_context_get_url(ctx); + const char *mime_type = download_context_get_mime_type(ctx); + unsigned long total_size = download_context_get_total_length(ctx); struct gui_download_window *dw; APTR va[3]; @@ -139,18 +141,18 @@ struct gui_download_window *gui_download_window_create(const char *url, EndWindow; dw->win = (struct Window *)RA_OpenWindow(dw->objects[OID_MAIN]); - dw->fetch = fetch; + dw->ctx = ctx; dw->node = AddObject(window_list,AMINS_DLWINDOW); dw->node->objstruct = dw; return dw; } -void gui_download_window_data(struct gui_download_window *dw, const char *data, - unsigned int size) +nserror gui_download_window_data(struct gui_download_window *dw, + const char *data, unsigned int size) { APTR va[3]; - if(!dw) return; + if(!dw) return NSERROR_SAVE_FAILED; FWrite(dw->fh,data,1,size); @@ -176,6 +178,8 @@ void gui_download_window_data(struct gui_download_window *dw, const char *data, FUELGAUGE_VarArgs,va, TAG_DONE); } + + return NSERROR_OK; } void gui_download_window_error(struct gui_download_window *dw, @@ -187,7 +191,7 @@ void gui_download_window_error(struct gui_download_window *dw, void ami_download_window_abort(struct gui_download_window *dw) { - fetch_abort(dw->fetch); + download_context_abort(dw->ctx); gui_download_window_done(dw); } diff --git a/amiga/download.h b/amiga/download.h index a5dc2d0e1..9279869cb 100755 --- a/amiga/download.h +++ b/amiga/download.h @@ -20,6 +20,8 @@ #define AMIGA_DOWNLOAD_H #include "amiga/gui.h" +struct download_context; + struct dlnode { struct Node node; @@ -36,7 +38,7 @@ struct gui_download_window { uint32 downloaded; struct dlnode *dln; struct browser_window *bw; - struct fetch *fetch; + struct download_context *ctx; char *url; char fname[1024]; }; -- cgit v1.2.3