use Glib URI utility function to generate a local filename from a URI, rather than hand-crafted code
This commit is contained in:
parent
0479405e2f
commit
17309c41c3
@ -47,6 +47,7 @@
|
||||
#include "pbd/stacktrace.h"
|
||||
|
||||
#include <glibmm/miscutils.h>
|
||||
#include <glibmm/uriutils.h>
|
||||
#include <gtkmm/image.h>
|
||||
#include <gdkmm/color.h>
|
||||
#include <gdkmm/bitmap.h>
|
||||
@ -3173,33 +3174,8 @@ Editor::convert_drop_to_paths (
|
||||
}
|
||||
|
||||
for (vector<string>::iterator i = uris.begin(); i != uris.end(); ++i) {
|
||||
|
||||
if ((*i).substr (0,7) == "file://") {
|
||||
|
||||
string const p = PBD::url_decode (*i);
|
||||
|
||||
// scan forward past three slashes
|
||||
|
||||
string::size_type slashcnt = 0;
|
||||
string::size_type n = 0;
|
||||
string::const_iterator x = p.begin();
|
||||
|
||||
while (slashcnt < 3 && x != p.end()) {
|
||||
if ((*x) == '/') {
|
||||
slashcnt++;
|
||||
} else if (slashcnt == 3) {
|
||||
break;
|
||||
}
|
||||
++n;
|
||||
++x;
|
||||
}
|
||||
|
||||
if (slashcnt != 3 || x == p.end()) {
|
||||
error << _("malformed URL passed to drag-n-drop code") << endmsg;
|
||||
continue;
|
||||
}
|
||||
|
||||
paths.push_back (p.substr (n - 1));
|
||||
paths.push_back (Glib::filename_from_uri (*i));
|
||||
}
|
||||
}
|
||||
|
||||
@ -3208,7 +3184,6 @@ Editor::convert_drop_to_paths (
|
||||
|
||||
void
|
||||
Editor::new_tempo_section ()
|
||||
|
||||
{
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user