+wxString wxURL::ConvertFromURI(const wxString& uri)
+{
+ wxString new_uri;
+
+ size_t i = 0;
+ while (i<uri.Len()) {
+ int code;
+ if (uri[i] == T('%')) {
+ i++;
+ if (uri[i] >= T('A') && uri[i] <= T('F'))
+ code = (uri[i] - T('A') + 10) * 16;
+ else
+ code = (uri[i] - T('0')) * 16;
+ i++;
+ if (uri[i] >= T('A') && uri[i] <= T('F'))
+ code += (uri[i] - T('A')) + 10;
+ else
+ code += (uri[i] - T('0'));
+ i++;
+ new_uri += (wxChar)code;
+ continue;
+ }
+ new_uri += uri[i];
+ i++;
+ }
+ return new_uri;
+}