1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-26 04:46:37 +02:00

Test return value of calls to sscanf function

This commit is contained in:
Sebastien Helleu
2011-01-21 19:30:08 +01:00
parent 1ca2261e95
commit cc6bb607e0
6 changed files with 85 additions and 40 deletions
+5 -2
View File
@@ -676,7 +676,7 @@ weechat_aspell_modifier_cb (void *data, const char *modifier,
const char *color_normal, *color_error;
int utf8_char_int, char_size;
int length, index_result, length_word, word_ok;
int length_color_normal, length_color_error;
int length_color_normal, length_color_error, rc;
/* make C compiler happy */
(void) data;
@@ -685,7 +685,10 @@ weechat_aspell_modifier_cb (void *data, const char *modifier,
if (!string || !string[0])
return NULL;
sscanf (modifier_data, "%lx", &value);
rc = sscanf (modifier_data, "%lx", &value);
if ((rc == EOF) || (rc == 0))
return NULL;
buffer = (struct t_gui_buffer *)value;
if (!weechat_aspell_spellers)
+11 -5
View File
@@ -65,7 +65,7 @@ irc_color_decode (const char *string, int keep_colors)
unsigned char *out, *ptr_string;
int out_length, length, out_pos;
char str_fg[3], str_bg[3], str_color[128];
int fg, bg, bold, reverse, italic, underline;
int fg, bg, bold, reverse, italic, underline, rc;
out_length = (strlen (string) * 2) + 1;
out = malloc (out_length);
@@ -164,13 +164,19 @@ irc_color_decode (const char *string, int keep_colors)
bg = -1;
if (str_fg[0])
{
sscanf (str_fg, "%d", &fg);
fg %= IRC_NUM_COLORS;
rc = sscanf (str_fg, "%d", &fg);
if ((rc != EOF) && (rc >= 1))
{
fg %= IRC_NUM_COLORS;
}
}
if (str_bg[0])
{
sscanf (str_bg, "%d", &bg);
bg %= IRC_NUM_COLORS;
rc = sscanf (str_bg, "%d", &bg);
if ((rc != EOF) && (rc >= 1))
{
bg %= IRC_NUM_COLORS;
}
}
snprintf (str_color, sizeof (str_color),
"%s%s%s",
+5 -2
View File
@@ -386,13 +386,16 @@ void *
script_str2ptr (const char *pointer_str)
{
long unsigned int value;
int rc;
if (!pointer_str || (pointer_str[0] != '0') || (pointer_str[1] != 'x'))
return NULL;
sscanf (pointer_str + 2, "%lx", &value);
rc = sscanf (pointer_str + 2, "%lx", &value);
if ((rc != EOF) && (rc >= 1))
return (void *)value;
return (void *)value;
return NULL;
}
/*