summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Kukla <roolku@rockbox.org>2007-11-12 12:39:56 +0000
committerRobert Kukla <roolku@rockbox.org>2007-11-12 12:39:56 +0000
commite1c45d227b0f52189e13baf1359ddd17e1d48745 (patch)
tree2b787446ce662a0a9b58c3e92c7487d4e3da54b2
parent1ba1c684cb73d480013da4c29cea79d1eeeec765 (diff)
downloadrockbox-e1c45d227b0f52189e13baf1359ddd17e1d48745.tar.gz
rockbox-e1c45d227b0f52189e13baf1359ddd17e1d48745.zip
FS#6944 - honour the default codepage setting when reading cue sheets
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15595 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/cuesheet.c6
-rw-r--r--apps/cuesheet.h12
2 files changed, 10 insertions, 8 deletions
diff --git a/apps/cuesheet.c b/apps/cuesheet.c
index d5fbc54f73..0928ac7e46 100644
--- a/apps/cuesheet.c
+++ b/apps/cuesheet.c
@@ -194,8 +194,10 @@ bool parse_cuesheet(char *file, struct cuesheet *cue)
194 break; 194 break;
195 } 195 }
196 196
197 if (dest) 197 if (dest) {
198 strncpy(dest, string, MAX_NAME); 198 dest = iso_decode(string, dest, -1, MIN(strlen(string), MAX_NAME));
199 *dest = '\0';
200 }
199 } 201 }
200 } 202 }
201 close(fd); 203 close(fd);
diff --git a/apps/cuesheet.h b/apps/cuesheet.h
index f66b25e800..76ffe9681d 100644
--- a/apps/cuesheet.h
+++ b/apps/cuesheet.h
@@ -27,9 +27,9 @@
27#define MAX_TRACKS 99 /* Max number of tracks in a cuesheet */ 27#define MAX_TRACKS 99 /* Max number of tracks in a cuesheet */
28 28
29struct cue_track_info { 29struct cue_track_info {
30 char title[MAX_NAME]; 30 char title[MAX_NAME*3+1];
31 char performer[MAX_NAME]; 31 char performer[MAX_NAME*3+1];
32 char songwriter[MAX_NAME]; 32 char songwriter[MAX_NAME*3+1];
33 unsigned long offset; /* ms from start of track */ 33 unsigned long offset; /* ms from start of track */
34}; 34};
35 35
@@ -37,9 +37,9 @@ struct cuesheet {
37 char path[MAX_PATH]; 37 char path[MAX_PATH];
38 char audio_filename[MAX_PATH]; 38 char audio_filename[MAX_PATH];
39 39
40 char title[MAX_NAME]; 40 char title[MAX_NAME*3+1];
41 char performer[MAX_NAME]; 41 char performer[MAX_NAME*3+1];
42 char songwriter[MAX_NAME]; 42 char songwriter[MAX_NAME*3+1];
43 43
44 int track_count; 44 int track_count;
45 struct cue_track_info tracks[MAX_TRACKS]; 45 struct cue_track_info tracks[MAX_TRACKS];