aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2008-09-29 15:52:30 +0200
committerEric Wong <normalperson@yhbt.net>2008-10-05 17:20:10 -0700
commitc461fe6377836b486ad6dc6a1558a63e7c32eaa1 (patch)
tree12e32c2842476607a7b6b9ce121804245cb8b4f4
parentda744eba5313dd59b107872b83b8ee207b71f74a (diff)
downloadmpd-c461fe6377836b486ad6dc6a1558a63e7c32eaa1.tar.gz
mpd-c461fe6377836b486ad6dc6a1558a63e7c32eaa1.tar.xz
mpd-c461fe6377836b486ad6dc6a1558a63e7c32eaa1.zip
song: converted "type" to enum
Having an enum type is much nicer than an anonymous integer plus CPP macros. Note that the old code didn't save any space by declaring the variable 8 bit, due to padding.
Diffstat (limited to '')
-rw-r--r--src/song.c2
-rw-r--r--src/song.h11
2 files changed, 8 insertions, 5 deletions
diff --git a/src/song.c b/src/song.c
index 943adfe73..3bd6fa52e 100644
--- a/src/song.c
+++ b/src/song.c
@@ -29,7 +29,7 @@
#include "os_compat.h"
-Song *newSong(const char *url, int type, Directory * parentDir)
+Song *newSong(const char *url, enum song_type type, Directory * parentDir)
{
Song *song;
diff --git a/src/song.h b/src/song.h
index 9bb96aba0..6de962493 100644
--- a/src/song.h
+++ b/src/song.h
@@ -29,21 +29,24 @@
#define SONG_BEGIN "songList begin"
#define SONG_END "songList end"
-#define SONG_TYPE_FILE 1
-#define SONG_TYPE_URL 2
+enum song_type {
+ SONG_TYPE_FILE = 1,
+ SONG_TYPE_URL = 2
+};
#define SONG_FILE "file: "
#define SONG_TIME "Time: "
typedef struct _Song {
char *url;
- int8_t type;
struct mpd_tag *tag;
+ enum song_type type;
struct _Directory *parentDir;
time_t mtime;
} Song;
-Song *newSong(const char *url, int songType, struct _Directory *parentDir);
+Song *newSong(const char *url, enum song_type type,
+ struct _Directory *parentDir);
void freeSong(Song *);