mirror of git://git.sysmocom.de/ofono
Fix: Take care of uninitialized variable condition
In some (impossible) circumstances rbytes and err might be used uninitialized. Here we make a check that a read was actually attempted before checking those variables.
This commit is contained in:
parent
2e4bcbf0ac
commit
fb918d39ba
|
@ -704,10 +704,8 @@ static gboolean received_data(GIOChannel *channel, GIOCondition cond,
|
|||
do {
|
||||
toread = ring_buffer_avail_no_wrap(chat->buf);
|
||||
|
||||
if (toread == 0) {
|
||||
err = G_IO_ERROR_NONE;
|
||||
if (toread == 0)
|
||||
break;
|
||||
}
|
||||
|
||||
rbytes = 0;
|
||||
buf = ring_buffer_write_ptr(chat->buf);
|
||||
|
@ -732,7 +730,7 @@ static gboolean received_data(GIOChannel *channel, GIOCondition cond,
|
|||
if (cond & (G_IO_HUP | G_IO_ERR))
|
||||
return FALSE;
|
||||
|
||||
if (rbytes == 0 && err != G_IO_ERROR_AGAIN)
|
||||
if (read_count > 0 && rbytes == 0 && err != G_IO_ERROR_AGAIN)
|
||||
return FALSE;
|
||||
|
||||
return TRUE;
|
||||
|
|
Loading…
Reference in New Issue