| 630 | } |
| 631 | #elif defined(__CYGWIN__) || defined(__MINGW32__) |
| 632 | static inline unsigned char convert_char_win(unsigned char car) |
| 633 | { |
| 634 | if(car<0x20) |
| 635 | return '_'; |
| 636 | switch(car) |
| 637 | { |
| 638 | /* Forbidden */ |
| 639 | case '<': |
| 640 | case '>': |
| 641 | case ':': |
| 642 | case '"': |
| 643 | /* case '/': subdirectory */ |
| 644 | case '\\': |
| 645 | case '|': |
| 646 | case '?': |
| 647 | case '*': |
| 648 | /* Not recommanded, valid for NTFS, invalid for FAT */ |
| 649 | case '[': |
| 650 | case ']': |
| 651 | case '+': |
| 652 | /* Not recommanded */ |
| 653 | case ';': |
| 654 | case ',': |
| 655 | case '=': |
| 656 | return '_'; |
| 657 | } |
| 658 | return car; |
| 659 | } |
| 660 | |
| 661 | static unsigned int filename_convert(char *dst, const char*src, const unsigned int n) |
| 662 | { |