Due to alignment requirements, libusb_hotplug_message might have some padding bytes.
This change makes sure that these padding bytes are initialised. Valgrind no longer complains about passing uninitialised data to the write system call. --- libusb/core.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libusb/core.c b/libusb/core.c index 4e01adb..828f0cb 100644 --- a/libusb/core.c +++ b/libusb/core.c @@ -531,6 +531,7 @@ void usbi_connect_device(struct libusb_device *dev) libusb_hotplug_message message; ssize_t ret; + memset(&message, 0, sizeof(message)); message.event = LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED; message.device = dev; dev->attached = 1; @@ -556,6 +557,7 @@ void usbi_disconnect_device(struct libusb_device *dev) struct libusb_context *ctx = dev->ctx; ssize_t ret; + memset(&message, 0, sizeof(message)); message.event = LIBUSB_HOTPLUG_EVENT_DEVICE_LEFT; message.device = dev; usbi_mutex_lock(&dev->lock); -- 1.7.9.5 ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ libusbx-devel mailing list libusbx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libusbx-devel