From 994e6e5e95196b0e36c680b1fd496f12d71739c9 Mon Sep 17 00:00:00 2001 From: Jakob Haufe Date: Sun, 13 Mar 2016 22:53:39 +0100 Subject: [PATCH] Imported Upstream version 2.5.2 --- CHANGES | 6 ++++++ locale/pt.ts | 18 +++++++++--------- locale/uk_UA.ts | 26 +++++++++++++------------- minitube.pro | 2 +- src/video.cpp | 29 ++++++++++++++++++++--------- 5 files changed, 49 insertions(+), 32 deletions(-) diff --git a/CHANGES b/CHANGES index 1b5a982..52d3333 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,9 @@ +2.5.2 +- Fixed VEVO videos + +2.5.1 +- Fixed VEVO videos + 2.5 - Upgraded to Qt 5 - HiDPI (aka Retina Display) support diff --git a/locale/pt.ts b/locale/pt.ts index ed538f8..b3e8dd1 100644 --- a/locale/pt.ts +++ b/locale/pt.ts @@ -241,7 +241,7 @@ Just now - + Agora mesmo @@ -405,22 +405,22 @@ The executable file has been tempered with, maybe by a virus. - + O arquivo executável foi temperada com, talvez por um vírus. %1 will not run. Try installing again. - + %1 não será executado. Tente instalar novamente. Quit - + Sair Reinstall - + Reinstalar @@ -738,7 +738,7 @@ &Adjust Window Size - + &Ajuste o tamanho da janela @@ -854,7 +854,7 @@ &Loading... - + &Carregando... @@ -1059,12 +1059,12 @@ Unsubscribed from %1 - + Não subscrito de %1 Subscribed to %1 - + Subscrito %1 diff --git a/locale/uk_UA.ts b/locale/uk_UA.ts index 56433ec..85f04d7 100644 --- a/locale/uk_UA.ts +++ b/locale/uk_UA.ts @@ -242,7 +242,7 @@ Just now - + Тільки зараз @@ -411,17 +411,17 @@ %1 will not run. Try installing again. - + %1 не буде працювати. Спробуйте встановити заново Quit - + Вийти Reinstall - + Перевстановити @@ -739,12 +739,12 @@ &Adjust Window Size - + &Змінити розмір вікна &Stop After This Video - Зу&пинити після цього видиво + &Зупинити після цього відео @@ -764,12 +764,12 @@ &Related Videos - Схо&жі видива + &Схожі відео Watch videos related to the current one - Дивитися видива, пов’язані з поточним + Дивитися відео, пов’язані з поточним @@ -804,7 +804,7 @@ &Video - &Видиво + &Відео @@ -855,7 +855,7 @@ &Loading... - + &Завантаження... @@ -910,7 +910,7 @@ Copy the Video Stream &URL - Копіювати посилання на ви&диво потік + Копіювати посилання на ві&део-потік @@ -1060,12 +1060,12 @@ Unsubscribed from %1 - + Підписка на %1 анульована Subscribed to %1 - + Підписка на %1 оформлена diff --git a/minitube.pro b/minitube.pro index e218ab8..42d8808 100644 --- a/minitube.pro +++ b/minitube.pro @@ -1,6 +1,6 @@ CONFIG += release TEMPLATE = app -VERSION = 2.5.1 +VERSION = 2.5.2 DEFINES += APP_VERSION="$$VERSION" APP_NAME = Minitube diff --git a/src/video.cpp b/src/video.cpp index 5a1dbd0..a5cade0 100644 --- a/src/video.cpp +++ b/src/video.cpp @@ -356,7 +356,7 @@ void Video::parseJsPlayer(const QByteArray &bytes) { } else { sigFuncName = funcNameRe.cap(1); captureFunction(sigFuncName, js); - // qWarning() << sigFunctions; + // qWarning() << sigFunctions << sigObjects; } #ifdef APP_DASH @@ -404,16 +404,27 @@ void Video::parseDashManifest(const QByteArray &bytes) { } void Video::captureFunction(const QString &name, const QString &js) { - QRegExp funcRe("function\\s+" + QRegExp::escape(name) + "\\s*\\([" + jsNameChars + ",\\s]*\\)\\s*\\{[^\\}]+\\}"); - if (funcRe.indexIn(js) == -1) { + const QString argsAndBody = "\\s*\\([" + jsNameChars + ",\\s]*\\)\\s*\\{[^\\}]+\\}"; + QString func; + QRegExp funcRe("function\\s+" + QRegExp::escape(name) + argsAndBody); + if (funcRe.indexIn(js) != -1) { + func = funcRe.cap(0); + } else { // try var foo = function(bar) { }; - funcRe = QRegExp("var\\s+" + QRegExp::escape(name) + "\\s*=\\s*function\\s*\\([" + jsNameChars + ",\\s]*\\)\\s*\\{[^\\}]+\\}"); - if (funcRe.indexIn(js) == -1) { - qWarning() << "Cannot capture function" << name; - return; + funcRe = QRegExp("var\\s+" + QRegExp::escape(name) + "\\s*=\\s*function" + argsAndBody); + if (funcRe.indexIn(js) != -1) { + func = funcRe.cap(0); + } else { + // try ,gr= function(bar) { }; + funcRe = QRegExp("[,\\s;}\\.\\)](" + QRegExp::escape(name) + "\\s*=\\s*function" + argsAndBody + ")"); + if (funcRe.indexIn(js) != -1) { + func = funcRe.cap(1); + } else { + qWarning() << "Cannot capture function" << name; + return; + } } } - QString func = funcRe.cap(0); sigFunctions.insert(name, func); // capture inner functions @@ -438,7 +449,7 @@ void Video::captureFunction(const QString &name, const QString &js) { } void Video::captureObject(const QString &name, const QString &js) { - QRegExp re("var\\s+" + QRegExp::escape(name) + "\\s*=\\s*\\{.+\\}\\s*;"); + QRegExp re("var\\s+" + QRegExp::escape(name) + "\\s*=\\s*\\{.*\\}\\s*;"); re.setMinimal(true); if (re.indexIn(js) == -1) { qWarning() << "Cannot capture object" << name; -- 2.39.2