diff --git a/src/core/download_list.cc b/src/core/download_list.cc index 76dbdb65..d208fdf6 100644 --- a/src/core/download_list.cc +++ b/src/core/download_list.cc @@ -492,7 +492,11 @@ DownloadList::hash_done(Download* download) { if (!download->is_hash_checked()) { download->set_hash_failed(true); - + + auto& msg = download->download()->hash_error_message(); + if (!msg.empty()) + download->set_message(msg); + DL_TRIGGER_EVENT(download, "event.download.hash_failed"); return; } diff --git a/src/core/manager.cc b/src/core/manager.cc index 66d5dddb..ae853a02 100644 --- a/src/core/manager.cc +++ b/src/core/manager.cc @@ -513,6 +513,7 @@ Manager::receive_hashing_changed() { } else { (*itr)->set_hash_failed(true); + (*itr)->set_message("Hashing failed: " + std::string(e.what())); lt_log_print(torrent::LOG_TORRENT_ERROR, "Hashing failed: %s", e.what()); } }