X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9b42a9adc276b9f0e09c556d165190104afe5c64..cc4d5638c66a409e421420ed7110917755a66788:/src/common/filesys.cpp diff --git a/src/common/filesys.cpp b/src/common/filesys.cpp index 9f5a7c9a24..06edca28a2 100644 --- a/src/common/filesys.cpp +++ b/src/common/filesys.cpp @@ -3,7 +3,6 @@ // Purpose: wxFileSystem class - interface for opening files // Author: Vaclav Slavik // Copyright: (c) 1999 Vaclav Slavik -// CVS-ID: $Id$ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -262,7 +261,7 @@ wxFSFile* wxLocalFSHandler::OpenFile(wxFileSystem& WXUNUSED(fs), const wxString& } return new wxFSFile(is, - right, + location, wxEmptyString, GetAnchor(location) #if wxUSE_DATETIME @@ -635,7 +634,7 @@ wxFileName wxFileSystem::URLToFileName(const wxString& url) path = wxURI::Unescape(path); -#ifdef __WXMSW__ +#ifdef __WINDOWS__ // file urls either start with a forward slash (local harddisk), // otherwise they have a servername/sharename notation, // which only exists on msw and corresponds to a unc @@ -756,5 +755,29 @@ class wxFileSystemModule : public wxModule IMPLEMENT_DYNAMIC_CLASS(wxFileSystemModule, wxModule) +//// wxFSInputStream + +wxFSInputStream::wxFSInputStream(const wxString& filename, int flags) +{ + wxFileSystem fs; + m_file = fs.OpenFile(filename, flags | wxFS_READ); + + if ( m_file ) + { + wxInputStream* const stream = m_file->GetStream(); + if ( stream ) + { + // Notice that we pass the stream by reference: it shouldn't be + // deleted by us as it's owned by m_file already. + InitParentStream(*stream); + } + } +} + +wxFSInputStream::~wxFSInputStream() +{ + delete m_file; +} + #endif // wxUSE_FILESYSTEM