From 48d0d9ca342f5bf4638a16764ffaa42328d34a57 Mon Sep 17 00:00:00 2001 From: Jiajie Chen Date: Wed, 24 Dec 2025 23:23:25 +0800 Subject: [PATCH] Fix bus num on non-Linux platform --- src/lib.rs | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index f02bdab..b9fae1a 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -106,20 +106,24 @@ impl UsbIpServer { handler, }); } + + // Platform-specific bus number (Linux-only) + let bus_num_val: u32; + #[cfg(target_os = "linux")] + { + bus_num_val = device_info.busnum() as u32; + } + #[cfg(not(target_os = "linux"))] + { + bus_num_val = 0; + } + + let device_address = device_info.device_address(); + let mut device = UsbDevice { - path: format!( - "/sys/bus/{}/{}/{}", - device_info.busnum(), - device_info.device_address(), - 0 - ), - bus_id: format!( - "{}-{}-{}", - device_info.busnum(), - device_info.device_address(), - 0, - ), - bus_num: device_info.busnum() as u32, + path: format!("/sys/bus/{}/{}/{}", bus_num_val, device_address, 0), + bus_id: format!("{}-{}-{}", bus_num_val, device_address, 0), + bus_num: bus_num_val, dev_num: 0, speed: device_info.speed().unwrap() as u32, vendor_id: device_info.vendor_id(),