diff --git a/rosen/modules/render_service/core/pipeline/rs_divided_render_util.cpp b/rosen/modules/render_service/core/pipeline/rs_divided_render_util.cpp index ab9c28a022..e1b38bf5ff 100644 --- a/rosen/modules/render_service/core/pipeline/rs_divided_render_util.cpp +++ b/rosen/modules/render_service/core/pipeline/rs_divided_render_util.cpp @@ -17,7 +17,6 @@ #include #include "common/rs_obj_abs_geometry.h" -#include "parameters.h" #include "platform/common/rs_log.h" #include "property/rs_properties_painter.h" #include "render/rs_drawing_filter.h" diff --git a/rosen/modules/render_service/core/pipeline/rs_main_thread.cpp b/rosen/modules/render_service/core/pipeline/rs_main_thread.cpp index f6f1a132c1..1ff9e26325 100644 --- a/rosen/modules/render_service/core/pipeline/rs_main_thread.cpp +++ b/rosen/modules/render_service/core/pipeline/rs_main_thread.cpp @@ -3739,10 +3739,10 @@ void RSMainThread::ShowWatermark(const std::shared_ptr &waterma auto screenManager_ = CreateOrGetScreenManager(); if (flag && screenManager_) { auto screenInfo = screenManager_->QueryDefaultScreenInfo(); - constexpr int maxScale = 2; + constexpr int32_t maxScale = 2; if (screenInfo.id != INVALID_SCREEN_ID && watermarkImg && - (watermarkImg->GetWidth() > maxScale * screenInfo.width || - watermarkImg->GetHeight() > maxScale * screenInfo.height)) { + (watermarkImg->GetWidth() > maxScale * static_cast(screenInfo.width) || + watermarkImg->GetHeight() > maxScale * static_cast(screenInfo.height))) { RS_LOGE("RSMainThread::ShowWatermark width %{public}" PRId32" or height %{public}" PRId32" has reached" " the maximum limit!", watermarkImg->GetWidth(), watermarkImg->GetHeight()); return; diff --git a/rosen/modules/render_service/core/pipeline/rs_surface_capture_task_parallel.cpp b/rosen/modules/render_service/core/pipeline/rs_surface_capture_task_parallel.cpp index 83f120ae20..56ef06c935 100644 --- a/rosen/modules/render_service/core/pipeline/rs_surface_capture_task_parallel.cpp +++ b/rosen/modules/render_service/core/pipeline/rs_surface_capture_task_parallel.cpp @@ -559,6 +559,11 @@ std::shared_ptr DmaMem::GetSurfaceFromSurfaceBuffer( Drawing::TextureOrigin::TOP_LEFT, 1, Drawing::ColorType::COLORTYPE_RGBA_8888, nullptr, NativeBufferUtils::DeleteVkImage, cleanUpHelper); + if (!drawingSurface) { + delete cleanUpHelper; + cleanUpHelper = nullptr; + RS_LOGE("DmaMem::GetSurfaceFromSurfaceBuffer: MakeFromBackendTexture fail."); + } return drawingSurface; } #endif diff --git a/rosen/modules/render_service/core/pipeline/rs_uni_render_composer_adapter.cpp b/rosen/modules/render_service/core/pipeline/rs_uni_render_composer_adapter.cpp index 26edf44795..0a80bd2620 100644 --- a/rosen/modules/render_service/core/pipeline/rs_uni_render_composer_adapter.cpp +++ b/rosen/modules/render_service/core/pipeline/rs_uni_render_composer_adapter.cpp @@ -1279,7 +1279,7 @@ LayerInfoPtr RSUniRenderComposerAdapter::CreateBufferLayer(RSSurfaceRenderNode& LayerCrop(layer); layer->SetNodeId(node.GetId()); const auto nodeParams = static_cast(node.GetRenderParams().get()); - if (nodeParams) { + if (!nodeParams) { RS_LOGE("node params is nullptr"); return layer; } diff --git a/rosen/modules/render_service/core/pipeline/rs_uni_render_util.h b/rosen/modules/render_service/core/pipeline/rs_uni_render_util.h index 35294b0bc3..fccaa53497 100644 --- a/rosen/modules/render_service/core/pipeline/rs_uni_render_util.h +++ b/rosen/modules/render_service/core/pipeline/rs_uni_render_util.h @@ -128,7 +128,7 @@ public: static void TraverseAndCollectUIExtensionInfo(std::shared_ptr node, Drawing::Matrix parentMatrix, NodeId hostId, UIExtensionCallbackData& callbackData); static void ProcessCacheImage(RSPaintFilterCanvas& canvas, Drawing::Image& cacheImageProcessed); - static void FlushDmaSurfaceBuffer(Media::PixelMap* pixelmap); + static void FlushDmaSurfaceBuffer(Media::PixelMap* pixelMap); template static void TraverseParentNodeAndReduce(std::shared_ptr hwcNode, Callbacks&&... callbacks) {