Skip to content

Commit d4b21fb

Browse files
committed
Dont't break API
Use `try_into` to try convert i32 to u64, if fail, will use default value (512)
1 parent 52d7e0f commit d4b21fb

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/linux.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,14 +54,14 @@ pub fn reread_partition_table(file: &mut fs::File) -> Result<(), BlockError> {
5454
}
5555

5656
/// Makes an ioctl call to obtain the sector size of a block device
57-
pub fn get_sector_size(file: &mut fs::File) -> Result<i32, BlockError> {
57+
pub fn get_sector_size(file: &mut fs::File) -> Result<u64, BlockError> {
5858
let metadata = file.metadata().map_err(BlockError::Metadata)?;
5959
let mut sector_size = 512;
6060

6161
if metadata.st_mode() & S_IFMT == S_IFBLK {
6262
match unsafe { ioctl::blksszget(file.as_raw_fd(), &mut sector_size) } {
6363
Err(err) => Err(BlockError::GetSectorSize(err)),
64-
Ok(0) => Ok(sector_size),
64+
Ok(0) => Ok(sector_size.try_into().unwrap_or(512)),
6565
Ok(r) => Err(BlockError::InvalidReturnValue(r)),
6666
}
6767
} else {

0 commit comments

Comments
 (0)