From e3bee23fe4e0dc15ea2564b684572572f2393a15 Mon Sep 17 00:00:00 2001 From: Ricardo Constantino Date: Thu, 11 Jan 2018 01:02:16 +0000 Subject: [PATCH] stream_bluray: support detecting UHD BD directories Close #5325 --- stream/stream_bluray.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/stream/stream_bluray.c b/stream/stream_bluray.c index 25dd1d4f8f..4dad779739 100644 --- a/stream/stream_bluray.c +++ b/stream/stream_bluray.c @@ -529,19 +529,16 @@ static bool check_bdmv(const char *path) if (!temp) return false; - bool r = false; - - const char *sig1 = "MOBJ020"; - const char *sig2 = "MOBJ0100"; - char data[50]; - - if (fread(data, 50, 1, temp) == 1) { - r = memcmp(data, sig1, strlen(sig1)) == 0 || - memcmp(data, sig2, strlen(sig2)) == 0; - } + char data[50] = {0}; + fread(data, 50, 1, temp); fclose(temp); - return r; + + bstr bdata = {data, 50}; + + return bstr_startswith0(bdata, "MOBJ0100") || // AVCHD + bstr_startswith0(bdata, "MOBJ0200") || // Blu-ray + bstr_startswith0(bdata, "MOBJ0300"); // UHD BD } // Destructively remove the current trailing path component.