X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..c2a331e02732bb6a04a42ebf646d54b4373ad122:/src/common/url.cpp diff --git a/src/common/url.cpp b/src/common/url.cpp index b6c54cca45..bccda3d90f 100644 --- a/src/common/url.cpp +++ b/src/common/url.cpp @@ -6,10 +6,10 @@ // Created: 20/07/1997 // 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 "url.h" #endif @@ -20,8 +20,7 @@ #pragma hdrstop #endif -#include -#include +#if wxUSE_URL #include "wx/string.h" #include "wx/list.h" @@ -29,13 +28,22 @@ #include "wx/module.h" #include "wx/url.h" +#include +#include + IMPLEMENT_CLASS(wxProtoInfo, wxObject) IMPLEMENT_CLASS(wxURL, wxObject) // Protocols list wxProtoInfo *wxURL::ms_protocols = NULL; +// Enforce linking of protocol classes: +USE_PROTOCOL(wxFileProto) + #if wxUSE_SOCKETS +USE_PROTOCOL(wxHTTP) +USE_PROTOCOL(wxFTP) + wxHTTP *wxURL::ms_proxyDefault = NULL; bool wxURL::ms_useDefaultProxy = FALSE; #endif @@ -57,7 +65,7 @@ wxURL::wxURL(const wxString& url) #if wxUSE_SOCKETS if ( ms_useDefaultProxy && !ms_proxyDefault ) { - SetDefaultProxy(getenv("HTTP_PROXY")); + SetDefaultProxy( wxGetenv(wxT("HTTP_PROXY")) ); if ( !ms_proxyDefault ) { @@ -379,7 +387,7 @@ void wxURL::SetProxy(const wxString& url_proxy) return; hostname = tmp_str(0, pos); - port = tmp_str(pos, tmp_str.Length()-pos); + port = tmp_str(pos+1, tmp_str.Length()-pos); addr.Hostname(hostname); addr.Service(port); @@ -456,12 +464,16 @@ wxString wxURL::ConvertFromURI(const wxString& uri) i++; if (uri[i] >= wxT('A') && uri[i] <= wxT('F')) code = (uri[i] - wxT('A') + 10) * 16; + else if (uri[i] >= wxT('a') && uri[i] <= wxT('f')) + code = (uri[i] - wxT('a') + 10) * 16; else code = (uri[i] - wxT('0')) * 16; i++; if (uri[i] >= wxT('A') && uri[i] <= wxT('F')) code += (uri[i] - wxT('A')) + 10; + else if (uri[i] >= wxT('a') && uri[i] <= wxT('f')) + code += (uri[i] - wxT('a')) + 10; else code += (uri[i] - wxT('0')); @@ -515,3 +527,6 @@ void wxURLModule::OnExit() } #endif // wxUSE_SOCKETS + +#endif // wxUSE_URL +