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/png.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/png.c')
-rw-r--r-- | image/png.c | 47 |
1 files changed, 4 insertions, 43 deletions
diff --git a/image/png.c b/image/png.c index 15c6e07aa..f88b8fcfc 100644 --- a/image/png.c +++ b/image/png.c @@ -63,12 +63,6 @@ typedef struct nspng_content { size_t rowbytes; /**< Number of bytes per row */ } nspng_content; -static const char *nspng_types[] = { - "image/png" -}; - -static lwc_string *nspng_mime_types[NOF_ELEMENTS(nspng_types)]; - static unsigned int interlace_start[8] = {0, 16, 0, 8, 0, 4, 0}; static unsigned int interlace_step[8] = {28, 28, 12, 12, 4, 4, 0}; static unsigned int interlace_row_start[8] = {0, 0, 4, 0, 2, 0, 1}; @@ -439,43 +433,10 @@ static const content_handler nspng_content_handler = { .no_share = false, }; -nserror nspng_init(void) -{ - uint32_t i; - lwc_error lerror; - nserror error; - - for (i = 0; i < NOF_ELEMENTS(nspng_mime_types); i++) { - lerror = lwc_intern_string(nspng_types[i], - strlen(nspng_types[i]), - &nspng_mime_types[i]); - if (lerror != lwc_error_ok) { - error = NSERROR_NOMEM; - goto error; - } - - error = content_factory_register_handler(nspng_mime_types[i], - &nspng_content_handler); - if (error != NSERROR_OK) - goto error; - } - - return NSERROR_OK; - -error: - nspng_fini(); - - return error; -} - -void nspng_fini(void) -{ - uint32_t i; +static const char *nspng_types[] = { + "image/png" +}; - for (i = 0; i < NOF_ELEMENTS(nspng_mime_types); i++) { - if (nspng_mime_types[i] != NULL) - lwc_string_unref(nspng_mime_types[i]); - } -} +CONTENT_FACTORY_REGISTER_TYPES(nspng, nspng_types, nspng_content_handler); #endif |