diff --git a/services/services/screen_capture/server/screen_capture_server.cpp b/services/services/screen_capture/server/screen_capture_server.cpp index 73b8fd93496a087bc0bb630f9658cb4929bdc250..3a706112696b1da2cacfdd733fa1f91256aef935 100644 --- a/services/services/screen_capture/server/screen_capture_server.cpp +++ b/services/services/screen_capture/server/screen_capture_server.cpp @@ -1809,6 +1809,8 @@ int32_t ScreenCaptureServer::AcquireVideoBuffer(sptr &surfa if (desFile && addr != nullptr) { (void)fwrite(addr, 1, bufferSize, desFile); (void)fclose(desFile); + } else if (desFile) { + (void)fclose(desFile); } } if (surfaceBuffer != nullptr) {