- wxString new_uri;
-
- size_t i = 0;
- while (i < uri.Len())
- {
- int code;
- if (uri[i] == wxT('%'))
- {
- 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'));
-
- i++;
- new_uri += (wxChar)code;
- continue;
- }
- new_uri += uri[i];
- i++;
- }
- return new_uri;
-}
-
-// ----------------------------------------------------------------------
-// A module which deletes the default proxy if we created it
-// ----------------------------------------------------------------------
-
-#if wxUSE_SOCKETS
-
-class wxURLModule : public wxModule
-{
-public:
- virtual bool OnInit();
- virtual void OnExit();
-
-private:
- DECLARE_DYNAMIC_CLASS(wxURLModule)
-};
-
-IMPLEMENT_DYNAMIC_CLASS(wxURLModule, wxModule)
-
-bool wxURLModule::OnInit()
-{
- // env var HTTP_PROXY contains the address of the default proxy to use if
- // set, but don't try to create this proxy right now because it will slow
- // down the program startup (especially if there is no DNS server
- // available, in which case it may take up to 1 minute)
-
- if ( getenv("HTTP_PROXY") )
- {
- wxURL::ms_useDefaultProxy = TRUE;
- }
-
- return TRUE;