Text   |  XML   |  ReML   |   Visible Warnings:

Unreachable Control Flow  at istream.c:93

No properties have been set. | edit properties
Jump to warning location ↓ warning details...
Show Events | Options

i_stream_read

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib/istream.c)expand/collapse
Show more  
 67  ssize_t i_stream_read(struct istream *stream)
 68  {
 69          struct istream_private *_stream = stream->real_stream;
 70          size_t old_size;
 71          ssize_t ret;
 72   
 73          if (unlikely(stream->closed))
 74                  return -1;
 75   
 76          stream->eof = FALSE;
 77          stream->stream_errno = 0;
 78   
 79          old_size = _stream->pos - _stream->skip;
 80          ret = _stream->read(_stream);
 81          switch (ret) {
 82          case -2:
 83                  i_assert(_stream->skip != _stream->pos);
 84                  break;
 85          case -1:
 86                  if (stream->stream_errno != 0) {
 87                          /* error handling should be easier if we now just 
 88                             assume the stream is now at EOF */
 89                          stream->eof = TRUE;
 90                  } else {
 91                          i_assert(stream->eof);
 92                  }
 93                  break;
 94          case 0:
 95                  i_assert(!stream->blocking);
 96                  break;
 97          default:
 98                  i_assert(ret > 0);
 99                  i_assert((size_t)ret+old_size == _stream->pos - _stream->skip);
 100                  break;
 101          }
 102          return ret;
 103  }
Show more  




Change Warning 7100.24391 : Unreachable Control Flow

Priority:
State:
Finding:
Owner:
Note: