diff --git a/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/AclProcess.cpp b/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/AclProcess.cpp index a70448e16e..e3dfde4d17 100755 --- a/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/AclProcess.cpp +++ b/model_zoo/official/cv/faster_rcnn/ascend310_infer/src/AclProcess.cpp @@ -169,7 +169,15 @@ int AclProcess::WriteResult(const std::string& imageFile) { std::cout << "open result file " << outFileName << " failed" << std::endl; return INVALID_POINTER; } - fwrite(resHostBuf, output_size, sizeof(char), outputFile); + size_t size = fwrite(resHostBuf, sizeof(char), output_size, outputFile); + if (size != output_size) { + fclose(outputFile); + outputFile = nullptr; + std::cout << "write result file " << outFileName << " failed, write size[" << size << + "] is smaller than output size[" << output_size << "], maybe the disk is full." << std::endl; + return ERROR; + } + fclose(outputFile); outputFile = nullptr; } catch (std::exception &e) { diff --git a/model_zoo/official/cv/maskrcnn/ascend310_infer/src/AclProcess.cpp b/model_zoo/official/cv/maskrcnn/ascend310_infer/src/AclProcess.cpp index addafb05be..6c942c5f37 100755 --- a/model_zoo/official/cv/maskrcnn/ascend310_infer/src/AclProcess.cpp +++ b/model_zoo/official/cv/maskrcnn/ascend310_infer/src/AclProcess.cpp @@ -169,7 +169,14 @@ int AclProcess::WriteResult(const std::string& imageFile) { std::cout << "open result file " << outFileName << " failed" << std::endl; return INVALID_POINTER; } - fwrite(resHostBuf, output_size, sizeof(char), outputFile); + size_t size = fwrite(resHostBuf, sizeof(char), output_size, outputFile); + if (size != output_size) { + fclose(outputFile); + outputFile = nullptr; + std::cout << "write result file " << outFileName << " failed, write size[" << size << + "] is smaller than output size[" << output_size << "], maybe the disk is full." << std::endl; + return ERROR; + } fclose(outputFile); outputFile = nullptr; } catch (std::exception &e) {