if (!lineptr || !n || !stream)
return -1;
if (!*lineptr) {
- if (!(*lineptr = mem_a((*n=64))))
+ if (!(*lineptr = (char*)mem_a((*n=64))))
return -1;
}
int c = getc(stream);
if (chr < 2) {
- char *tmp = mem_a((*n+=(*n>16)?*n:64));
+ char *tmp = (char*)mem_a((*n+=(*n>16)?*n:64));
if (!tmp)
return -1;
+ memcpy(tmp, *lineptr, pos - *lineptr);
chr = *n + *lineptr - pos;
- strcpy(tmp,*lineptr);
if (!(*lineptr = tmp)) {
mem_d (tmp);
return -1;
*out = 0;
return sz-1;
}
+
+FILE *util_fopen(const char *filename, const char *mode)
+{
+#ifdef WIN32
+ FILE *out;
+ if (fopen_s(&out, file, mode) != 0)
+ return NULL;
+ return out;
+#else
+ return fopen(file, mode);
+#endif
+}
+