|
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.
|