diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2011-02-27 20:11:39 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2011-02-27 20:11:39 +0000 |
commit | 86a2e0076d0789247a28f370d16583ee4fc87f05 (patch) | |
tree | b3ae01afe554abbb0bc98787fef4cb0fe0be35ed /image | |
parent | b79dcabd41b48111733dd49fd68ab65f1b97347b (diff) | |
download | netsurf-86a2e0076d0789247a28f370d16583ee4fc87f05.tar.gz netsurf-86a2e0076d0789247a28f370d16583ee4fc87f05.tar.bz2 |
Fix bug #3194007: stop emitting duplicate READY/DONE events.
* Make content handlers responsible for setting READY/DONE state & emitting events.
* Stop content_convert doing this when there is a registered convert function for the content type.
svn path=/trunk/netsurf/; revision=11850
Diffstat (limited to 'image')
-rw-r--r-- | image/bmp.c | 4 | ||||
-rw-r--r-- | image/gif.c | 3 | ||||
-rw-r--r-- | image/ico.c | 4 | ||||
-rw-r--r-- | image/jpeg.c | 3 | ||||
-rw-r--r-- | image/mng.c | 3 | ||||
-rw-r--r-- | image/nssprite.c | 4 | ||||
-rw-r--r-- | image/png.c | 3 | ||||
-rw-r--r-- | image/rsvg.c | 3 | ||||
-rw-r--r-- | image/svg.c | 3 | ||||
-rw-r--r-- | image/webp.c | 4 |
10 files changed, 24 insertions, 10 deletions
diff --git a/image/bmp.c b/image/bmp.c index f40cfb06c..1e8ec5be9 100644 --- a/image/bmp.c +++ b/image/bmp.c @@ -108,7 +108,9 @@ bool nsbmp_convert(struct content *c) /* exit as a success */ c->bitmap = bmp->bitmap; bitmap_modified(c->bitmap); - c->status = CONTENT_STATUS_DONE; + + content_set_ready(c); + content_set_done(c); /* Done: update status bar */ content_set_status(c, ""); diff --git a/image/gif.c b/image/gif.c index 94cba25f1..8afe79485 100644 --- a/image/gif.c +++ b/image/gif.c @@ -138,7 +138,8 @@ bool nsgif_convert(struct content *c) /* Exit as a success */ c->bitmap = gif->frame_image; - c->status = CONTENT_STATUS_DONE; + content_set_ready(c); + content_set_done(c); /* Done: update status bar */ content_set_status(c, ""); return true; diff --git a/image/ico.c b/image/ico.c index f147bad08..a753f470b 100644 --- a/image/ico.c +++ b/image/ico.c @@ -97,7 +97,9 @@ bool nsico_convert(struct content *c) assert(bmp); c->bitmap = bmp->bitmap; bitmap_modified(c->bitmap); - c->status = CONTENT_STATUS_DONE; + + content_set_ready(c); + content_set_done(c); /* Done: update status bar */ content_set_status(c, ""); diff --git a/image/jpeg.c b/image/jpeg.c index 4d7aa32f7..7ef621121 100644 --- a/image/jpeg.c +++ b/image/jpeg.c @@ -167,7 +167,8 @@ bool nsjpeg_convert(struct content *c) width, height, size); content__set_title(c, title); c->size += height * rowstride; - c->status = CONTENT_STATUS_DONE; + content_set_ready(c); + content_set_done(c); /* Done: update status bar */ content_set_status(c, ""); return true; diff --git a/image/mng.c b/image/mng.c index 4ebba304d..1674dd033 100644 --- a/image/mng.c +++ b/image/mng.c @@ -330,7 +330,8 @@ bool nsmng_convert(struct content *c) content__set_title(c, title); c->size += c->width * c->height * 4; - c->status = CONTENT_STATUS_DONE; + content_set_ready(c); + content_set_done(c); /* Done: update status bar */ content_set_status(c, ""); diff --git a/image/nssprite.c b/image/nssprite.c index 7bff6e0f7..a0ad8678c 100644 --- a/image/nssprite.c +++ b/image/nssprite.c @@ -112,7 +112,9 @@ bool nssprite_convert(struct content *c) c->width = sprite->width; c->height = sprite->height; bitmap_modified(c->bitmap); - c->status = CONTENT_STATUS_DONE; + + content_set_ready(c); + content_set_done(c); return true; } diff --git a/image/png.c b/image/png.c index cbad15029..159019996 100644 --- a/image/png.c +++ b/image/png.c @@ -289,7 +289,8 @@ bool nspng_convert(struct content *c) c->bitmap = c->data.png.bitmap; bitmap_set_opaque(c->bitmap, bitmap_test_opaque(c->bitmap)); bitmap_modified(c->bitmap); - c->status = CONTENT_STATUS_DONE; + content_set_ready(c); + content_set_done(c); content_set_status(c, ""); return true; diff --git a/image/rsvg.c b/image/rsvg.c index 7f88d82ad..cf3d5cea6 100644 --- a/image/rsvg.c +++ b/image/rsvg.c @@ -173,7 +173,8 @@ bool rsvg_convert(struct content *c) c->bitmap = d->bitmap; bitmap_modified(c->bitmap); - c->status = CONTENT_STATUS_DONE; + content_set_ready(c); + content_set_done(c); /* Done: update status bar */ content_set_status(c, ""); diff --git a/image/svg.c b/image/svg.c index 43675faae..a6cb06c2b 100644 --- a/image/svg.c +++ b/image/svg.c @@ -70,7 +70,8 @@ bool svg_convert(struct content *c) snprintf(c->title, 100, messages_get("svgTitle"), width, height, c->source_size);*/ //c->size += ?; - c->status = CONTENT_STATUS_DONE; + content_set_ready(c); + content_set_done(c); /* Done: update status bar */ content_set_status(c, ""); diff --git a/image/webp.c b/image/webp.c index e4375637f..449b069fb 100644 --- a/image/webp.c +++ b/image/webp.c @@ -107,7 +107,9 @@ bool webp_convert(struct content *c) content__set_title(c, title); bitmap_modified(c->bitmap); - c->status = CONTENT_STATUS_DONE; + + content_set_ready(c); + content_set_done(c); content_set_status(c, ""); return true; |