| 144 | } |
| 145 | |
| 146 | void MinecraftUpdate::subtaskFailed(QString error) |
| 147 | { |
| 148 | if(isFinished()) |
| 149 | { |
| 150 | qCritical() << "MinecraftUpdate: Subtask" << sender() << "failed, but work was already done!"; |
| 151 | return; |
| 152 | } |
| 153 | auto senderTask = QObject::sender(); |
| 154 | auto currentTask = m_tasks[m_currentTask].get(); |
| 155 | if(senderTask != currentTask) |
| 156 | { |
| 157 | qDebug() << "MinecraftUpdate: Subtask" << sender() << "failed out of order."; |
| 158 | m_failed_out_of_order = true; |
| 159 | m_fail_reason = error; |
| 160 | return; |
| 161 | } |
| 162 | emitFailed(error); |
| 163 | } |
| 164 | |
| 165 | |
| 166 | bool MinecraftUpdate::abort() |