From 4f4a2b263a1273d856facc990935e5f1fca00c7b Mon Sep 17 00:00:00 2001 From: Nicolas Pope <nicolas.pope@utu.fi> Date: Sat, 7 May 2022 09:36:58 +0100 Subject: [PATCH] Fix some cppcheck warnings --- CMakeLists.txt | 2 +- src/peer.hpp | 2 +- src/protocol/tcp.cpp | 2 +- src/protocol/tcp.hpp | 2 +- src/protocol/websocket.cpp | 1 - src/protocol/websocket.hpp | 2 +- src/socket/socket_linux.cpp | 2 +- src/socket/socket_windows.cpp | 4 ++++ src/universe.cpp | 6 +++--- 9 files changed, 13 insertions(+), 10 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2b0f6b9..1b50451 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -90,7 +90,7 @@ if (USE_CPPCHECK) find_program(CPPCHECK_FOUND cppcheck) if (CPPCHECK_FOUND) message(STATUS "Found cppcheck: will perform source checks") - set(CMAKE_CXX_CPPCHECK "cppcheck" "-D__align__(A)" "--enable=warning,performance,style" "--inline-suppr" "--std=c++14" "--suppress=*:*catch.hpp" "--suppress=*:*elas*" "--suppress=*:*json.hpp" "--quiet") + set(CMAKE_CXX_CPPCHECK "cppcheck" "-D__align__(A)" "--enable=warning,performance,style" "--inline-suppr" "--std=c++17" "--suppress=*:*loguru.*" "--suppress=*:*catch.hpp" "--suppress=*:*elas*" "--suppress=*:*json.hpp" "--quiet") endif() endif() diff --git a/src/peer.hpp b/src/peer.hpp index e26c1de..ab8e2c6 100644 --- a/src/peer.hpp +++ b/src/peer.hpp @@ -49,7 +49,7 @@ struct virtual_caller { template <typename T> struct caller : virtual_caller { explicit caller(std::function<void(const T&)> &f) : f_(f) {}; - void operator()(msgpack::object &o) { T r = o.as<T>(); f_(r); }; + void operator()(msgpack::object &o) override { T r = o.as<T>(); f_(r); }; std::function<void(const T&)> f_; }; diff --git a/src/protocol/tcp.cpp b/src/protocol/tcp.cpp index f8ffdee..e912bf7 100644 --- a/src/protocol/tcp.cpp +++ b/src/protocol/tcp.cpp @@ -21,7 +21,7 @@ Connection_TCP::Connection_TCP() : SocketConnection(create_tcp_socket(), {}) { } -bool Connection_TCP::connect(std::string hostname, int port, int timeout) { +bool Connection_TCP::connect(const std::string &hostname, int port, int timeout) { if (!resolve_inet_address(hostname, port, addr_)) { throw FTL_Error("could not resolve hostname: " + hostname); } diff --git a/src/protocol/tcp.hpp b/src/protocol/tcp.hpp index 694862e..5e0fc56 100644 --- a/src/protocol/tcp.hpp +++ b/src/protocol/tcp.hpp @@ -38,7 +38,7 @@ public: Connection_TCP(); ftl::URI::scheme_t scheme() const override { return ftl::URI::SCHEME_TCP; } - bool connect(std::string hostname, int port, int timeout=0); + bool connect(const std::string &hostname, int port, int timeout=0); void connect(const ftl::URI& uri, int timeout=0) override; }; diff --git a/src/protocol/websocket.cpp b/src/protocol/websocket.cpp index 9955e80..282c471 100644 --- a/src/protocol/websocket.cpp +++ b/src/protocol/websocket.cpp @@ -268,7 +268,6 @@ bool WebSocketBase<SocketT>::prepare_next(char* data, size_t data_len, size_t& o wsheader_type header; if (!ws_parse(data, data_len, header)) { throw FTL_Error("corrupted WS header"); - return false; } if ((header.N + header.header_size) > data_len) { diff --git a/src/protocol/websocket.hpp b/src/protocol/websocket.hpp index 0ea13b7..8e73be1 100644 --- a/src/protocol/websocket.hpp +++ b/src/protocol/websocket.hpp @@ -17,7 +17,7 @@ class WebSocketBase : public SocketT { public: WebSocketBase(); ftl::URI::scheme_t scheme() const override; - void connect(const ftl::URI& uri, int timeout=0); + void connect(const ftl::URI& uri, int timeout=0) override; bool prepare_next(char* buffer, size_t len, size_t &offset) override; diff --git a/src/socket/socket_linux.cpp b/src/socket/socket_linux.cpp index d51824a..f8ae4f3 100644 --- a/src/socket/socket_linux.cpp +++ b/src/socket/socket_linux.cpp @@ -39,7 +39,7 @@ bool ftl::net::internal::resolve_inet_address(const std::string &hostname, int p // Socket Socket::Socket(int domain, int type, int protocol) : - status_(STATUS::UNCONNECTED), fd_(-1), family_(domain) { + status_(STATUS::UNCONNECTED), fd_(-1), family_(domain), err_(0) { int retval = socket(domain, type, protocol); diff --git a/src/socket/socket_windows.cpp b/src/socket/socket_windows.cpp index 39bfb1f..f113b05 100644 --- a/src/socket/socket_windows.cpp +++ b/src/socket/socket_windows.cpp @@ -107,6 +107,7 @@ int Socket::listen(int backlog) { ::closesocket(fd_); status_ = STATUS::CLOSED; fd_ = INVALID_SOCKET; + return retval; } } @@ -185,6 +186,9 @@ std::string Socket::get_error_string() { wchar_t* s = NULL; FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, err_, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPWSTR)&s, 0, NULL); + if (!s) { + return "Unknown"; + } std::wstring ws(s); std::string msg(ws.begin(), ws.end()); LocalFree(s); diff --git a/src/universe.cpp b/src/universe.cpp index bdaac2d..f21d47d 100644 --- a/src/universe.cpp +++ b/src/universe.cpp @@ -320,9 +320,9 @@ void Universe::_cleanupPeers() { auto ix = peer_ids_.find(p->id()); if (ix != peer_ids_.end()) peer_ids_.erase(ix); - for (auto i=peer_by_uri_.begin(); i != peer_by_uri_.end(); ++i) { - if (peers_[i->second] == p) { - peer_by_uri_.erase(i); + for (auto j=peer_by_uri_.begin(); j != peer_by_uri_.end(); ++j) { + if (peers_[j->second] == p) { + peer_by_uri_.erase(j); break; } } -- GitLab