On Thu, 30 May 2019 at 13:35, Alex Bennée <alex.ben...@linaro.org> wrote: > > > Peter Maydell <peter.mayd...@linaro.org> 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. thanks -- PMM