X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8d94819c437fdf28c45e9f328e6c38fd1c639ddf..05e66a7002abbc726d3aa53fc5cb42ebaf8748e8:/src/html/helpdata.cpp diff --git a/src/html/helpdata.cpp b/src/html/helpdata.cpp index f67b1689c8..e4ef62a1d5 100644 --- a/src/html/helpdata.cpp +++ b/src/html/helpdata.cpp @@ -475,11 +475,10 @@ void wxHtmlHelpData::SetTempDir(const wxString& path) m_tempPath = path; else { - if (wxIsAbsolutePath(path)) m_tempPath = path; - else m_tempPath = wxGetCwd() + wxT("/") + path; + wxFileName fn(path); + fn.MakeAbsolute(); - if (m_tempPath[m_tempPath.length() - 1] != wxT('/')) - m_tempPath << wxT('/'); + m_tempPath = fn.GetPath(wxPATH_GET_VOLUME | wxPATH_GET_SEPARATOR); } } @@ -686,6 +685,19 @@ bool wxHtmlHelpData::AddBook(const wxString& book) enc = wxFontMapper::Get()->CharsetToEncoding(charset); #endif + // No conversion was done on the title yet; at least + // test for a common case. + if (charset == wxT("utf-8") && !title.IsEmpty()) + { + char *buf = new char[title.Length()+1]; + size_t i; + for (i = 0; i < title.Length(); i++) + buf[i] = (char) title[i]; + buf[i] = 0; + title = wxString::FromUTF8(buf); + delete[] buf; + } + bool rtval = AddBookParam(*fi, enc, title, contents, index, start, fsys.GetPath()); delete fi;