diff options
author | Vincent Sanders <vince@netsurf-browser.org> | 2011-08-27 08:43:51 +0000 |
---|---|---|
committer | Vincent Sanders <vince@netsurf-browser.org> | 2011-08-27 08:43:51 +0000 |
commit | 81c52ad4947c2b658473f8f87e244660a72c002a (patch) | |
tree | 1ba7dbb26a64ce5d1970c94b128790d9a674824a /image/jpeg.c | |
parent | 5f311d08ef77b809a6319caab1a83a932af2bc63 (diff) | |
download | netsurf-81c52ad4947c2b658473f8f87e244660a72c002a.tar.gz netsurf-81c52ad4947c2b658473f8f87e244660a72c002a.tar.bz2 |
Initial image content handler refactor
svn path=/trunk/netsurf/; revision=12671
Diffstat (limited to 'image/jpeg.c')
-rw-r--r-- | image/jpeg.c | 52 |
1 files changed, 6 insertions, 46 deletions
diff --git a/image/jpeg.c b/image/jpeg.c index 7e75c6cf6..622e2c5db 100644 --- a/image/jpeg.c +++ b/image/jpeg.c @@ -66,14 +66,6 @@ struct nsjpeg_error_mgr { jmp_buf setjmp_buffer; }; -static const char *nsjpeg_types[] = { - "image/jpeg", - "image/jpg", - "image/pjpeg" -}; - -static lwc_string *nsjpeg_mime_types[NOF_ELEMENTS(nsjpeg_types)]; - static unsigned char nsjpeg_eoi[] = { 0xff, JPEG_EOI }; /** @@ -358,44 +350,12 @@ static const content_handler nsjpeg_content_handler = { .no_share = false, }; -nserror nsjpeg_init(void) -{ - uint32_t i; - lwc_error lerror; - nserror error; - - for (i = 0; i < NOF_ELEMENTS(nsjpeg_mime_types); i++) { - lerror = lwc_intern_string(nsjpeg_types[i], - strlen(nsjpeg_types[i]), - &nsjpeg_mime_types[i]); - if (lerror != lwc_error_ok) { - error = NSERROR_NOMEM; - goto error; - } - - error = content_factory_register_handler(nsjpeg_mime_types[i], - &nsjpeg_content_handler); - if (error != NSERROR_OK) - goto error; - } - - return NSERROR_OK; - -error: - nsjpeg_fini(); - - return error; -} - -void nsjpeg_fini(void) -{ - uint32_t i; +static const char *nsjpeg_types[] = { + "image/jpeg", + "image/jpg", + "image/pjpeg" +}; - for (i = 0; i < NOF_ELEMENTS(nsjpeg_mime_types); i++) { - if (nsjpeg_mime_types[i] != NULL) { - lwc_string_unref(nsjpeg_mime_types[i]); - } - } -} +CONTENT_FACTORY_REGISTER_TYPES(nsjpeg, nsjpeg_types, nsjpeg_content_handler); #endif /* WITH_JPEG */ |