summaryrefslogtreecommitdiffstats
path: root/stream/stream_dvd.c
diff options
context:
space:
mode:
Diffstat (limited to 'stream/stream_dvd.c')
-rw-r--r--stream/stream_dvd.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/stream/stream_dvd.c b/stream/stream_dvd.c
index 624ea4c672..c9473c4b67 100644
--- a/stream/stream_dvd.c
+++ b/stream/stream_dvd.c
@@ -1050,6 +1050,10 @@ static int ifo_stream_open (stream_t *stream, int mode)
stream->priv = priv;
*priv = stream_priv_dflts;
+ // "file://" prefix -> decode URL-style escapes
+ if (strlen(stream->url) > strlen(stream->path))
+ mp_url_unescape_inplace(stream->path);
+
int len = strlen(stream->path);
if (len < 4 || strcasecmp (stream->path + len - 4, ".ifo"))
return STREAM_UNSUPPORTED;