Mercurial > hg > xmms-sid
diff src/xs_slsup.c @ 660:b0743dc9165d
Change tabs to 4 spaces, everywhere.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 02 Apr 2008 22:10:05 +0300 |
parents | acaba070cf49 |
children | 9321ffa2ea7e |
line wrap: on
line diff
--- a/src/xs_slsup.c Wed Apr 02 21:29:26 2008 +0300 +++ b/src/xs_slsup.c Wed Apr 02 22:10:05 2008 +0300 @@ -35,92 +35,92 @@ */ gint xs_stil_init(void) { - XS_MUTEX_LOCK(xs_cfg); + XS_MUTEX_LOCK(xs_cfg); - if (!xs_cfg.stilDBPath) { - XS_MUTEX_UNLOCK(xs_cfg); - return -1; - } + if (!xs_cfg.stilDBPath) { + XS_MUTEX_UNLOCK(xs_cfg); + return -1; + } - XS_MUTEX_LOCK(xs_stildb_db); + XS_MUTEX_LOCK(xs_stildb_db); - /* Check if already initialized */ - if (xs_stildb_db) - xs_stildb_free(xs_stildb_db); + /* Check if already initialized */ + if (xs_stildb_db) + xs_stildb_free(xs_stildb_db); - /* Allocate database */ - xs_stildb_db = (xs_stildb_t *) g_malloc0(sizeof(xs_stildb_t)); - if (!xs_stildb_db) { - XS_MUTEX_UNLOCK(xs_cfg); - XS_MUTEX_UNLOCK(xs_stildb_db); - return -2; - } + /* Allocate database */ + xs_stildb_db = (xs_stildb_t *) g_malloc0(sizeof(xs_stildb_t)); + if (!xs_stildb_db) { + XS_MUTEX_UNLOCK(xs_cfg); + XS_MUTEX_UNLOCK(xs_stildb_db); + return -2; + } - /* Read the database */ - if (xs_stildb_read(xs_stildb_db, xs_cfg.stilDBPath) != 0) { - xs_stildb_free(xs_stildb_db); - xs_stildb_db = NULL; - XS_MUTEX_UNLOCK(xs_cfg); - XS_MUTEX_UNLOCK(xs_stildb_db); - return -3; - } + /* Read the database */ + if (xs_stildb_read(xs_stildb_db, xs_cfg.stilDBPath) != 0) { + xs_stildb_free(xs_stildb_db); + xs_stildb_db = NULL; + XS_MUTEX_UNLOCK(xs_cfg); + XS_MUTEX_UNLOCK(xs_stildb_db); + return -3; + } - /* Create index */ - if (xs_stildb_index(xs_stildb_db) != 0) { - xs_stildb_free(xs_stildb_db); - xs_stildb_db = NULL; - XS_MUTEX_UNLOCK(xs_cfg); - XS_MUTEX_UNLOCK(xs_stildb_db); - return -4; - } + /* Create index */ + if (xs_stildb_index(xs_stildb_db) != 0) { + xs_stildb_free(xs_stildb_db); + xs_stildb_db = NULL; + XS_MUTEX_UNLOCK(xs_cfg); + XS_MUTEX_UNLOCK(xs_stildb_db); + return -4; + } - XS_MUTEX_UNLOCK(xs_cfg); - XS_MUTEX_UNLOCK(xs_stildb_db); - return 0; + XS_MUTEX_UNLOCK(xs_cfg); + XS_MUTEX_UNLOCK(xs_stildb_db); + return 0; } void xs_stil_close(void) { - XS_MUTEX_LOCK(xs_stildb_db); - xs_stildb_free(xs_stildb_db); - xs_stildb_db = NULL; - XS_MUTEX_UNLOCK(xs_stildb_db); + XS_MUTEX_LOCK(xs_stildb_db); + xs_stildb_free(xs_stildb_db); + xs_stildb_db = NULL; + XS_MUTEX_UNLOCK(xs_stildb_db); } stil_node_t *xs_stil_get(gchar *filename) { - stil_node_t *result; - gchar *tmpFilename; + stil_node_t *result; + gchar *tmpFilename; - XS_MUTEX_LOCK(xs_stildb_db); - XS_MUTEX_LOCK(xs_cfg); + XS_MUTEX_LOCK(xs_stildb_db); + XS_MUTEX_LOCK(xs_cfg); - if (xs_cfg.stilDBEnable && xs_stildb_db) { - if (xs_cfg.hvscPath) { - /* Remove postfixed directory separator from HVSC-path */ - tmpFilename = xs_strrchr(xs_cfg.hvscPath, '/'); - if (tmpFilename && (tmpFilename[1] == 0)) - tmpFilename[0] = 0; + if (xs_cfg.stilDBEnable && xs_stildb_db) { + if (xs_cfg.hvscPath) { + /* Remove postfixed directory separator from HVSC-path */ + tmpFilename = xs_strrchr(xs_cfg.hvscPath, '/'); + if (tmpFilename && (tmpFilename[1] == 0)) + tmpFilename[0] = 0; - /* Remove HVSC location-prefix from filename */ - tmpFilename = strstr(filename, xs_cfg.hvscPath); - if (tmpFilename) - tmpFilename += strlen(xs_cfg.hvscPath); - else - tmpFilename = filename; - } else - tmpFilename = filename; + /* Remove HVSC location-prefix from filename */ + tmpFilename = strstr(filename, xs_cfg.hvscPath); + if (tmpFilename) + tmpFilename += strlen(xs_cfg.hvscPath); + else + tmpFilename = filename; + } else + tmpFilename = filename; - result = xs_stildb_get_node(xs_stildb_db, tmpFilename); - } else - result = NULL; + result = xs_stildb_get_node(xs_stildb_db, tmpFilename); + } else + result = NULL; - XS_MUTEX_UNLOCK(xs_stildb_db); - XS_MUTEX_UNLOCK(xs_cfg); + XS_MUTEX_UNLOCK(xs_stildb_db); + XS_MUTEX_UNLOCK(xs_cfg); - return result; + return result; } @@ -128,146 +128,146 @@ */ gint xs_songlen_init(void) { - XS_MUTEX_LOCK(xs_cfg); + XS_MUTEX_LOCK(xs_cfg); - if (!xs_cfg.songlenDBPath) { - XS_MUTEX_UNLOCK(xs_cfg); - return -1; - } + if (!xs_cfg.songlenDBPath) { + XS_MUTEX_UNLOCK(xs_cfg); + return -1; + } - XS_MUTEX_LOCK(xs_sldb_db); + XS_MUTEX_LOCK(xs_sldb_db); - /* Check if already initialized */ - if (xs_sldb_db) - xs_sldb_free(xs_sldb_db); + /* Check if already initialized */ + if (xs_sldb_db) + xs_sldb_free(xs_sldb_db); - /* Allocate database */ - xs_sldb_db = (xs_sldb_t *) g_malloc0(sizeof(xs_sldb_t)); - if (!xs_sldb_db) { - XS_MUTEX_UNLOCK(xs_cfg); - XS_MUTEX_UNLOCK(xs_sldb_db); - return -2; - } + /* Allocate database */ + xs_sldb_db = (xs_sldb_t *) g_malloc0(sizeof(xs_sldb_t)); + if (!xs_sldb_db) { + XS_MUTEX_UNLOCK(xs_cfg); + XS_MUTEX_UNLOCK(xs_sldb_db); + return -2; + } - /* Read the database */ - if (xs_sldb_read(xs_sldb_db, xs_cfg.songlenDBPath) != 0) { - xs_sldb_free(xs_sldb_db); - xs_sldb_db = NULL; - XS_MUTEX_UNLOCK(xs_cfg); - XS_MUTEX_UNLOCK(xs_sldb_db); - return -3; - } + /* Read the database */ + if (xs_sldb_read(xs_sldb_db, xs_cfg.songlenDBPath) != 0) { + xs_sldb_free(xs_sldb_db); + xs_sldb_db = NULL; + XS_MUTEX_UNLOCK(xs_cfg); + XS_MUTEX_UNLOCK(xs_sldb_db); + return -3; + } - /* Create index */ - if (xs_sldb_index(xs_sldb_db) != 0) { - xs_sldb_free(xs_sldb_db); - xs_sldb_db = NULL; - XS_MUTEX_UNLOCK(xs_cfg); - XS_MUTEX_UNLOCK(xs_sldb_db); - return -4; - } + /* Create index */ + if (xs_sldb_index(xs_sldb_db) != 0) { + xs_sldb_free(xs_sldb_db); + xs_sldb_db = NULL; + XS_MUTEX_UNLOCK(xs_cfg); + XS_MUTEX_UNLOCK(xs_sldb_db); + return -4; + } - XS_MUTEX_UNLOCK(xs_cfg); - XS_MUTEX_UNLOCK(xs_sldb_db); - return 0; + XS_MUTEX_UNLOCK(xs_cfg); + XS_MUTEX_UNLOCK(xs_sldb_db); + return 0; } void xs_songlen_close(void) { - XS_MUTEX_LOCK(xs_sldb_db); - xs_sldb_free(xs_sldb_db); - xs_sldb_db = NULL; - XS_MUTEX_UNLOCK(xs_sldb_db); + XS_MUTEX_LOCK(xs_sldb_db); + xs_sldb_free(xs_sldb_db); + xs_sldb_db = NULL; + XS_MUTEX_UNLOCK(xs_sldb_db); } sldb_node_t *xs_songlen_get(const gchar * filename) { - sldb_node_t *result; + sldb_node_t *result; - XS_MUTEX_LOCK(xs_sldb_db); + XS_MUTEX_LOCK(xs_sldb_db); - if (xs_cfg.songlenDBEnable && xs_sldb_db) - result = xs_sldb_get(xs_sldb_db, filename); - else - result = NULL; + if (xs_cfg.songlenDBEnable && xs_sldb_db) + result = xs_sldb_get(xs_sldb_db, filename); + else + result = NULL; - XS_MUTEX_UNLOCK(xs_sldb_db); + XS_MUTEX_UNLOCK(xs_sldb_db); - return result; + return result; } /* Allocate a new tune information structure */ xs_tuneinfo_t *xs_tuneinfo_new(const gchar * filename, - gint nsubTunes, gint startTune, const gchar * sidName, - const gchar * sidComposer, const gchar * sidCopyright, - gint loadAddr, gint initAddr, gint playAddr, - gint dataFileLen, const gchar *sidFormat, gint sidModel) + gint nsubTunes, gint startTune, const gchar * sidName, + const gchar * sidComposer, const gchar * sidCopyright, + gint loadAddr, gint initAddr, gint playAddr, + gint dataFileLen, const gchar *sidFormat, gint sidModel) { - xs_tuneinfo_t *result; - sldb_node_t *tmpLength; - gint i; + xs_tuneinfo_t *result; + sldb_node_t *tmpLength; + gint i; - /* Allocate structure */ - result = (xs_tuneinfo_t *) g_malloc0(sizeof(xs_tuneinfo_t)); - if (!result) { - xs_error("Could not allocate memory for tuneinfo ('%s')\n", - filename); - return NULL; - } + /* Allocate structure */ + result = (xs_tuneinfo_t *) g_malloc0(sizeof(xs_tuneinfo_t)); + if (!result) { + xs_error("Could not allocate memory for tuneinfo ('%s')\n", + filename); + return NULL; + } - result->sidFilename = XS_CS_FILENAME(filename); - if (!result->sidFilename) { - xs_error("Could not allocate sidFilename ('%s')\n", - filename); - g_free(result); - return NULL; - } + result->sidFilename = XS_CS_FILENAME(filename); + if (!result->sidFilename) { + xs_error("Could not allocate sidFilename ('%s')\n", + filename); + g_free(result); + return NULL; + } - /* Allocate space for subtune information */ - result->subTunes = g_malloc0(sizeof(xs_subtuneinfo_t) * (nsubTunes + 1)); - if (!result->subTunes) { - xs_error("Could not allocate memory for subtuneinfo ('%s', %i)\n", - filename, nsubTunes); + /* Allocate space for subtune information */ + result->subTunes = g_malloc0(sizeof(xs_subtuneinfo_t) * (nsubTunes + 1)); + if (!result->subTunes) { + xs_error("Could not allocate memory for subtuneinfo ('%s', %i)\n", + filename, nsubTunes); - g_free(result->sidFilename); - g_free(result); - return NULL; - } + g_free(result->sidFilename); + g_free(result); + return NULL; + } - /* The following allocations don't matter if they fail */ - result->sidName = XS_CS_SID(sidName); - result->sidComposer = XS_CS_SID(sidComposer); - result->sidCopyright = XS_CS_SID(sidCopyright); + /* The following allocations don't matter if they fail */ + result->sidName = XS_CS_SID(sidName); + result->sidComposer = XS_CS_SID(sidComposer); + result->sidCopyright = XS_CS_SID(sidCopyright); - result->nsubTunes = nsubTunes; - result->startTune = startTune; + result->nsubTunes = nsubTunes; + result->startTune = startTune; - result->loadAddr = loadAddr; - result->initAddr = initAddr; - result->playAddr = playAddr; - result->dataFileLen = dataFileLen; - result->sidFormat = XS_CS_SID(sidFormat); - - result->sidModel = sidModel; + result->loadAddr = loadAddr; + result->initAddr = initAddr; + result->playAddr = playAddr; + result->dataFileLen = dataFileLen; + result->sidFormat = XS_CS_SID(sidFormat); + + result->sidModel = sidModel; - /* Get length information (NOTE: Do not free this!) */ - tmpLength = xs_songlen_get(filename); - - /* Fill in sub-tune information */ - for (i = 0; i < result->nsubTunes; i++) { - if (tmpLength && (i < tmpLength->nlengths)) - result->subTunes[i].tuneLength = tmpLength->lengths[i]; - else - result->subTunes[i].tuneLength = -1; - - result->subTunes[i].tuneSpeed = -1; - } - - return result; + /* Get length information (NOTE: Do not free this!) */ + tmpLength = xs_songlen_get(filename); + + /* Fill in sub-tune information */ + for (i = 0; i < result->nsubTunes; i++) { + if (tmpLength && (i < tmpLength->nlengths)) + result->subTunes[i].tuneLength = tmpLength->lengths[i]; + else + result->subTunes[i].tuneLength = -1; + + result->subTunes[i].tuneSpeed = -1; + } + + return result; } @@ -275,13 +275,13 @@ */ void xs_tuneinfo_free(xs_tuneinfo_t * tune) { - if (!tune) return; + if (!tune) return; - g_free(tune->subTunes); - g_free(tune->sidFilename); - g_free(tune->sidName); - g_free(tune->sidComposer); - g_free(tune->sidCopyright); - g_free(tune->sidFormat); - g_free(tune); + g_free(tune->subTunes); + g_free(tune->sidFilename); + g_free(tune->sidName); + g_free(tune->sidComposer); + g_free(tune->sidCopyright); + g_free(tune->sidFormat); + g_free(tune); }