commit 6ca8677a21f457def0e6aab8cda1a79e98ca2f79
Author: Christophe Fergeau <[email protected]>
Date:   Sat Oct 17 20:47:31 2009 +0200

    add private data to Itdb_Track

 src/itdb.h         |    3 ++-
 src/itdb_private.h |    4 ++++
 src/itdb_track.c   |    4 ++++
 3 files changed, 10 insertions(+), 1 deletions(-)
---
diff --git a/src/itdb.h b/src/itdb.h
index 3be92ba..97bbd4e 100644
--- a/src/itdb.h
+++ b/src/itdb.h
@@ -1208,6 +1208,7 @@ typedef enum
     ITDB_MEDIATYPE_RENTAL     = 0x8000,
 } Itdb_Mediatype;
 
+typedef struct _Itdb_Track_Private Itdb_Track_Private;
 /**
  * Itdb_Track:
  * @itdb:                       A pointer to the #Itdb_iTunesDB (for 
convenience)
@@ -1643,7 +1644,7 @@ struct _Itdb_Track
   gint32 reserved_int4;
   gint32 reserved_int5;
   gint32 reserved_int6;
-  gpointer reserved1;
+  Itdb_Track_Private *priv;
   gpointer reserved2;
   gpointer reserved3;
   gpointer reserved4;
diff --git a/src/itdb_private.h b/src/itdb_private.h
index 3aa3790..f475dd4 100644
--- a/src/itdb_private.h
+++ b/src/itdb_private.h
@@ -169,6 +169,10 @@ struct _Itdb_iTunesDB_Private
     gint32 unk_0xa8;
 };
 
+/* private data for Itdb_Track */
+struct _Itdb_Track_Private {
+};
+
 G_GNUC_INTERNAL gboolean itdb_spl_action_known (ItdbSPLAction action);
 G_GNUC_INTERNAL void itdb_splr_free (Itdb_SPLRule *splr);
 G_GNUC_INTERNAL const gchar *itdb_photodb_get_mountpoint (Itdb_PhotoDB 
*photodb);
diff --git a/src/itdb_track.c b/src/itdb_track.c
index 97056d8..6c3ac56 100644
--- a/src/itdb_track.c
+++ b/src/itdb_track.c
@@ -46,6 +46,7 @@ Itdb_Track *itdb_track_new (void)
 
     track->artwork = itdb_artwork_new ();
     track->chapterdata = itdb_chapterdata_new ();
+    track->priv = g_new0 (Itdb_Track_Private, 1);
 
     track->visible = 1;
     return track;
@@ -259,6 +260,7 @@ void itdb_track_free (Itdb_Track *track)
     if (track->userdata && track->userdata_destroy)
        (*track->userdata_destroy) (track->userdata);
 
+    g_free (track->priv);
     g_free (track);
 }
 
@@ -350,6 +352,8 @@ Itdb_Track *itdb_track_duplicate (Itdb_Track *tr)
     tr_dup->sort_composer = g_strdup (tr->sort_composer);
     tr_dup->sort_tvshow = g_strdup (tr->sort_tvshow);
 
+    /* Copy private data too */
+    tr_dup->priv = g_memdup (tr->priv, sizeof (Itdb_Track_Private));
 
     /* Copy chapterdata */
     tr_dup->chapterdata = itdb_chapterdata_duplicate (tr->chapterdata);

------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
gtkpod-cvs2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gtkpod-cvs2

Reply via email to