// Copyright: (c) 1997, 1998 Guilhem Lavaux
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma implementation "sckfile.h"
-#endif
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#include "wx/protocol/file.h"
IMPLEMENT_DYNAMIC_CLASS(wxFileProto, wxProtocol)
-IMPLEMENT_PROTOCOL(wxFileProto, wxT("file"), NULL, FALSE)
+IMPLEMENT_PROTOCOL(wxFileProto, wxT("file"), NULL, false)
wxFileProto::wxFileProto()
- : wxProtocol()
+ : wxProtocol()
{
+ m_error = wxPROTO_NOERR;
}
wxFileProto::~wxFileProto()
wxInputStream *wxFileProto::GetInputStream(const wxString& path)
{
- return new wxFileInputStream(path);
+ wxFileInputStream *retval = new wxFileInputStream(wxURI::Unescape(path));
+ if ( retval->Ok() )
+ {
+ m_error = wxPROTO_NOERR;
+
+ return retval;
+ }
+
+ m_error = wxPROTO_NOFILE;
+ delete retval;
+
+ return NULL;
}
#endif // wxUSE_STREAMS && wxUSE_PROTOCOL_FILE