diff --git a/reactos/dll/win32/gdi32/misc/stubsa.c b/reactos/dll/win32/gdi32/misc/stubsa.c index 550c8161b31..814e9dbbdcf 100644 --- a/reactos/dll/win32/gdi32/misc/stubsa.c +++ b/reactos/dll/win32/gdi32/misc/stubsa.c @@ -271,15 +271,37 @@ GetGlyphIndicesA( } /* - * @unimplemented + * @implemented */ UINT STDCALL -GetStringBitmapA(HDC hdc,LPSTR psz,BOOL unknown,UINT cj,BYTE *lpSB) +GetStringBitmapA(HDC hdc, + LPSTR psz, + BOOL DoCall, + UINT cj, + BYTE *lpSB) { - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; + + NTSTATUS Status; + PWSTR pwsz; + UINT retValue = 0; + + if (DoCall) + { + Status = HEAP_strdupA2W ( &pwsz, psz ); + if ( !NT_SUCCESS (Status) ) + { + SetLastError (RtlNtStatusToDosError(Status)); + } + else + { + retValue = NtGdiGetStringBitmapW(hdc, pwsz, 1, lpSB, cj); + HEAP_free ( pwsz ); + } + } + + return retValue; + }