diff options
author | Luboš Luňák <l.lunak@suse.cz> | 2012-11-21 08:31:50 +0100 |
---|---|---|
committer | Luboš Luňák <l.lunak@suse.cz> | 2012-11-21 08:33:17 +0100 |
commit | 7f0bf0941c29fd0e1a83b6f4823f5c220f9cf365 (patch) | |
tree | 9cf6d6a8d085dc4c58a127bf36704c6e5fc2e227 /l10ntools | |
parent | 24d78519af498dc5a116fcdd8f1bb1b457c33a4f (diff) |
dirent.h doesn't exist on windows
Change-Id: Id2afa8a9ef944285a34f51cd685cd0ff5a9b6041
Diffstat (limited to 'l10ntools')
-rw-r--r-- | l10ntools/source/renewpo.cxx | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/l10ntools/source/renewpo.cxx b/l10ntools/source/renewpo.cxx index 87a871a5b9d1..13a701683985 100644 --- a/l10ntools/source/renewpo.cxx +++ b/l10ntools/source/renewpo.cxx @@ -9,7 +9,6 @@ #include <iostream> #include <fstream> -#include <dirent.h> #include <string> #include <vector> #include <map> @@ -58,12 +57,10 @@ OString DelLocalId(const OString& rLine) } //Renew po files of the actual language -void HandleLanguage(struct dirent* pLangEntry, const OString& rOldPath, +void HandleLanguage(const OString& LangEntryName, const OString& rOldPath, const OString& rNewPath, const OString& rpo2loPath, const OString& rSDFPath) { - const OString LangEntryName = pLangEntry->d_name; - //Generate and open sdf cout << "Process start with language: " << LangEntryName.getStr() << endl; OUString aTempUrl; @@ -228,15 +225,27 @@ int main(int argc, char* argv[]) } //Call processing function with all language directories - DIR* pTranslations = opendir(argv[1]); - while ( struct dirent* pActEntry = readdir(pTranslations) ) + OUString pathUrl; + if( osl::Directory::getFileURLFromSystemPath( + OStringToOUString( argv[ 1 ], RTL_TEXTENCODING_UTF8 ), pathUrl ) == osl::Directory::E_None ) { - if ( OString(pActEntry->d_name).indexOf('.')==-1 ) - HandleLanguage(pActEntry,OString(argv[1]), + osl::Directory dir( pathUrl ); + if( dir.reset() == osl::Directory::E_None ) + { + for(;;) + { + osl::DirectoryItem item; + if( dir.getNextItem( item ) != osl::Directory::E_None ) + break; + osl::FileStatus status( osl_FileStatus_Mask_FileName ); + if( item.getFileStatus( status ) == osl::File::E_None && status.getFileName().indexOf('.')==-1 ) + HandleLanguage( OUStringToOString(status.getFileName(), RTL_TEXTENCODING_UTF8), + OString(argv[1]), OString(argv[2]),OString(argv[3]), OString(argv[4])); + } + } } - closedir(pTranslations); } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |