As part of the checks to find possible causes of my servers falling over I went to see if coverity had any more issues located.

One of them was unsafe use of a variable typed 'size_t' setting up
StoreIOBUffer local variable

The constructor using it is:

 StoreIOBuffer(size_t aLength, int64_t anOffset, char *someData) :
            length (aLength), offset (anOffset), data (someData)
    {
        flags.error = 0;
    }


where length/aLength are the size_t in question.

I had thought it the length of the buffer and offset in the buffer. But seeing the offset is now int64, is it the lengths of the file being buffered? In which case it should be a 64-bit too I think.

Or was I right about being buffer length? in which case it should be an unsigned something? which prevents this warning showing.

Amos

Reply via email to