diff options
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/common/file_internal.c | 4 | ||||
-rw-r--r-- | firmware/export/config.h | 14 |
2 files changed, 18 insertions, 0 deletions
diff --git a/firmware/common/file_internal.c b/firmware/common/file_internal.c index a73d9beaa2..e4554670af 100644 --- a/firmware/common/file_internal.c +++ b/firmware/common/file_internal.c | |||
@@ -223,6 +223,7 @@ int test_dir_empty_internal(struct filestr_base *stream) | |||
223 | /* iso decode the name to UTF-8 */ | 223 | /* iso decode the name to UTF-8 */ |
224 | void iso_decode_d_name(char *d_name) | 224 | void iso_decode_d_name(char *d_name) |
225 | { | 225 | { |
226 | #ifdef HAVE_FILESYSTEM_CODEPAGE | ||
226 | if (is_dotdir_name(d_name)) | 227 | if (is_dotdir_name(d_name)) |
227 | return; | 228 | return; |
228 | 229 | ||
@@ -232,6 +233,9 @@ void iso_decode_d_name(char *d_name) | |||
232 | /* This MUST be the default codepage thus not something that could be | 233 | /* This MUST be the default codepage thus not something that could be |
233 | loaded on call */ | 234 | loaded on call */ |
234 | iso_decode(shortname, d_name, -1, len + 1); | 235 | iso_decode(shortname, d_name, -1, len + 1); |
236 | #else | ||
237 | (void)d_name; | ||
238 | #endif | ||
235 | } | 239 | } |
236 | 240 | ||
237 | #ifdef HAVE_DIRCACHE | 241 | #ifdef HAVE_DIRCACHE |
diff --git a/firmware/export/config.h b/firmware/export/config.h index 26ed7395ff..80d59ea836 100644 --- a/firmware/export/config.h +++ b/firmware/export/config.h | |||
@@ -1343,6 +1343,20 @@ Lyre prototype 1 */ | |||
1343 | # define HAVE_PERCEPTUAL_VOLUME | 1343 | # define HAVE_PERCEPTUAL_VOLUME |
1344 | #endif | 1344 | #endif |
1345 | 1345 | ||
1346 | /* | ||
1347 | * Turn off legacy codepage handling in the filesystem code for bootloaders, | ||
1348 | * and support ISO-8859-1 (Latin-1) only. This only affects DOS 8.3 filename | ||
1349 | * parsing when FAT32 long names are unavailable; long names are Unicode and | ||
1350 | * can always be decoded properly regardless of this setting. | ||
1351 | * | ||
1352 | * In reality, bootloaders never supported codepages other than Latin-1 in | ||
1353 | * the first place. They did contain the code to load codepages from disk, | ||
1354 | * but had no way to actually change the codepage away from Latin-1. | ||
1355 | */ | ||
1356 | #if !defined(BOOTLOADER) | ||
1357 | # define HAVE_FILESYSTEM_CODEPAGE | ||
1358 | #endif | ||
1359 | |||
1346 | /* null audiohw setting macro for when codec header is included for reasons | 1360 | /* null audiohw setting macro for when codec header is included for reasons |
1347 | other than audio support */ | 1361 | other than audio support */ |
1348 | #define AUDIOHW_SETTING(name, us, nd, st, minv, maxv, defv, expr...) | 1362 | #define AUDIOHW_SETTING(name, us, nd, st, minv, maxv, defv, expr...) |