X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Fvideo.cpp;h=c4c3575955c077264ca9ac99e0679c0684095ba0;hb=0817201dd8aa205f3532c3d850e63786b728e649;hp=1ac9871453133da8ba23a27c46eea259de5ddd07;hpb=b1aa2329390ae3e7eed84ee210be5d1a76d30a8b;p=minitube diff --git a/src/video.cpp b/src/video.cpp index 1ac9871..c4c3575 100644 --- a/src/video.cpp +++ b/src/video.cpp @@ -39,7 +39,7 @@ void Video::scrapeStreamUrl() { QRegExp re("^http://www\\.youtube\\.com/watch\\?v=([0-9A-Za-z_-]+)$"); bool match = re.exactMatch(webpage.toString()); if (!match || re.numCaptures() < 1) { - emit errorStreamUrl(); + emit errorStreamUrl(QString("Cannot get video id for %1").arg(webpage.toString())); return; } videoId = re.cap(1); @@ -52,6 +52,7 @@ void Video::scrapeStreamUrl() { QObject *reply = The::http()->get(normalizedUrl); connect(reply, SIGNAL(data(QByteArray)), SLOT(gotVideoInfo(QByteArray))); + connect(reply, SIGNAL(error(QNetworkReply*)), SLOT(errorVideoInfo(QNetworkReply*))); // see you in gotVideoInfo... } @@ -76,8 +77,9 @@ void Video::gotVideoInfo(QByteArray data) { errorMessage = errorMessage.left(indexOfTag); } if (mainWindow) mainWindow->statusBar()->showMessage(errorMessage); - } - emit errorStreamUrl(); + emit errorStreamUrl(errorMessage); + } else + emit errorStreamUrl("Error parsing video info"); return; } @@ -95,3 +97,7 @@ void Video::gotVideoInfo(QByteArray data) { emit gotStreamUrl(videoUrl); } + +void Video::errorVideoInfo(QNetworkReply *reply) { + emit errorStreamUrl(tr("Network error: %1 for %2").arg(reply->errorString(), reply->url().toString())); +}