From: <ny...@us...> - 2007-10-08 14:27:24
|
Revision: 429 http://pmplib.svn.sourceforge.net/pmplib/?rev=429&view=rev Author: nyaochi Date: 2007-10-08 07:27:27 -0700 (Mon, 08 Oct 2007) Log Message: ----------- Rename chunk_finish() to chunk_delete(). Source-code cleanup for chunk.[c,h] Modified Paths: -------------- trunk/pmplib/lib/pmp_ipod/chunk.c trunk/pmplib/lib/pmp_ipod/chunk.h trunk/pmplib/lib/pmp_ipod/ipod.c Modified: trunk/pmplib/lib/pmp_ipod/chunk.c =================================================================== --- trunk/pmplib/lib/pmp_ipod/chunk.c 2007-10-08 14:16:18 UTC (rev 428) +++ trunk/pmplib/lib/pmp_ipod/chunk.c 2007-10-08 14:27:27 UTC (rev 429) @@ -39,7 +39,8 @@ #include "util.h" #include "chunk.h" -static const chunkdecl_t* find_chunkdecl( +static const chunkdecl_t* +find_chunkdecl( const chunkdecl_t* cds, const int8_t* name ) @@ -53,7 +54,8 @@ return NULL; } -chunk_t* chunk_new( +chunk_t* +chunk_new( const chunkdecl_t* cds, chunk_t* parent, const char *name @@ -100,59 +102,29 @@ return child; } -/* -int chunk_init( +void +chunk_delete( const chunkdecl_t* cds, - chunk_t* chunk, - const char *name - ) -{ - int ret = 0; - const chunkdecl_t* decl = find_chunkdecl(cds, (int8_t*)name); - if (!decl) { - return IPODE_UNKNOWNCHUNK; - } - - if (ret = decl->init(chunk, 1)) return ret; - return 0; -} -*/ - -void chunk_finish( - const chunkdecl_t* cds, chunk_t* chunk ) { uint32_t i; const chunkdecl_t* decl = NULL; + /* Delete children (recursively). */ for (i = 0;i < chunk->num_children;++i) { - chunk_finish(cds, &chunk->childlen[i]); + chunk_delete(cds, &chunk->childlen[i]); } + /* Delete this chunk. */ decl = find_chunkdecl(cds, chunk->id); if (decl) { decl->finish(chunk); } } -/* -chunk_t* chunk_new_child(chunk_t* chunk) -{ - chunk->childlen = (chunk_t*)realloc( - chunk->childlen, sizeof(chunk_t) * (chunk->num_children + 1)); - if (chunk->childlen) { - chunk_t* child = &chunk->childlen[chunk->num_children]; - memset(child, 0, sizeof(chunk_t)); - ++chunk->num_children; - return child; - } else { - return NULL; - } -} -*/ - -int chunk_is( +int +chunk_is( chunk_t* chunk, const char *name ) @@ -160,7 +132,8 @@ return (strncmp(chunk->id, name, 4) == 0); } -int chunk_repr( +int +chunk_repr( const chunkdecl_t* cds, chunk_t* chunk, size_t index, @@ -173,7 +146,7 @@ /* Start of a chunk */ serialize_indent(sio); - fprintf(sio->fp, "Chunk %c%c%c%c (%d) = {\n", chunk->id[0], chunk->id[1], chunk->id[2], chunk->id[3], index); + fprintf(sio->fp, "CHUNK %c%c%c%c (%d) = {\n", chunk->id[0], chunk->id[1], chunk->id[2], chunk->id[3], index); serialize_indent_ascend(sio); /* Show information of the chunk header */ @@ -223,7 +196,8 @@ return 0; } -int chunk_read( +int +chunk_read( const chunkdecl_t* cds, chunk_t* chunk, serializer_t* sio @@ -253,13 +227,8 @@ } /* Determine the size of padded data for this chunk. */ - //if (strncmp(chunk->id, "mhod", 4) == 0) { - // next = begin + chunk->overall_size; - // chunk->padding_size = next - serialize_tell(sio); - //} else { - next = begin + chunk->size; - chunk->padding_size = next - serialize_tell(sio); - //} + next = begin + chunk->size; + chunk->padding_size = next - serialize_tell(sio); /* Read the padded data. */ if (0 < chunk->padding_size) { @@ -304,7 +273,8 @@ return 0; } -int chunk_write( +int +chunk_write( const chunkdecl_t* cds, chunk_t* chunk, serializer_t* sio @@ -348,6 +318,7 @@ chunk->overall_size = (uint32_t)serialize_tell(sio) - chunk->offset; } + /* Finalize the size of this chunk (including the descendants). */ offset = (uint32_t)serialize_tell(sio); if (ret = serialize_seek(sio, chunk->offset + 2 * sizeof(uint32_t))) return ret; if (ret = serialize_uint32le(sio, "overall_size", "%d", &chunk->overall_size)) return ret; Modified: trunk/pmplib/lib/pmp_ipod/chunk.h =================================================================== --- trunk/pmplib/lib/pmp_ipod/chunk.h 2007-10-08 14:16:18 UTC (rev 428) +++ trunk/pmplib/lib/pmp_ipod/chunk.h 2007-10-08 14:27:27 UTC (rev 429) @@ -48,10 +48,8 @@ } chunkdecl_t; chunk_t* chunk_new(const chunkdecl_t* cds, chunk_t* chunk, const char *name); -//int chunk_init(const chunkdecl_t* cds, chunk_t* chunk, const char *name); -void chunk_finish(const chunkdecl_t* cds, chunk_t* chunk); +void chunk_delete(const chunkdecl_t* cds, chunk_t* chunk); int chunk_is(chunk_t* chunk, const char *name); -//chunk_t* chunk_new_child(chunk_t* chunk); int chunk_repr(const chunkdecl_t* cds, chunk_t* chunk, size_t index, serializer_t* sio); int chunk_read(const chunkdecl_t* cds, chunk_t* chunk, serializer_t* sio); int chunk_write(const chunkdecl_t* cds, chunk_t* chunk, serializer_t* sio); Modified: trunk/pmplib/lib/pmp_ipod/ipod.c =================================================================== --- trunk/pmplib/lib/pmp_ipod/ipod.c 2007-10-08 14:16:18 UTC (rev 428) +++ trunk/pmplib/lib/pmp_ipod/ipod.c 2007-10-08 14:27:27 UTC (rev 429) @@ -290,9 +290,9 @@ void ipod_finish(ipod_t* ipod) { - chunk_finish(artworkdb_cds, ipod->photodb); - chunk_finish(itunesdb_cds, ipod->itunesdb); - chunk_finish(artworkdb_cds, ipod->artworkdb); + chunk_delete(artworkdb_cds, ipod->photodb); + chunk_delete(itunesdb_cds, ipod->itunesdb); + chunk_delete(artworkdb_cds, ipod->artworkdb); playcounts_finish(ipod->pcs); free(ipod->photo_formats); free(ipod->pcs); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |