Re: [Rhythmbox-devel] LAST_PLAYED's type.
- From: Alex Goddard <agoddard purdue edu>
- To: Colin Walters <walters verbum org>
- Cc: rhythmbox-devel gnome org
- Subject: Re: [Rhythmbox-devel] LAST_PLAYED's type.
- Date: Tue, 24 Aug 2004 21:34:34 -0500 (EST)
On Mon, 23 Aug 2004, Colin Walters wrote:
On Sun, 2004-08-22 at 22:49 -0500, Alex Goddard wrote:
I'm in the middle of adding 'Last Played' to the smart playlist dialogue.
The dialogue itself was the easy part. The hard part has come with
dealing with RHYTHMDB_PROP_LAST_PLAYED. The source, as far as I can tell,
treats RHYTHMDB_PROP_LAST_PLAYED as G_TYPE_ULONG (see examples like lines
1703-1705 in rhythmdb.c and its presence in rhythmdb_entry_get_ulong () in
rhythmdb.h).
However, in getting the smart playlist to query the database, I'm
triggering a number of assertions regarding LAST_PLAYED's type, all of
which can be worked around by adding cases for G_TYPE_LONG. I've been
unable to pinpoint precisely where the type is getting switched.
Any ideas as to why I might be encountering this? Is adding cases for
G_TYPE_LONG the right way to go, or should I be making a more strenuous
effort to find where LAST_PLAYED is picking up a sign?
It comes from rhythmdb.c:2336:
ENUM_ENTRY (RHYTHMDB_PROP_LAST_PLAYED, "Last Played (glong) [last-played]"),
That should probably be changed to gulong.
Attaching a patch, since to make a publicly available arch branch, I'll
need to write a permission-fixing script first (god knows when I'll get
around to that).
The patch does precisely the above. Changes the type to gulong.
--
Alex Goddard
agoddard at purdue dot edu
--- rhythmdb.c.orig 2004-08-24 21:23:56.216886128 -0500
+++ rhythmdb.c 2004-08-24 21:24:24.927521448 -0500
@@ -2333,7 +2333,7 @@ rhythmdb_prop_get_type (void)
ENUM_ENTRY (RHYTHMDB_PROP_RATING, "Rating (gdouble) [rating]"),
ENUM_ENTRY (RHYTHMDB_PROP_AUTO_RATE, "Whether to auto-rate song (gboolean) [auto-rate]"),
ENUM_ENTRY (RHYTHMDB_PROP_PLAY_COUNT, "Play Count (gint) [play-count]"),
- ENUM_ENTRY (RHYTHMDB_PROP_LAST_PLAYED, "Last Played (glong) [last-played]"),
+ ENUM_ENTRY (RHYTHMDB_PROP_LAST_PLAYED, "Last Played (gulong) [last-played]"),
ENUM_ENTRY (RHYTHMDB_PROP_BITRATE, "Bitrate (gulong) [bitrate]"),
ENUM_ENTRY (RHYTHMDB_PROP_TRACK_GAIN, "Replaygain track gain (gdouble) [replaygain-track-gain]"),
ENUM_ENTRY (RHYTHMDB_PROP_TRACK_PEAK, "Replaygain track peak (gdouble) [replaygain-track-peak]"),
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]