[gcab] Fix writing files after refactoring
- From: Marc-Andre Lureau <malureau src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gcab] Fix writing files after refactoring
- Date: Fri, 14 Dec 2012 14:29:14 +0000 (UTC)
commit 58a9a0747ac264e07d54a46b91b7acb9f935f2a4
Author: Marc-Andrà Lureau <marcandre lureau gmail com>
Date: Fri Dec 14 15:28:10 2012 +0100
Fix writing files after refactoring
libgcab/gcab-cabinet.c | 12 +++++++++---
libgcab/gcab-file.c | 5 -----
2 files changed, 9 insertions(+), 8 deletions(-)
---
diff --git a/libgcab/gcab-cabinet.c b/libgcab/gcab-cabinet.c
index d9d9404..3eb76f5 100644
--- a/libgcab/gcab-cabinet.c
+++ b/libgcab/gcab-cabinet.c
@@ -218,9 +218,15 @@ gcab_cabinet_write (GCabCabinet *self,
if (cfolder_write (&folder, out, error) == -1)
return FALSE;
- /* for (i = 0; i < cfiles->len; ++i) */
- /* if (cfile_write (&g_array_index (cfiles, cfile_t, i), out, error) == -1) */
- /* return FALSE; */
+ cfile_t *prevf = NULL;
+ g_hash_table_iter_init (&iter, cabfolder->files);
+ while (g_hash_table_iter_next (&iter, NULL, (gpointer*)&file)) {
+ file->cfile.uoffset = prevf ? prevf->uoffset + prevf->usize : 0;
+ prevf = &file->cfile;
+
+ if (cfile_write (&file->cfile, out, error) == -1)
+ return FALSE;
+ }
return TRUE;
diff --git a/libgcab/gcab-file.c b/libgcab/gcab-file.c
index d2e2038..0c80f13 100644
--- a/libgcab/gcab-file.c
+++ b/libgcab/gcab-file.c
@@ -129,11 +129,6 @@ gcab_file_update_info (GCabFile *self, GFileInfo *info)
((m->tm_mon+1) << 5 ) + (m->tm_mday);
self->cfile.time = (m->tm_hour << 11) + (m->tm_min << 5) + (m->tm_sec / 2);
- /* if (cfiles->len != 0) { */
- /* cfile_t *prevf = &g_array_index (cfiles, cfile_t, cfiles->len - 1); */
- /* self->cfile.uoffset = prevf->uoffset + prevf->usize; */
- /* } */
-
return TRUE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]