From 17aba1eeb5668b585e37c37941fcb5cca603a77c Mon Sep 17 00:00:00 2001 From: Lev Dragunov Date: Wed, 21 Oct 2015 14:04:29 +0300 Subject: [PATCH] PR fixes. --- platform/platform_linux.cpp | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/platform/platform_linux.cpp b/platform/platform_linux.cpp index fd220b2ccc..b9f497616a 100644 --- a/platform/platform_linux.cpp +++ b/platform/platform_linux.cpp @@ -1,8 +1,12 @@ #include "platform/platform.hpp" #include "base/logging.hpp" +#include "base/scope_guard.hpp" + #include "coding/file_reader.hpp" +#include "std/bind.hpp" + #include #include @@ -15,8 +19,8 @@ namespace { - // Web service ip to check internet connection. Now it's a mail.ru ip. - char constexpr kSomeWorkingWebServer[] = "217.69.139.202"; +// Web service ip to check internet connection. Now it's a mail.ru ip. +char constexpr kSomeWorkingWebServer[] = "217.69.139.202"; } // namespace /// @return directory where binary resides, including slash at the end @@ -100,7 +104,7 @@ Platform::Platform() } string Platform::UniqueClientId() const -{ +{ string machineFile = "/var/lib/dbus/machine-id"; if (IsFileExistsByFullPath("/etc/machine-id")) machineFile = "/etc/machine-id"; @@ -113,7 +117,6 @@ string Platform::UniqueClientId() const } else return "n0dbus0n0lsb00000000000000000000"; - } void Platform::RunOnGuiThread(TFunctor const & fn) @@ -131,21 +134,18 @@ void Platform::RunAsync(TFunctor const & fn, Priority p) Platform::EConnectionType Platform::ConnectionStatus() { int socketFd = socket(AF_INET, SOCK_STREAM, 0); - struct sockaddr_in addr; - if(socketFd < 0) + MY_SCOPE_GUARD(closeSocket, bind(&close, socketFd)); + if (socketFd < 0) return EConnectionType::CONNECTION_NONE; - memset(&addr, '0', sizeof(addr)); + struct sockaddr_in addr; + memset(&addr, 0, sizeof(addr)); addr.sin_family = AF_INET; addr.sin_port = htons(80); inet_pton(AF_INET, kSomeWorkingWebServer, &addr.sin_addr); - if(connect(socketFd, (struct sockaddr *)&addr, sizeof(addr)) < 0) - { - close(socketFd); + if (connect(socketFd, reinterpret_cast(&addr), sizeof(addr)) < 0) return EConnectionType::CONNECTION_NONE; - } - close(socketFd); return EConnectionType::CONNECTION_WIFI; }