#include "mm_file_debug.h"
#include "mm_file_utils.h"
+#define HANDLE_STRING_MAX 256
+
static unsigned char is_little_endian = 0;
inline static int _is_little_endian(void)
{
MMFileIOFunc *pFuc = NULL;
const char *pFile = NULL;
- char handle_str[256] = {0, };
+ char handle_str[HANDLE_STRING_MAX] = {0, };
char *pHandleName = NULL;
if (!handle || !filename) {
return MMFILE_UTIL_FAIL;
}
- memset(handle_str, 0x00, sizeof(handle_str));
+ memset(handle_str, 0x00, HANDLE_STRING_MAX);
pFile = filename;
pHandleName = handle_str;
goto file_handle;
}
- if ((pHandleName - handle_str) < (int)sizeof(handle_str) - 1) {
+ if ((pHandleName - handle_str) < HANDLE_STRING_MAX - 1) {
*pHandleName++ = *pFile;
}
pFile++;
if (*pFile == '\0') {
file_handle:
- SAFE_STRLCPY(handle_str, "file", sizeof(handle_str));
+ if (g_strlcpy(handle_str, "file", HANDLE_STRING_MAX) >= HANDLE_STRING_MAX)
+ debug_error(DEBUG, "truncation occurred.");
} else {
*pHandleName = '\0';
}
return MMFILE_UTIL_SUCCESS;
}
-