From 3e0fa36886a7fbed31709c7bcc90930356c0afae Mon Sep 17 00:00:00 2001 From: Zach Reizner Date: Wed, 22 May 2019 17:26:53 -0700 Subject: eliminate usage of uninitialized uninitialized is deprecated and considered too dangerous to use for any of the use cases we were using. BUG=None TEST=passes smoke_test Change-Id: I5392cb8ec132f374d9b5590f72eb2cb329a82421 Reviewed-on: https://chromium-review.googlesource.com/1626795 Commit-Ready: Zach Reizner Tested-by: Zach Reizner Tested-by: kokoro Legacy-Commit-Queue: Commit Bot Reviewed-by: Dylan Reid Reviewed-by: Stephen Barber --- usb_util/src/bindings.rs | 2 +- usb_util/src/libusb_device.rs | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) (limited to 'usb_util') diff --git a/usb_util/src/bindings.rs b/usb_util/src/bindings.rs index 90dcd5b..a3e7152 100644 --- a/usb_util/src/bindings.rs +++ b/usb_util/src/bindings.rs @@ -2152,7 +2152,7 @@ pub type libusb_iso_usage_type = u32; /// descriptor is documented in section 9.6.1 of the USB 3.0 specification. /// All multiple-byte fields are represented in host-endian format. #[repr(C)] -#[derive(Debug, Copy, Clone)] +#[derive(Default, Debug, Copy, Clone)] pub struct libusb_device_descriptor { /// Size of this descriptor (in bytes) pub bLength: u8, diff --git a/usb_util/src/libusb_device.rs b/usb_util/src/libusb_device.rs index 2a9ba86..e8f5120 100644 --- a/usb_util/src/libusb_device.rs +++ b/usb_util/src/libusb_device.rs @@ -50,8 +50,7 @@ impl LibUsbDevice { /// Get device descriptor of this device. pub fn get_device_descriptor(&self) -> Result { // Safe because memory is initialized later. - let mut descriptor: bindings::libusb_device_descriptor = - unsafe { std::mem::uninitialized() }; + let mut descriptor: bindings::libusb_device_descriptor = Default::default(); // Safe because 'self.device' is valid and '&mut descriptor' is valid. try_libusb!(unsafe { bindings::libusb_get_device_descriptor(self.device, &mut descriptor) -- cgit 1.4.1