X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/14f355c2b5c71fc7c3d680aea366582d2ac60f7b..00f553943850592fda4607bf8a34d458cf6ab522:/src/common/filesys.cpp diff --git a/src/common/filesys.cpp b/src/common/filesys.cpp index 648130d001..f8b2a9fa2a 100644 --- a/src/common/filesys.cpp +++ b/src/common/filesys.cpp @@ -186,7 +186,16 @@ wxFSFile* wxLocalFSHandler::OpenFile(wxFileSystem& WXUNUSED(fs), const wxString& if (!wxFileExists(fullpath)) return (wxFSFile*) NULL; - return new wxFSFile(new wxFFileInputStream(fullpath), + // we need to check whether we can really read from this file, otherwise + // wxFSFile is not going to work + wxFFileInputStream *is = new wxFFileInputStream(fullpath); + if ( !is->Ok() ) + { + delete is; + return (wxFSFile*) NULL; + } + + return new wxFSFile(is, right, GetMimeTypeFromExt(location), GetAnchor(location) @@ -521,31 +530,31 @@ class wxFileSystemModule : public wxModule _T(""), _T(""), _T("JPEG image (from fallback)"), - _T("jpg"), _T("jpeg"), NULL); + _T("jpg"), _T("jpeg"), _T("JPG"), _T("JPEG"), NULL); gs_FSMimeFallbacks[1] = wxFileTypeInfo(_T("image/gif"), _T(""), _T(""), _T("GIF image (from fallback)"), - _T("gif"), NULL); + _T("gif"), _T("GIF"), NULL); gs_FSMimeFallbacks[2] = wxFileTypeInfo(_T("image/png"), _T(""), _T(""), _T("PNG image (from fallback)"), - _T("png"), NULL); + _T("png"), _T("PNG"), NULL); gs_FSMimeFallbacks[3] = wxFileTypeInfo(_T("image/bmp"), _T(""), _T(""), _T("windows bitmap image (from fallback)"), - _T("bmp"), NULL); + _T("bmp"), _T("BMP"), NULL); gs_FSMimeFallbacks[4] = wxFileTypeInfo(_T("text/html"), _T(""), _T(""), _T("HTML document (from fallback)"), - _T("htm"), _T("html"), NULL); + _T("htm"), _T("html"), _T("HTM"), _T("HTML"), NULL); gs_FSMimeFallbacks[5] = // must terminate the table with this! wxFileTypeInfo();