diff --git a/include/siadrive_api/uploadmanager.h b/include/siadrive_api/uploadmanager.h index 14a6b57..0a6d2f5 100644 --- a/include/siadrive_api/uploadmanager.h +++ b/include/siadrive_api/uploadmanager.h @@ -260,7 +260,9 @@ private: public: virtual SString GetSingleLineMessage() const override { - return L"FailedToRemoveFileFromSia|SP|" + _siaPath + L"|FP|" + _filePath; + return L"FailedToRemoveFileFromSia|SP|" + _siaPath + + L"|FP|" + _filePath + + L"|CERR|" + _curlError.GetReason(); } virtual std::shared_ptr Clone() const override diff --git a/src/siadrive_api/siacurl.cpp b/src/siadrive_api/siacurl.cpp index 505dba9..065975a 100644 --- a/src/siadrive_api/siacurl.cpp +++ b/src/siadrive_api/siacurl.cpp @@ -159,7 +159,7 @@ SiaCurlError CSiaCurl::ProcessResponse(const int& res, const int& httpCode, cons } else if (httpCode) { - ret = { SiaCurlErrorCode::HttpError, GetApiErrorMessage(result) }; + ret = { SiaCurlErrorCode::HttpError, SString::FromInt32(httpCode) + ":" + (result.length() ? GetApiErrorMessage(json::parse(result.c_str())) : "") }; } else { diff --git a/src/siadrive_api/uploadmanager.cpp b/src/siadrive_api/uploadmanager.cpp index c13d1b7..dfa26e0 100644 --- a/src/siadrive_api/uploadmanager.cpp +++ b/src/siadrive_api/uploadmanager.cpp @@ -125,7 +125,7 @@ bool CUploadManager::HandleFileRemove(const CSiaCurl& siaCurl, const SString& si json response; SiaCurlError cerror = siaCurl.Post(SString(L"/renter/delete/") + siaPath, {}, response); - if (ApiSuccess(cerror)) + if (ApiSuccess(cerror) || cerror.GetReason().Contains("no file known")) { SQLite::Statement del(_uploadDatabase, DELETE_UPLOAD); del.bind("@sia_path", SString::ToUtf8(siaPath).c_str());