From 7451facf2f7a9ee8e5873b6c6976bffea241199a Mon Sep 17 00:00:00 2001 From: Dylan Smith Date: Mon, 22 Feb 2010 03:17:59 -0500 Subject: [PATCH] wordpad: Added missing calls to DeleteDC and ReleaseDC. --- programs/wordpad/print.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/programs/wordpad/print.c b/programs/wordpad/print.c index e8d14e8a797..f4d4eeff1e1 100644 --- a/programs/wordpad/print.c +++ b/programs/wordpad/print.c @@ -412,6 +412,7 @@ void print_quick(HWND hMainWnd, LPWSTR wszFileName) pd.hDC = make_dc(); print(&pd, wszFileName); + DeleteDC(pd.hDC); } void dialog_print(HWND hMainWnd, LPWSTR wszFileName) @@ -596,6 +597,8 @@ LRESULT CALLBACK preview_proc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) fr.chrg.cpMax = SendMessageW(hEditorWnd, EM_GETTEXTLENGTHEX, (WPARAM)>, 0); preview.pages = get_num_pages(hEditorWnd, fr); DeleteDC(fr.hdc); + DeleteDC(hdcTarget); + ReleaseDC(hWnd, hdc); update_preview_sizes(hWnd, TRUE); break; @@ -845,7 +848,7 @@ LRESULT CALLBACK ruler_proc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) static void draw_preview_page(HDC hdc, HDC* hdcSized, FORMATRANGE* lpFr, float ratio, int bmNewWidth, int bmNewHeight, int bmWidth, int bmHeight) { HBITMAP hBitmapScaled = CreateCompatibleBitmap(hdc, bmNewWidth, bmNewHeight); - HPEN hPen; + HPEN hPen, oldPen; int TopMargin = (int)((float)twips_to_pixels(lpFr->rc.top, GetDeviceCaps(hdc, LOGPIXELSX)) * ratio); int BottomMargin = (int)((float)twips_to_pixels(lpFr->rc.bottom, GetDeviceCaps(hdc, LOGPIXELSX)) * ratio); int LeftMargin = (int)((float)twips_to_pixels(lpFr->rc.left, GetDeviceCaps(hdc, LOGPIXELSY)) * ratio); @@ -860,7 +863,7 @@ static void draw_preview_page(HDC hdc, HDC* hdcSized, FORMATRANGE* lpFr, float r /* Draw margin lines */ hPen = CreatePen(PS_DOT, 1, RGB(0,0,0)); - SelectObject(*hdcSized, hPen); + oldPen = SelectObject(*hdcSized, hPen); MoveToEx(*hdcSized, 0, TopMargin, NULL); LineTo(*hdcSized, bmNewWidth, TopMargin); @@ -872,6 +875,8 @@ static void draw_preview_page(HDC hdc, HDC* hdcSized, FORMATRANGE* lpFr, float r MoveToEx(*hdcSized, RightMargin, 0, NULL); LineTo(*hdcSized, RightMargin, bmNewHeight); + SelectObject(*hdcSized, oldPen); + DeleteObject(hPen); } static void draw_preview(HWND hEditorWnd, FORMATRANGE* lpFr, RECT* paper, int page)