1 #include "../icedb/defs.h" 2 #include "../icedb/util.h" 3 #include "../icedb/util.hpp" 15 char * dest,
size_t destSz,
16 const char * src,
size_t srcSz)
27 #if ICEDB_USING_SECURE_STRINGS 28 strncpy_s(dest, destSz, src, srcSz);
30 if (srcSz <= destSz) {
31 strncpy(dest, src, srcSz);
34 strncpy(dest, src, destSz);
38 for (
size_t i = 0; i < destSz; ++i)
if (dest[i] ==
'\0')
return i;
46 char* res = (
char*)
ICEDB_malloc(
sizeof(
char)*(srcSz + 1));
53 wchar_t * dest,
size_t destSz,
54 const wchar_t * src,
size_t srcSz)
65 #if ICEDB_USING_SECURE_STRINGS 66 wcsncpy_s(dest, destSz, src, srcSz);
68 if (srcSz <= destSz) {
69 wcsncpy(dest, src, srcSz);
72 wcsncpy(dest, src, destSz);
76 for (
size_t i = 0; i < destSz; ++i)
if (dest[i] ==
'\0')
return i;
84 wchar_t* res = (
wchar_t*)
ICEDB_malloc(
sizeof(
wchar_t)*(srcSz + 1));
92 void* res =
malloc(numBytes);
#define ICEDB_DEBUG_RAISE_EXCEPTION()
ICEDB_SYMBOL_SHARED void ICEDB_DEBUG_RAISE_EXCEPTION_HANDLER_WC(const wchar_t *file, int line, const wchar_t *fsig)
ICEDB_SYMBOL_SHARED void ICEDB_free(void *obj)
Free memory region. Should not be double-freed.
ICEDB_SYMBOL_SHARED void ICEDB_DEBUG_RAISE_EXCEPTION_HANDLER_A(const char *file, int line, const char *fsig)
ICEDB_SYMBOL_SHARED wchar_t * ICEDB_COMPAT_wcsdup_s(const wchar_t *src, size_t srcSz)
#define ICEDB_BEGIN_DECL_C
#define ICEDB_COMPAT_fwprintf_s
ICEDB_SYMBOL_SHARED void _free(void *obj)
ICEDB_BEGIN_DECL_C ICEDB_SYMBOL_SHARED size_t ICEDB_COMPAT_strncpy_s(char *dest, size_t destSz, const char *src, size_t srcSz)
ICEDB_SYMBOL_SHARED char * ICEDB_COMPAT_strdup_s(const char *src, size_t srcSz)
T * malloc(size_t numBytes)
ICEDB_SYMBOL_SHARED void * ICEDB_malloc(size_t numBytes)
Allocate memory in bytes. Generally this is just malloced, but a custom allocator may be substituted...
#define ICEDB_SYMBOL_SHARED
ICEDB_SYMBOL_SHARED size_t ICEDB_COMPAT_wcsncpy_s(wchar_t *dest, size_t destSz, const wchar_t *src, size_t srcSz)
ICEDB_SYMBOL_SHARED void * _malloc(size_t numBytes)
#define ICEDB_COMPAT_fprintf_s