From bf5f5091ef6daeaf7067f4fc8973eb068ddc52fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Fri, 9 Aug 2013 00:26:35 +0200 Subject: Various task related improvements. * Errors are reported back to task users via Failure signals. * Lwjgl doesn't download on each legacy instance start anymore. * Tasks were unified when it comes to success/failure. * Task dialogs don't get spawned after short tasks finish anymore. --- backend/tasks/LoginTask.cpp | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'backend/tasks/LoginTask.cpp') diff --git a/backend/tasks/LoginTask.cpp b/backend/tasks/LoginTask.cpp index 7a1d5262..48202044 100644 --- a/backend/tasks/LoginTask.cpp +++ b/backend/tasks/LoginTask.cpp @@ -71,44 +71,41 @@ void LoginTask::processNetReply(QNetworkReply *reply) QString username = strings[2]; QString sessionID = strings[3]; - LoginResponse response{username, sessionID, latestVersion}; - emit loginComplete(response); + result = {username, sessionID, latestVersion}; + emitSucceeded(); } else { - emit loginFailed("Failed to parse Minecraft version string."); + emitFailed("Failed to parse Minecraft version string."); } } else { if (responseStr.toLower() == "bad login") - emit loginFailed("Invalid username or password."); + emitFailed("Invalid username or password."); else if (responseStr.toLower() == "old version") - emit loginFailed("Launcher outdated, please update."); + emitFailed("Launcher outdated, please update."); else - emit loginFailed("Login failed: " + responseStr); + emitFailed("Login failed: " + responseStr); } } else if (responseCode == 503) { - emit loginFailed("The login servers are currently unavailable. " - "Check http://help.mojang.com/ for more info."); + emitFailed("The login servers are currently unavailable. Check http://help.mojang.com/ for more info."); } else { - emit loginFailed(QString("Login failed: Unknown HTTP error %1 occurred."). - arg(QString::number(responseCode))); + emitFailed(QString("Login failed: Unknown HTTP error %1 occurred.").arg(QString::number(responseCode))); } break; } case QNetworkReply::OperationCanceledError: - emit loginFailed("Login canceled."); + emitFailed("Login canceled."); break; default: - emit loginFailed("Login failed: " + reply->errorString()); + emitFailed("Login failed: " + reply->errorString()); break; } - emitEnded(); } -- cgit v1.2.3