diff --git a/shell/platform/ohos/ohos_external_texture_gl.cpp b/shell/platform/ohos/ohos_external_texture_gl.cpp index ad1c4e2d7019e30341d9807c126de637a39df61a..4b41c9ede0ad045cce4c3b512645e1c388176d8d 100755 --- a/shell/platform/ohos/ohos_external_texture_gl.cpp +++ b/shell/platform/ohos/ohos_external_texture_gl.cpp @@ -374,6 +374,11 @@ void OHOSExternalTextureGL::ProducePixelMapToNativeImage() FML_DLOG(ERROR) << "OHOSExternalTextureGL OH_NativeWindow_NativeWindowHandleOpt err:" << ret; } + int32_t usage = 0; + OH_NativeWindow_NativeWindowHandleOpt(nativeWindow_, GET_USAGE, &usage); + usage |= NATIVEBUFFER_USAGE_CPU_READ; + OH_NativeWindow_NativeWindowHandleOpt(nativeWindow_, SET_USAGE, usage); + if (buffer_ != nullptr) { OH_NativeWindow_NativeWindowAbortBuffer(nativeWindow_, buffer_); buffer_ = nullptr;