+ // sometimes the syntax is "file:filename", sometimes it's
+ // URL-like: "file://filename" - deal with both
+ if ( filename[lenPrefix] == _T('/') &&
+ filename[lenPrefix + 1] == _T('/') )
+ {
+ // skip the slashes
+ lenPrefix += 2;
+ }
+
+ // It would probably be nicer to use a GTK or Glib
+ // function to unescape the 8-bit strings pointed to
+ // by buf, but this does the same in wx code.
+ wxString filename_unicode = wxURI::Unescape(filename.c_str() + lenPrefix);
+ wxCharBuffer filename_8bit = filename_unicode.mb_str(wxConvISO8859_1);
+ AddFile(wxString(filename_8bit, *wxConvFileName));
+ filename.Empty();
+ }
+ else if ( !filename.empty() )
+ {
+ wxLogDebug(_T("Unsupported URI \"%s\" in wxFileDataObject"),
+ filename.c_str());