[MSPAINT] Revert LoadDIBFromFile for workaround (#2186)

CORE-16566
This commit is contained in:
Katayama Hirofumi MZ 2019-12-28 22:30:21 +09:00 committed by GitHub
parent e92ab76d0d
commit be40a0e296
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 8 deletions

View file

@ -34,6 +34,6 @@ add_rc_deps(rsrc.rc ${mspaint_rc_deps})
add_executable(mspaint ${SOURCE} rsrc.rc)
set_module_type(mspaint win32gui UNICODE)
target_link_libraries(mspaint uuid)
add_importlibs(mspaint hhctrl comdlg32 shell32 user32 gdi32 gdiplus advapi32 comctl32 msvcrt kernel32 rpcrt4 shlwapi)
add_importlibs(mspaint hhctrl comdlg32 shell32 user32 gdi32 advapi32 comctl32 msvcrt kernel32 rpcrt4 shlwapi)
add_pch(mspaint precomp.h SOURCE)
add_cd_file(TARGET mspaint DESTINATION reactos/system32 FOR all)

View file

@ -83,8 +83,9 @@ void ShowFileLoadError(LPCTSTR name)
void
LoadDIBFromFile(HBITMAP * hBitmap, LPCTSTR name, LPSYSTEMTIME time, int *size, int *hRes, int *vRes)
{
using namespace Gdiplus;
Bitmap img(CStringW(name), FALSE); // always use WCHAR string
CImage img;
img.Load(name);
*hBitmap = img.Detach();
if (!hBitmap)
{
@ -92,8 +93,6 @@ LoadDIBFromFile(HBITMAP * hBitmap, LPCTSTR name, LPSYSTEMTIME time, int *size, i
return;
}
img.GetHBITMAP(Color(255, 255, 255), hBitmap);
// update time and size
HANDLE hFile =
CreateFile(name, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_FLAG_SEQUENTIAL_SCAN, NULL);
@ -112,9 +111,10 @@ LoadDIBFromFile(HBITMAP * hBitmap, LPCTSTR name, LPSYSTEMTIME time, int *size, i
if (size)
*size = GetFileSize(hFile, NULL);
// update hRes and vRes
*hRes = (int) (img.GetHorizontalResolution() * 1000 / 25.4);
*vRes = (int) (img.GetVerticalResolution() * 1000 / 25.4);
HDC hScreenDC = GetDC(NULL);
*hRes = (int)(GetDeviceCaps(hScreenDC, LOGPIXELSX) * 1000 / 25.4);
*vRes = (int)(GetDeviceCaps(hScreenDC, LOGPIXELSY) * 1000 / 25.4);
ReleaseDC(NULL, hScreenDC);
CloseHandle(hFile);
}