# HG changeset patch # User nkeynes # Date 1201487829 0 # Node ID c2dd87f947b265cdfc75a5a9ac208b70364b62b8 # Parent 410b48e63d53534a8eb55be0f29a69df5c20d432 Add general purpose relative filename helper --- a/src/gdrom/gdrom.c Sat Jan 26 03:45:49 2008 +0000 +++ b/src/gdrom/gdrom.c Mon Jan 28 02:37:09 2008 +0000 @@ -116,3 +116,11 @@ { return gdrom_disc; } + +gchar *gdrom_get_relative_filename( const gchar *base_name, const gchar *rel_name ) +{ + gchar *dirname = g_path_get_dirname(base_name); + gchar *pathname = g_strdup_printf( "%s%c%s", dirname, G_DIR_SEPARATOR, rel_name ); + g_free(dirname); + return pathname; +} --- a/src/gdrom/gdrom.h Sat Jan 26 03:45:49 2008 +0000 +++ b/src/gdrom/gdrom.h Mon Jan 28 02:37:09 2008 +0000 @@ -224,4 +224,11 @@ uint32_t gdrom_read_sectors( uint32_t sector, uint32_t sector_count, int mode, unsigned char *buf, uint32_t *length ); +/** + * Given a base filename (eg for a .cue file), generate the path for the given + * find_name relative to the original file. + * @return a newly allocated string. + */ +gchar *gdrom_get_relative_filename( const gchar *base_name, const gchar *find_name ); + #endif