diff options
Diffstat (limited to 'stlport/stl/_stdexcept_base.c')
-rw-r--r-- | stlport/stl/_stdexcept_base.c | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/stlport/stl/_stdexcept_base.c b/stlport/stl/_stdexcept_base.c deleted file mode 100644 index d03c1aa..0000000 --- a/stlport/stl/_stdexcept_base.c +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright (c) 1996,1997 - * Silicon Graphics Computer Systems, Inc. - * - * Copyright (c) 1999 - * Boris Fomitchev - * - * This material is provided "as is", with absolutely no warranty expressed - * or implied. Any use is at your own risk. - * - * Permission to use or copy this software for any purpose is hereby granted - * without fee, provided the above notices are retained on all copies. - * Permission to modify the code and to distribute modified code is granted, - * provided the above notices are retained, and a notice that the code was - * modified is included with the above copyright notice. - * - */ - -__Named_exception::__Named_exception(const string& __str) { - size_t __size = strlen(_STLP_PRIV __get_c_string(__str)) + 1; - if (__size > _S_bufsize) { - _M_name = __STATIC_CAST(char*, malloc(__size * sizeof(char))); - if (!_M_name) { - __size = _S_bufsize; - _M_name = _M_static_name; - } - else { - *(__REINTERPRET_CAST(size_t*, &_M_static_name[0])) = __size * sizeof(char); - } - } - else { - _M_name = _M_static_name; - } -#if !defined (_STLP_USE_SAFE_STRING_FUNCTIONS) - strncpy(_M_name, _STLP_PRIV __get_c_string(__str), __size - 1); - _M_name[__size - 1] = '\0'; -#else - strncpy_s(_M_name, __size, _STLP_PRIV __get_c_string(__str), __size - 1); -#endif -} - -__Named_exception::__Named_exception(const __Named_exception& __x) { - size_t __size = strlen(__x._M_name) + 1; - if (__size > _S_bufsize) { - _M_name = __STATIC_CAST(char*, malloc(__size * sizeof(char))); - if (!_M_name) { - __size = _S_bufsize; - _M_name = _M_static_name; - } - else { - *(__REINTERPRET_CAST(size_t*, &_M_static_name[0])) = __size * sizeof(char); - } - } - else { - _M_name = _M_static_name; - } -#if !defined (_STLP_USE_SAFE_STRING_FUNCTIONS) - strncpy(_M_name, __x._M_name, __size - 1); - _M_name[__size - 1] = '\0'; -#else - strncpy_s(_M_name, __size, __x._M_name, __size - 1); -#endif -} - -__Named_exception& __Named_exception::operator = (const __Named_exception& __x) { - size_t __size = strlen(__x._M_name) + 1; - size_t __buf_size = _M_name != _M_static_name ? *(__REINTERPRET_CAST(size_t*, &_M_static_name[0])) : __STATIC_CAST(size_t,_S_bufsize); - if (__size > __buf_size) { - // Being here necessarily mean that we need to allocate a buffer: - if (_M_name != _M_static_name) free(_M_name); - _M_name = __STATIC_CAST(char*, malloc(__size * sizeof(char))); - if (!_M_name) { - __size = _S_bufsize; - _M_name = _M_static_name; - } - else { - *(__REINTERPRET_CAST(size_t*, &_M_static_name[0])) = __size * sizeof(char); - } - } -#if !defined (_STLP_USE_SAFE_STRING_FUNCTIONS) - strncpy(_M_name, __x._M_name, __size - 1); - _M_name[__size - 1] = '\0'; -#else - strncpy_s(_M_name, __size, __x._M_name, __size - 1); -#endif - return *this; -} - -__Named_exception::~__Named_exception() _STLP_NOTHROW_INHERENTLY { - if (_M_name != _M_static_name) - free(_M_name); -} - -const char* __Named_exception::what() const _STLP_NOTHROW_INHERENTLY -{ return _M_name; } |