aboutsummaryrefslogtreecommitdiffstats
path: root/src/input/Open.cxx
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/input/Open.cxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/input/Open.cxx b/src/input/Open.cxx
index 6e89569d6..18572d6b2 100644
--- a/src/input/Open.cxx
+++ b/src/input/Open.cxx
@@ -21,7 +21,10 @@
#include "InputStream.hxx"
#include "Registry.hxx"
#include "InputPlugin.hxx"
+#include "LocalOpen.hxx"
#include "plugins/RewindInputPlugin.hxx"
+#include "fs/Traits.hxx"
+#include "fs/Path.hxx"
#include "util/Error.hxx"
#include "util/Domain.hxx"
@@ -32,6 +35,11 @@ InputStream::Open(const char *url,
Mutex &mutex, Cond &cond,
Error &error)
{
+ if (PathTraitsFS::IsAbsolute(url))
+ /* TODO: the parameter is UTF-8, not filesystem charset */
+ return OpenLocalInputStream(Path::FromFS(url),
+ mutex, cond, error);
+
input_plugins_for_each_enabled(plugin) {
InputStream *is;