diff options
author | Jens Arnold <amiconn@rockbox.org> | 2005-02-16 21:56:20 +0000 |
---|---|---|
committer | Jens Arnold <amiconn@rockbox.org> | 2005-02-16 21:56:20 +0000 |
commit | f213afacbe7122606e42ec40d7f4648964b5887c (patch) | |
tree | 92c6c2de4a5d19590978920dfe263279f92e30f3 /firmware | |
parent | 3eb45f93136719ba68189413bb1aae37a702fff8 (diff) | |
download | rockbox-f213afacbe7122606e42ec40d7f4648964b5887c.tar.gz rockbox-f213afacbe7122606e42ec40d7f4648964b5887c.zip |
For shortname creation, replace most illegal characters by underscores instead of removing them, thereby lowering the chance to create a blank (illegal) name. Spaces and control chars are still removed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5991 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/drivers/fat.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/firmware/drivers/fat.c b/firmware/drivers/fat.c index b3da25cc4d..65c6a3152e 100644 --- a/firmware/drivers/fat.c +++ b/firmware/drivers/fat.c | |||
@@ -1432,7 +1432,7 @@ unsigned char char2dos(unsigned char c) | |||
1432 | case 0xe5: /* Special kanji character */ | 1432 | case 0xe5: /* Special kanji character */ |
1433 | c = 0x05; | 1433 | c = 0x05; |
1434 | break; | 1434 | break; |
1435 | case 0x20: | 1435 | |
1436 | case 0x22: | 1436 | case 0x22: |
1437 | case 0x2a: | 1437 | case 0x2a: |
1438 | case 0x2b: | 1438 | case 0x2b: |
@@ -1448,14 +1448,14 @@ unsigned char char2dos(unsigned char c) | |||
1448 | case 0x5c: | 1448 | case 0x5c: |
1449 | case 0x5d: | 1449 | case 0x5d: |
1450 | case 0x7c: | 1450 | case 0x7c: |
1451 | /* Illegal name */ | 1451 | /* Illegal name, replace */ |
1452 | c = 0; | 1452 | c = '_'; |
1453 | break; | 1453 | break; |
1454 | 1454 | ||
1455 | default: | 1455 | default: |
1456 | if(c < 0x20) | 1456 | if(c <= 0x20) |
1457 | { | 1457 | { |
1458 | /* Illegal name */ | 1458 | /* Illegal name, remove */ |
1459 | c = 0; | 1459 | c = 0; |
1460 | } | 1460 | } |
1461 | break; | 1461 | break; |