X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f4ada568223b79c8a5769cc351c36a8e2ccd7841..ecd20d4a916884895dcd8873a9f1156e34f4ac89:/src/common/sckfile.cpp diff --git a/src/common/sckfile.cpp b/src/common/sckfile.cpp index b1e60ae4eb..483f4eb7c8 100644 --- a/src/common/sckfile.cpp +++ b/src/common/sckfile.cpp @@ -6,25 +6,32 @@ // Created: 20/07/97 // RCS-ID: $Id$ // Copyright: (c) 1997, 1998 Guilhem Lavaux -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "sckfile.h" #endif -#include -#include -#include -#include "wx/protocol/file.h" + +// For compilers that support precompilation, includes "wx.h". +#include "wx/wxprec.h" #ifdef __BORLANDC__ -#pragma hdrstop + #pragma hdrstop #endif -#if !USE_SHARED_LIBRARY -IMPLEMENT_DYNAMIC_CLASS(wxFileProto, wxProtocol) -IMPLEMENT_PROTOCOL(wxFileProto, "file", NULL, FALSE) +#ifndef WX_PRECOMP + #include "wx/defs.h" #endif +#if wxUSE_STREAMS && wxUSE_PROTOCOL_FILE + +#include +#include "wx/wfstream.h" +#include "wx/protocol/file.h" + +IMPLEMENT_DYNAMIC_CLASS(wxFileProto, wxProtocol) +IMPLEMENT_PROTOCOL(wxFileProto, wxT("file"), NULL, false) + wxFileProto::wxFileProto() : wxProtocol() { @@ -36,5 +43,14 @@ wxFileProto::~wxFileProto() wxInputStream *wxFileProto::GetInputStream(const wxString& path) { - return new wxFileInputStream(path); + wxFileInputStream* retval = new wxFileInputStream(wxURI::Unescape(path)); + if (retval->Ok()) { + return retval; + } else { + delete retval; + return 0; + } } + +#endif // wxUSE_STREAMS && wxUSE_PROTOCOL_FILE +