Sha256: 17d0da438cb577370a748d24650c1019a4602b893f11e991f566f4869671325b

Contents?: true

Size: 948 Bytes

Versions: 16

Compression:

Stored size: 948 Bytes

Contents

//
//  Copyright (c) 2012 Artyom Beilis (Tonkikh)
//
//  Distributed under the Boost Software License, Version 1.0. (See
//  accompanying file LICENSE_1_0.txt or copy at
//  http://www.boost.org/LICENSE_1_0.txt)
//
#ifndef BOOST_NOWIDE_CSTDLIB_HPP
#define BOOST_NOWIDE_CSTDLIB_HPP

#include <stdlib.h>
#include <errno.h>
#include <boost/nowide/stackstring.hpp>
namespace boost {
namespace nowide {

#if !defined(BOOST_WINDOWS) && !defined(BOOST_NOWIDE_DOXYGEN)

using ::system;

#else // Windows

///
/// Same as std::system but cmd is UTF-8.
///
/// If the input is not valid UTF-8, -1 returned and errno set to EINVAL
///
inline int system(char const *cmd)
{
    if(!cmd)
        return _wsystem(0);
    wstackstring wcmd;
    if(!wcmd.convert(cmd)) {
        errno = EINVAL;
        return -1;
    }
    return _wsystem(wcmd.c_str());
}

#endif
} // nowide
} // namespace boost

#endif
///
// vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4

Version data entries

16 entries across 16 versions & 2 rubygems

Version Path
facter-3.12.2.cfacter.20181217 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.12.1.cfacter.20181031 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.11.6.cfacter.20181031 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.12.1.cfacter.20181023 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.11.5.cfacter.20181022 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.12.0.cfacter.20181004 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.12.0.cfacter.20181001 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.12.0.cfacter.20180918 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.11.4.cfacter.20180821 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.11.3.cfacter.20180716 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.11.2.cfacter.20180612 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.9.6.cfacter.20180612 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.11.2.cfacter.20180606 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.9.6.cfacter.20180606 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
facter-3.11.0.cfacter.20180319 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp
cfacter-3.11.0.rc.20180314 ext/facter/leatherman/vendor/nowide/include/boost/nowide/system.hpp