From 0ddef6e7864b23bd4d9f1be90862bdc1ab04f65c Mon Sep 17 00:00:00 2001 From: Jorg Schuler Date: Wed, 28 Sep 2005 15:10:27 +0000 Subject: * src/itdb_track.c: include thumbnails into itdb_track_duplicate() (Christophe Fergeau) * src/db-image-parser.c: support for iPod nano (Christophe Fergeau) * configure.c: make MacOS compatible (Tristan O'Tierney) git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1109 f01d2545-417e-4e96-918e-98f8d0dbbcb6 --- src/itdb_track.c | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) (limited to 'src/itdb_track.c') diff --git a/src/itdb_track.c b/src/itdb_track.c index 773d0e2..34495b3 100644 --- a/src/itdb_track.c +++ b/src/itdb_track.c @@ -1,4 +1,4 @@ -/* Time-stamp: <2005-09-24 12:21:06 jcs> +/* Time-stamp: <2005-09-29 00:01:38 jcs> | | Copyright (C) 2002-2005 Jorg Schuler | Part of the gtkpod project. @@ -215,6 +215,30 @@ void itdb_track_unlink (Itdb_Track *track) track->itdb = NULL; } +static GList *dup_thumbnails (GList *thumbnails) +{ + GList *it; + GList *result; + + result = NULL; + for (it = thumbnails; it != NULL; it = it->next) + { + Itdb_Image *new_image; + Itdb_Image *image; + + image = (Itdb_Image *)it->data; + g_return_val_if_fail (image, NULL); + + new_image = g_new0 (Itdb_Image, 1); + memcpy (new_image, image, sizeof (Itdb_Image)); + new_image->filename = g_strdup (image->filename); + + result = g_list_prepend (result, new_image); + } + + return g_list_reverse (result); +} + /* Duplicate an existing track */ Itdb_Track *itdb_track_duplicate (Itdb_Track *tr) { @@ -252,6 +276,10 @@ Itdb_Track *itdb_track_duplicate (Itdb_Track *tr) tr->chapterdata_raw_length); } + /* Copy thumbnail data */ + tr_dup->orig_image_filename = g_strdup (tr->orig_image_filename); + tr_dup->thumbnails = dup_thumbnails (tr->thumbnails); + /* Copy userdata */ if (tr->userdata && tr->userdata_duplicate) tr_dup->userdata = tr->userdata_duplicate (tr->userdata); -- cgit