diff --git a/usrc/subboards/subboard90_optical_module/optical_module_v2.cpp b/usrc/subboards/subboard90_optical_module/optical_module_v2.cpp index a0048fd..ea2605e 100644 --- a/usrc/subboards/subboard90_optical_module/optical_module_v2.cpp +++ b/usrc/subboards/subboard90_optical_module/optical_module_v2.cpp @@ -300,7 +300,10 @@ int32_t OpticalModuleV2::a8000_optical_read_raw(int32_t index, uint8_t* data, in if (sector_size > *len) return err::kbuffer_not_enough; uint16_t add = index * sector_size; - if (add >= rawsize) return err::kparam_out_of_range; + if (add >= rawsize) { + *len = 0; + return 0; + } if (add + sector_size > rawsize) { // rawsize 127 sector_size 128 add = 0 *len = rawsize - add;