From 4f29f998c5a19249f3fe830a96844e7a82ce03e9 Mon Sep 17 00:00:00 2001 From: Arjun Balgovind <32061677+arjunbalgovind@users.noreply.github.com> Date: Tue, 7 Apr 2020 15:19:22 -0700 Subject: [PATCH] Fixed telemetry calls in Image Resizer (#1983) --- src/modules/imageresizer/dll/ContextMenuHandler.cpp | 10 +++++----- src/modules/imageresizer/dll/trace.cpp | 10 ++++++++++ src/modules/imageresizer/dll/trace.h | 1 + 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/modules/imageresizer/dll/ContextMenuHandler.cpp b/src/modules/imageresizer/dll/ContextMenuHandler.cpp index 556a0b1891..b10cdfb91c 100644 --- a/src/modules/imageresizer/dll/ContextMenuHandler.cpp +++ b/src/modules/imageresizer/dll/ContextMenuHandler.cpp @@ -147,6 +147,7 @@ HRESULT CContextMenuHandler::QueryContextMenu(_In_ HMENU hmenu, UINT indexMenu, if (!InsertMenuItem(hmenu, indexMenu, TRUE, &mii)) { hr = HRESULT_FROM_WIN32(GetLastError()); + Trace::QueryContextMenuError(hr); } else { @@ -220,12 +221,12 @@ HRESULT CContextMenuHandler::ResizePictures(CMINVOKECOMMANDINFO* pici, IShellIte HRESULT hr = E_FAIL; if (!CreatePipe(&hReadPipe, &hWritePipe, &sa, 0)) { - Trace::InvokedRet(hr); + hr = HRESULT_FROM_WIN32(GetLastError()); return hr; } if (!SetHandleInformation(hWritePipe, HANDLE_FLAG_INHERIT, 0)) { - Trace::InvokedRet(hr); + hr = HRESULT_FROM_WIN32(GetLastError()); return hr; } CAtlFile writePipe(hWritePipe); @@ -277,12 +278,12 @@ HRESULT CContextMenuHandler::ResizePictures(CMINVOKECOMMANDINFO* pici, IShellIte delete[] lpszCommandLine; if (!CloseHandle(processInformation.hProcess)) { - Trace::InvokedRet(hr); + hr = HRESULT_FROM_WIN32(GetLastError()); return hr; } if (!CloseHandle(processInformation.hThread)) { - Trace::InvokedRet(hr); + hr = HRESULT_FROM_WIN32(GetLastError()); return hr; } @@ -322,7 +323,6 @@ HRESULT CContextMenuHandler::ResizePictures(CMINVOKECOMMANDINFO* pici, IShellIte writePipe.Close(); hr = S_OK; - Trace::InvokedRet(hr); return hr; } diff --git a/src/modules/imageresizer/dll/trace.cpp b/src/modules/imageresizer/dll/trace.cpp index 8df63836f5..8bf2d84280 100644 --- a/src/modules/imageresizer/dll/trace.cpp +++ b/src/modules/imageresizer/dll/trace.cpp @@ -47,3 +47,13 @@ void Trace::InvokedRet(_In_ HRESULT hr) noexcept TraceLoggingHResult(hr), TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE)); } + +void Trace::QueryContextMenuError(_In_ HRESULT hr) noexcept +{ + TraceLoggingWrite( + g_hProvider, + "ImageResizer_QueryContextMenuError", + ProjectTelemetryPrivacyDataTag(ProjectTelemetryTag_ProductAndServicePerformance), + TraceLoggingHResult(hr), + TraceLoggingKeyword(PROJECT_KEYWORD_MEASURE)); +} diff --git a/src/modules/imageresizer/dll/trace.h b/src/modules/imageresizer/dll/trace.h index fcb39a3757..5f1bada262 100644 --- a/src/modules/imageresizer/dll/trace.h +++ b/src/modules/imageresizer/dll/trace.h @@ -8,4 +8,5 @@ public: static void EnableImageResizer(_In_ bool enabled) noexcept; static void Invoked() noexcept; static void InvokedRet(_In_ HRESULT hr) noexcept; + static void QueryContextMenuError(_In_ HRESULT hr) noexcept; }; \ No newline at end of file