Changes between Initial Version and Version 1 of Ticket #31
- Timestamp:
- Sep 14, 2006, 9:06:14 PM (18 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #31
- Property Keywords QFile national characters added
- Property Milestone → qt-os2-3.3.1-rc07
- Property Status new → assigned
- Property Summary qfile_pm.cpp minor change → QFile::isValidFile() doesn't work correctly for filenames with national characters
- Property Version → 3.3.1-rc06
-
Ticket #31 – Description
initial v1 4 4 Перед этим для приведения fileName[i] к char неявно вызывается метод latin1(), который для символов в уникоде (>0xFF) возвращает 0. Но согласно спецификации strchr() 0 это допустимы символ для поиска и более того конец строки '\0' также включается в поиск. В результате имеем FALSE для всех имён с национальными символами. 5 5 Вот исправление: 6 {{{ 6 7 for ( int i = 0; i < (int) fileName.length(); i++) { 7 8 if ( fileName[i] < QChar( 32 ) ) … … 12 13 return FALSE; 13 14 } 14 15 }}} 15 16 Или можно заменить strchr() strnchr() 16 17