[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [PULL 06/28] target/arm: use the common interface for WRI
Re: [Qemu-arm] [PULL 06/28] target/arm: use the common interface for WRITE0/WRITEC in arm-semi
Thu, 30 May 2019 13:36:46 +0100
On Thu, 30 May 2019 at 13:35, Alex Bennée <address@hidden> wrote:
> Peter Maydell <address@hidden> writes:
> > Also it looks a bit dodgy that we are passed in a
> > specific length value but we then go and look at the length
> > of the string, but we trust the specific length value over
> > the length of the string. If len is larger than the real
> > length of the string (including terminating NUL) then the
> > write() will read off the end of the string.
> It is an admittedly in-elegant hack to deal with the fact we call the
> same function for outputting a character as well as a string. None of
> the guests actually give us the length:
> * @len: length of string or 0 (string is null terminated)
> We could formalise it by making s/len/is_char/ and making it a bool or
> just add some more text to the description.
I think it would be cleaner to have separate functions for
"write a char" and "write a string" rather than having one
function with a bool flag parameter which every callsite passes
as a constant value.