Enable and fix misc2.c -Wconversion warnings #907

This commit is contained in:
Shane Iler
2014-06-30 16:22:10 -07:00
committed by Justin M. Keyes
parent fa1d9301f7
commit d61829dd06
5 changed files with 19 additions and 24 deletions

View File

@@ -44,7 +44,7 @@ set(CONV_SRCS
log.c
map.c
memory.c
map.c
misc2.c
os/env.c
os/event.c
os/job.c

View File

@@ -488,28 +488,20 @@ time_t get8ctime(FILE *fd)
return n;
}
/*
* Read a string of length "cnt" from "fd" into allocated memory.
* Returns NULL when unable to read that many bytes.
*/
char_u *read_string(FILE *fd, int cnt)
/// Reads a string of length "cnt" from "fd" into allocated memory.
/// @return pointer to the string or NULL when unable to read that many bytes.
char *read_string(FILE *fd, size_t cnt)
{
int i;
int c;
char_u *str = xmallocz(cnt);
/* Read the string. Quit when running into the EOF. */
for (i = 0; i < cnt; ++i) {
c = getc(fd);
uint8_t *str = xmallocz(cnt);
for (size_t i = 0; i < cnt; i++) {
int c = getc(fd);
if (c == EOF) {
free(str);
return NULL;
}
str[i] = c;
str[i] = (uint8_t)c;
}
str[i] = NUL;
return str;
return (char *)str;
}
/*

View File

@@ -3,7 +3,10 @@
#include "nvim/os/shell.h"
#define READ_STRING(x, y) (char_u *)read_string((x), (size_t)(y))
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "misc2.h.generated.h"
#endif
#endif // NVIM_MISC2_H

View File

@@ -2600,7 +2600,7 @@ spell_load_file (
res = 0;
switch (n) {
case SN_INFO:
lp->sl_info = read_string(fd, len); // <infotext>
lp->sl_info = READ_STRING(fd, len); // <infotext>
if (lp->sl_info == NULL)
goto endFAIL;
break;
@@ -2614,7 +2614,7 @@ spell_load_file (
break;
case SN_MIDWORD:
lp->sl_midword = read_string(fd, len); // <midword>
lp->sl_midword = READ_STRING(fd, len); // <midword>
if (lp->sl_midword == NULL)
goto endFAIL;
break;
@@ -2640,7 +2640,7 @@ spell_load_file (
break;
case SN_MAP:
p = read_string(fd, len); // <mapstr>
p = READ_STRING(fd, len); // <mapstr>
if (p == NULL)
goto endFAIL;
set_map_str(lp, p);
@@ -2668,7 +2668,7 @@ spell_load_file (
break;
case SN_SYLLABLE:
lp->sl_syllable = read_string(fd, len); // <syllable>
lp->sl_syllable = READ_STRING(fd, len); // <syllable>
if (lp->sl_syllable == NULL)
goto endFAIL;
if (init_syl_tab(lp) == FAIL)
@@ -2764,7 +2764,7 @@ static char_u *read_cnt_string(FILE *fd, int cnt_bytes, int *cntp)
if (cnt == 0)
return NULL; // nothing to read, return NULL
str = read_string(fd, cnt);
str = READ_STRING(fd, cnt);
if (str == NULL)
*cntp = SP_OTHERERROR;
return str;

View File

@@ -916,7 +916,7 @@ static u_entry_T *unserialize_uep(FILE *fp, int *error, char_u *file_name)
for (i = 0; i < uep->ue_size; ++i) {
line_len = get4c(fp);
if (line_len >= 0)
line = read_string(fp, line_len);
line = READ_STRING(fp, line_len);
else {
line = NULL;
corruption_error("line length", file_name);
@@ -1316,7 +1316,7 @@ void u_read_undo(char_u *name, char_u *hash, char_u *orig_name)
if (str_len < 0)
goto error;
if (str_len > 0)
line_ptr = read_string(fp, str_len);
line_ptr = READ_STRING(fp, str_len);
line_lnum = (linenr_T)get4c(fp);
line_colnr = (colnr_T)get4c(fp);
if (line_lnum < 0 || line_colnr < 0) {