From 38bcb14d7765a1231527f65f9a1c3d9e8045697e Mon Sep 17 00:00:00 2001 From: Chris Young Date: Tue, 10 May 2011 19:32:21 +0000 Subject: Migrate to new MIMEtyper svn path=/trunk/netsurf/; revision=12375 --- amiga/dt_anim.c | 37 +++++++++++++++---------------------- 1 file changed, 15 insertions(+), 22 deletions(-) (limited to 'amiga/dt_anim.c') diff --git a/amiga/dt_anim.c b/amiga/dt_anim.c index 55ec60578..cad77ce46 100644 --- a/amiga/dt_anim.c +++ b/amiga/dt_anim.c @@ -92,17 +92,18 @@ nserror amiga_dt_anim_init(void) lwc_error lerror; nserror error; BPTR fh = 0; + struct Node *node = NULL; while((dt = ObtainDataType(DTST_RAM, NULL, DTA_DataType, prevdt, - DTA_GroupID, GID_ANIMATION, + DTA_GroupID, GID_PICTURE, // we only support images for now TAG_DONE)) != NULL) { ReleaseDataType(prevdt); prevdt = dt; ami_datatype_to_mimetype(dt, dt_mime); - LOG(("Guessed MIME from DT: %s", dt_mime)); + LOG(("Guessed MIME from anim DT: %s", dt_mime)); lerror = lwc_intern_string(dt_mime, strlen(dt_mime), &type); if (lerror != lwc_error_ok) @@ -116,32 +117,24 @@ nserror amiga_dt_anim_init(void) if (error != NSERROR_OK) return error; - } + do { + node = ami_mime_from_datatype(dt, &type, node); - ReleaseDataType(prevdt); + if(node) + { + error = content_factory_register_handler(type, + &amiga_dt_anim_content_handler); - if(fh = FOpen("PROGDIR:Resources/MIME/dt.animation", MODE_OLDFILE, 0)) - { - while(FGets(fh, (UBYTE *)&dt_mime, 50) != 0) - { - dt_mime[strlen(dt_mime) - 1] = '\0'; - if((dt_mime[0] == '\0') || (dt_mime[0] == '#')) - continue; /* Skip blank lines and comments */ + if (error != NSERROR_OK) + return error; + } - lerror = lwc_intern_string(dt_mime, strlen(dt_mime), &type); - if (lerror != lwc_error_ok) - return NSERROR_NOMEM; + }while (node != NULL); - error = content_factory_register_handler(type, - &amiga_dt_anim_content_handler); + } - lwc_string_unref(type); + ReleaseDataType(prevdt); - if (error != NSERROR_OK) - return error; - } - FClose(fh); - } return NSERROR_OK; } -- cgit v1.2.3