forked from boostorg/assert
Use snprintf when available to avoid security warnings (refs #25)
This commit is contained in:
@ -73,6 +73,12 @@ public:
|
|||||||
#if defined(BOOST_MSVC)
|
#if defined(BOOST_MSVC)
|
||||||
# pragma warning( push )
|
# pragma warning( push )
|
||||||
# pragma warning( disable: 4996 )
|
# pragma warning( disable: 4996 )
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if ( defined(_MSC_VER) && _MSC_VER < 1900 ) || ( defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR) )
|
||||||
|
# define BOOST_ASSERT_SNPRINTF(buffer, format, arg) std::sprintf(buffer, format, arg)
|
||||||
|
#else
|
||||||
|
# define BOOST_ASSERT_SNPRINTF(buffer, format, arg) std::snprintf(buffer, sizeof(buffer)/sizeof(buffer[0]), format, arg)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
std::string to_string() const
|
std::string to_string() const
|
||||||
@ -88,14 +94,14 @@ public:
|
|||||||
|
|
||||||
char buffer[ 16 ];
|
char buffer[ 16 ];
|
||||||
|
|
||||||
std::sprintf( buffer, ":%lu", ln );
|
BOOST_ASSERT_SNPRINTF( buffer, ":%lu", ln );
|
||||||
r += buffer;
|
r += buffer;
|
||||||
|
|
||||||
unsigned long co = column();
|
unsigned long co = column();
|
||||||
|
|
||||||
if( co )
|
if( co )
|
||||||
{
|
{
|
||||||
std::sprintf( buffer, ":%lu", co );
|
BOOST_ASSERT_SNPRINTF( buffer, ":%lu", co );
|
||||||
r += buffer;
|
r += buffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -111,6 +117,8 @@ public:
|
|||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#undef BOOST_ASSERT_SNPRINTF
|
||||||
|
|
||||||
#if defined(BOOST_MSVC)
|
#if defined(BOOST_MSVC)
|
||||||
# pragma warning( pop )
|
# pragma warning( pop )
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user