diff --git a/src/base/net/stratum/AutoClient.cpp b/src/base/net/stratum/AutoClient.cpp index 4a82b2bf..f6bd36c7 100644 --- a/src/base/net/stratum/AutoClient.cpp +++ b/src/base/net/stratum/AutoClient.cpp @@ -72,7 +72,7 @@ bool xmrig::AutoClient::parseLogin(const rapidjson::Value &result, int *code) int64_t xmrig::AutoClient::submit(const JobResult &result) { - if (m_mode == DEFAULT_MODE) { + if (result.algorithm.family() != Algorithm::KAWPOW) { return Client::submit(result); } @@ -82,9 +82,11 @@ int64_t xmrig::AutoClient::submit(const JobResult &result) void xmrig::AutoClient::parseNotification(const char *method, const rapidjson::Value ¶ms, const rapidjson::Value &error) { - if (m_mode == DEFAULT_MODE) { + if (strcmp(method, "job") == 0) { + m_mode = DEFAULT_MODE; return Client::parseNotification(method, params, error); } + m_mode = ETH_MODE; return EthStratumClient::parseNotification(method, params, error); }