On 07/17/2017 11:46 AM, Dr. David Alan Gilbert wrote:
>> +++ w/hw/usb/bus.c
>> @@ -407,8 +407,9 @@ void usb_register_companion(const char *masterbus,
>> USBPort *ports[],
>> void usb_port_location(USBPort *downstream, USBPort *upstream, int portnr)
>> {
>> if (upstream) {
>> - snprintf(downstream->path, sizeof(downstream->path), "%s.%d",
>> - upstream->path, portnr);
>> + int l = snprintf(downstream->path, sizeof(downstream->path),
>> "%s.%d",
>> + upstream->path, portnr);
>> + assert(l < sizeof(downstream->path));
>
> You may find this doesn't help in some windows builds; the assert
> functions aren't always marked as noreturn (because they pop up a dialog
> that asks you whether you want to run into a debugger etc).How would it not help? Are we using gcc 7 on windows builds? Adding the assert is enough to shut up new gcc; old gcc was already silent; and if mingw is still on old gcc, it doesn't matter whether assert() is marked noreturn for what this patch is doing. -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature
