Fixed problem with utf characters in the %APPDATA% path on Windows.

Added function for opening files on Windows and Linux - RsDirUtil::rs_fopen.

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4124 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
thunder2 2011-04-03 23:11:38 +00:00
parent bc78397a64
commit bc113326e4
17 changed files with 109 additions and 119 deletions

View file

@ -215,7 +215,7 @@ bool ftExtraList::moveExtraFile(std::string fname, std::string hash, uint64_t si
}
std::string path = destpath + '/' + fname;
if (0 == rename(it->second.info.path.c_str(), path.c_str()))
if (RsDirUtil::renameFile(it->second.info.path, path))
{
/* rename */
it->second.info.path = path;
@ -427,13 +427,7 @@ bool ftExtraList::loadList(std::list<RsItem *>& load)
}
/* open file */
#ifdef WINDOWS_SYS
std::wstring filepathW;
librs::util::ConvertUtf8ToUtf16(fi->file.path, filepathW);
FILE *fd = _wfopen(filepathW.c_str(), L"rb");
#else
FILE *fd = fopen64(fi->file.path.c_str(), "rb");
#endif
FILE *fd = RsDirUtil::rs_fopen(fi->file.path.c_str(), "rb");
if (fd == NULL)
{
delete (*it);