From ba47fe48c931c7450e87490975c6d4a64ea174f2 Mon Sep 17 00:00:00 2001 From: Grady Date: Wed, 6 Apr 2022 14:53:31 +0800 Subject: [PATCH] fix issue Signed-off-by: Grady Change-Id: Iebdb5219cee4184f32e6f6eb9dac67bdfb9bae17 --- dmserver/src/abstract_screen.cpp | 1 + .../screenshot/native_screenshot_module.cpp | 4 +++ snapshot/snapshot_display.cpp | 22 +++++++------- snapshot/snapshot_utils.cpp | 30 ++++++++++--------- snapshot/snapshot_utils.h | 1 + snapshot/snapshot_virtual_screen.cpp | 14 ++++----- 6 files changed, 41 insertions(+), 31 deletions(-) diff --git a/dmserver/src/abstract_screen.cpp b/dmserver/src/abstract_screen.cpp index e9771128..60694ce3 100644 --- a/dmserver/src/abstract_screen.cpp +++ b/dmserver/src/abstract_screen.cpp @@ -287,6 +287,7 @@ bool AbstractScreenGroup::GetRSDisplayNodeConfig(sptr& dmsScreen } switch (combination_) { case ScreenCombination::SCREEN_ALONE: + [[fallthrough]]; case ScreenCombination::SCREEN_EXPAND: config = { dmsScreen->rsId_ }; break; diff --git a/interfaces/kits/napi/screenshot/native_screenshot_module.cpp b/interfaces/kits/napi/screenshot/native_screenshot_module.cpp index b800fe15..f22dd550 100644 --- a/interfaces/kits/napi/screenshot/native_screenshot_module.cpp +++ b/interfaces/kits/napi/screenshot/native_screenshot_module.cpp @@ -217,6 +217,10 @@ napi_value MainFunc(napi_env env, napi_callback_info info) NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, nullptr, nullptr)); auto param = std::make_unique(); + if (param == nullptr) { + WLOGFE("Create param failed."); + return nullptr; + } param->option.displayId = DisplayManager::GetInstance().GetDefaultDisplayId(); napi_ref ref = nullptr; if (argc == 0) { diff --git a/snapshot/snapshot_display.cpp b/snapshot/snapshot_display.cpp index de625ae2..28895dc5 100644 --- a/snapshot/snapshot_display.cpp +++ b/snapshot/snapshot_display.cpp @@ -32,12 +32,12 @@ int main(int argc, char *argv[]) auto display = DisplayManager::GetInstance().GetDisplayById(cmdArgments.displayId); if (display == nullptr) { - printf("error: GetDisplayById %" PRIu64 " error!\n", cmdArgments.displayId); + std::cout << "error: GetDisplayById " << cmdArgments.displayId << " error!" << std::endl; return -1; } - printf("process: display %" PRIu64 ": width %d, height %d\n", - cmdArgments.displayId, display->GetWidth(), display->GetHeight()); + std::cout << "process: display " << cmdArgments.displayId << + ": width " << display->GetWidth() << ", height " << display->GetHeight() << std::endl; // get PixelMap from DisplayManager API std::shared_ptr pixelMap = nullptr; @@ -46,14 +46,15 @@ int main(int argc, char *argv[]) } else { if (!cmdArgments.isWidthSet) { cmdArgments.width = display->GetWidth(); - printf("process: reset to display's width %d\n", cmdArgments.width); + std::cout << "process: reset to display's width " << cmdArgments.width << std::endl; } if (!cmdArgments.isHeightSet) { cmdArgments.height = display->GetHeight(); - printf("process: reset to display's height %d\n", cmdArgments.height); + std::cout << "process: reset to display's height " << cmdArgments.height << std::endl; } if (!SnapShotUtils::CheckWidthAndHeightValid(cmdArgments)) { - printf("error: width %d, height %d invalid!\n", cmdArgments.width, cmdArgments.height); + std::cout << "error: width " << cmdArgments.width << " height " << + cmdArgments.height << " invalid!" << std::endl; return -1; } const Media::Rect rect = {0, 0, display->GetWidth(), display->GetHeight()}; @@ -67,12 +68,13 @@ int main(int argc, char *argv[]) ret = SnapShotUtils::WriteToPngWithPixelMap(cmdArgments.fileName, *pixelMap); } if (!ret) { - printf("\nerror: snapshot display %" PRIu64 ", write to %s as png failed!\n", - cmdArgments.displayId, cmdArgments.fileName.c_str()); + std::cout << "\nerror: snapshot display " << cmdArgments.displayId << + ", write to " << cmdArgments.fileName.c_str() << " as png failed!" << std::endl; return -1; } - printf("\nsuccess: snapshot display %" PRIu64 ", write to %s as png, width %d, height %d\n", - cmdArgments.displayId, cmdArgments.fileName.c_str(), pixelMap->GetWidth(), pixelMap->GetHeight()); + std::cout << "\nsuccess: snapshot display " << cmdArgments.displayId << " , write to " << + cmdArgments.fileName.c_str() << " as png, width " << pixelMap->GetWidth() << + ", height " << pixelMap->GetHeight() << std::endl; return 0; } \ No newline at end of file diff --git a/snapshot/snapshot_utils.cpp b/snapshot/snapshot_utils.cpp index 02203587..4558180c 100644 --- a/snapshot/snapshot_utils.cpp +++ b/snapshot/snapshot_utils.cpp @@ -37,7 +37,8 @@ const char *VALID_SNAPSHOT_SUFFIX = ".png"; void SnapShotUtils::PrintUsage(const std::string &cmdLine) { - printf("usage: %s [-i displayId] [-f output_file] [-w width] [-h height] [-m]\n", cmdLine.c_str()); + std::cout << "usage: " << cmdLine.c_str() << + " [-i displayId] [-f output_file] [-w width] [-h height] [-m]" << std::endl; } std::string SnapShotUtils::GenerateFileName(int offset) @@ -66,7 +67,7 @@ bool SnapShotUtils::CheckFileNameValid(const std::string &fileName) { WM_SCOPED_TRACE("snapshot:CheckFileNameValid(%s)", fileName.c_str()); if (fileName.length() <= strlen(VALID_SNAPSHOT_SUFFIX)) { - printf("error: fileName %s invalid, file length too short!\n", fileName.c_str()); + std::cout << "error: fileName " << fileName.c_str() << " invalid, file length too short!" << std::endl; return false; } // check file path @@ -80,12 +81,12 @@ bool SnapShotUtils::CheckFileNameValid(const std::string &fileName) char resolvedPath[PATH_MAX] = { 0 }; char *realPath = realpath(fileDir.c_str(), resolvedPath); if (realPath == nullptr) { - printf("error: fileName %s invalid, realpath nullptr!\n", fileName.c_str()); + std::cout << "error: fileName " << fileName.c_str() << " invalid, realpath nullptr!" << std::endl; return false; } if (strncmp(realPath, VALID_SNAPSHOT_PATH, strlen(VALID_SNAPSHOT_PATH)) != 0) { - printf("error: fileName %s invalid, realpath %s must dump at dir: %s \n", - fileName.c_str(), realPath, VALID_SNAPSHOT_PATH); + std::cout << "error: fileName " << fileName.c_str() << " invalid, realpath " + << realPath << " must dump at dir: " << VALID_SNAPSHOT_PATH << std::endl; return false; } @@ -95,7 +96,8 @@ bool SnapShotUtils::CheckFileNameValid(const std::string &fileName) return true; // valid suffix } - printf("error: fileName %s invalid, suffix must be %s\n", fileName.c_str(), VALID_SNAPSHOT_SUFFIX); + std::cout << "error: fileName " << fileName.c_str() << + " invalid, suffix must be " << VALID_SNAPSHOT_SUFFIX << std::endl; return false; } @@ -145,18 +147,18 @@ bool SnapShotUtils::WriteToPng(const std::string &fileName, const WriteToPngPara png_structp pngStruct = png_create_write_struct(PNG_LIBPNG_VER_STRING, nullptr, nullptr, nullptr); if (pngStruct == nullptr) { - printf("error: png_create_write_struct nullptr!\n"); + std::cout << "error: png_create_write_struct nullptr!" << std::endl; return false; } png_infop pngInfo = png_create_info_struct(pngStruct); if (pngInfo == nullptr) { - printf("error: png_create_info_struct error nullptr!\n"); + std::cout << "error: png_create_info_struct error nullptr!" << std::endl; png_destroy_write_struct(&pngStruct, nullptr); return false; } FILE *fp = fopen(fileName.c_str(), "wb"); if (fp == nullptr) { - printf("error: open file [%s] error, %d!\n", fileName.c_str(), errno); + std::cout << "error: open file [" << fileName.c_str() << "] error, " << errno << "!" << std::endl; png_destroy_write_struct(&pngStruct, &pngInfo); return false; } @@ -213,10 +215,10 @@ static bool ProcessDisplayId(DisplayId &displayId, bool isDisplayIdSet) } } if (!validFlag) { - printf("error: displayId %" PRId64 " invalid!\n", static_cast(displayId)); - printf("tips: supported displayIds:\n"); + std::cout << "error: displayId " << static_cast(displayId) << " invalid!" << std::endl; + std::cout << "tips: supported displayIds:" << std::endl; for (auto dispId: displayIds) { - printf("\t%" PRIu64 "\n", dispId); + std::cout << "\t" << dispId << std::endl; } return false; } @@ -265,12 +267,12 @@ bool SnapShotUtils::ProcessArgs(int argc, char * const argv[], CmdArgments &cmdA if (cmdArgments.fileName == "") { cmdArgments.fileName = GenerateFileName(); - printf("process: set filename to %s\n", cmdArgments.fileName.c_str()); + std::cout << "process: set filename to " << cmdArgments.fileName.c_str() << std::endl; } // check fileName if (!SnapShotUtils::CheckFileNameValid(cmdArgments.fileName)) { - printf("error: filename %s invalid!\n", cmdArgments.fileName.c_str()); + std::cout << "error: filename " << cmdArgments.fileName.c_str() << " invalid!" << std::endl; return false; } return true; diff --git a/snapshot/snapshot_utils.h b/snapshot/snapshot_utils.h index faa94127..baf84326 100644 --- a/snapshot/snapshot_utils.h +++ b/snapshot/snapshot_utils.h @@ -17,6 +17,7 @@ #define SNAPSHOT_UTILS_H #include +#include #include #include diff --git a/snapshot/snapshot_virtual_screen.cpp b/snapshot/snapshot_virtual_screen.cpp index 323fb5f0..537c4893 100644 --- a/snapshot/snapshot_virtual_screen.cpp +++ b/snapshot/snapshot_virtual_screen.cpp @@ -54,7 +54,7 @@ int main(int argc, char *argv[]) SurfaceReader surfaceReader; sptr surfaceReaderHandler = new SurfaceReaderHandlerImpl(); if (!surfaceReader.Init()) { - printf("surfaceReader init failed!\n"); + std::cout << "surfaceReader init failed!" << std::endl; return 0; } surfaceReader.SetHandler(surfaceReaderHandler); @@ -71,7 +71,7 @@ int main(int argc, char *argv[]) while (!surfaceReaderHandler->IsImageOk()) { waitCount++; if (waitCount >= MAX_WAIT_COUNT) { - printf("wait image overtime\n"); + std::cout << "wait image overtime" << std::endl; break; } usleep(SLEEP_US); @@ -82,16 +82,16 @@ int main(int argc, char *argv[]) auto pixelMap = surfaceReaderHandler->GetPixelMap(); bool ret = SnapShotUtils::WriteToPngWithPixelMap(FILE_NAME + std::to_string(fileIndex) + ".png", *pixelMap); if (ret) { - printf("snapshot %" PRIu64 ", write to %s as png\n", - mainId, (FILE_NAME + std::to_string(fileIndex)).c_str()); + std::cout << "snapshot "<< mainId << " write to " << + (FILE_NAME + std::to_string(fileIndex)).c_str() << " as png" << std::endl; } else { - printf("snapshot %" PRIu64 " write to %s failed!\n", - mainId, (FILE_NAME + std::to_string(fileIndex)).c_str()); + std::cout << "snapshot "<< mainId << " write to " << + (FILE_NAME + std::to_string(fileIndex)).c_str() << " failed!" << std::endl; } surfaceReaderHandler->ResetFlag(); fileIndex++; } ScreenManager::GetInstance().DestroyVirtualScreen(virtualScreenId); - printf("DestroyVirtualScreen %" PRIu64 "\n", virtualScreenId); + std::cout << "DestroyVirtualScreen " << virtualScreenId << std::endl; return 0; } \ No newline at end of file