diff --git a/include/nana/filesystem/filesystem.hpp b/include/nana/filesystem/filesystem.hpp index c4815c94..83668943 100644 --- a/include/nana/filesystem/filesystem.hpp +++ b/include/nana/filesystem/filesystem.hpp @@ -1,7 +1,7 @@ /** * A ISO C++ filesystem Implementation * Nana C++ Library(http://www.nanapro.org) - * Copyright(C) 2003-2018 Jinhao(cnjinhao@hotmail.com) + * Copyright(C) 2003-2019 Jinhao(cnjinhao@hotmail.com) * * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or copy at @@ -434,8 +434,7 @@ namespace nana { namespace experimental { namespace filesystem { return s.type() == file_type::directory ;} bool is_directory(const path& p); - - //bool is_directory(const path& p, error_code& ec) noexcept; + bool is_directory(const path& p, std::error_code& ec) noexcept; inline bool is_regular_file(file_status s) noexcept { diff --git a/source/filesystem/filesystem.cpp b/source/filesystem/filesystem.cpp index a61e2f66..4ec85bf5 100644 --- a/source/filesystem/filesystem.cpp +++ b/source/filesystem/filesystem.cpp @@ -1,6 +1,6 @@ /* * A ISO C++ FileSystem Implementation - * Copyright(C) 2003-2018 Jinhao(cnjinhao@hotmail.com) + * Copyright(C) 2003-2019 Jinhao(cnjinhao@hotmail.com) * * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or copy at @@ -995,6 +995,11 @@ namespace nana { namespace experimental { namespace filesystem return (status(p).type() == file_type::directory); } + bool is_directory(const path& p, std::error_code& ec) noexcept + { + return (status(p, ec).type() == file_type::directory); + } + std::uintmax_t file_size(const path& p) { #if defined(NANA_WINDOWS) diff --git a/source/gui/detail/color_schemes.cpp b/source/gui/detail/color_schemes.cpp index c0555b6f..3bfea8db 100644 --- a/source/gui/detail/color_schemes.cpp +++ b/source/gui/detail/color_schemes.cpp @@ -1,7 +1,7 @@ /* * Color Schemes * Nana C++ Library(http://www.nanapro.org) -* Copyright(C) 2003-2018 Jinhao(cnjinhao@hotmail.com) +* Copyright(C) 2003-2019 Jinhao(cnjinhao@hotmail.com) * * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or copy at @@ -80,14 +80,14 @@ namespace nana color color_proxy::get(const color& default_color) const { - if (color_->invisible()) - return default_color; - return *color_; + if (color_ && !color_->invisible()) + return *color_; + return default_color; } color_proxy::operator color() const { - return *color_; + return (color_ ? *color_ : color{}); } //end class color_proxy