Don't die if there is no phys name either
This commit is contained in:
parent
53b4a6d65e
commit
d9c9225fa0
1 changed files with 9 additions and 5 deletions
|
@ -716,11 +716,15 @@ impl Device {
|
||||||
unsafe { vec.set_len(dev_len as usize - 1) };
|
unsafe { vec.set_len(dev_len as usize - 1) };
|
||||||
dev.name = CString::new(vec.clone()).unwrap();
|
dev.name = CString::new(vec.clone()).unwrap();
|
||||||
|
|
||||||
let phys_len = unsafe { eviocgphys(fd, vec.as_mut_ptr(), 255) }?;
|
match unsafe { eviocgphys(fd, vec.as_mut_ptr(), 255) } {
|
||||||
|
Ok(phys_len) => {
|
||||||
if phys_len > 0 {
|
if phys_len > 0 {
|
||||||
unsafe { vec.set_len(phys_len as usize - 1) };
|
unsafe { vec.set_len(phys_len as usize - 1) };
|
||||||
dev.phys = Some(CString::new(vec.clone()).unwrap());
|
dev.phys = Some(CString::new(vec.clone()).unwrap());
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
Err(_) => { /* not essential */ }
|
||||||
|
}
|
||||||
|
|
||||||
match unsafe { eviocguniq(fd, vec.as_mut_ptr(), 255) } {
|
match unsafe { eviocguniq(fd, vec.as_mut_ptr(), 255) } {
|
||||||
Ok(uniq_len) => {
|
Ok(uniq_len) => {
|
||||||
|
@ -729,7 +733,7 @@ impl Device {
|
||||||
dev.uniq = Some(CString::new(vec.clone()).unwrap());
|
dev.uniq = Some(CString::new(vec.clone()).unwrap());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
Err(_) => { /* it's not essential */ }
|
Err(_) => { /* not essential */ }
|
||||||
}
|
}
|
||||||
|
|
||||||
do_ioctl!(eviocgid(fd, &mut dev.id));
|
do_ioctl!(eviocgid(fd, &mut dev.id));
|
||||||
|
|
Loading…
Reference in a new issue