[ros-diffs] [greatlrd] 28750: revert 28748 that change are incorrect, it shall only check if the bits are set or not, if no flag are set we shall fail, if one flag are set we shall doing the call.
greatlrd at svn.reactos.org
greatlrd at svn.reactos.org
Sat Sep 1 22:25:51 CEST 2007
Author: greatlrd
Date: Sun Sep 2 00:25:50 2007
New Revision: 28750
URL: http://svn.reactos.org/svn/reactos?rev=28750&view=rev
Log:
revert 28748 that change are incorrect,
it shall only check if the bits are set or not,
if no flag are set we shall fail, if one flag are set we shall doing the call.
Modified:
trunk/reactos/dll/win32/gdi32/objects/font.c
Modified: trunk/reactos/dll/win32/gdi32/objects/font.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/objects/font.c?rev=28750&r1=28749&r2=28750&view=diff
==============================================================================
--- trunk/reactos/dll/win32/gdi32/objects/font.c (original)
+++ trunk/reactos/dll/win32/gdi32/objects/font.c Sun Sep 2 00:25:50 2007
@@ -1091,13 +1091,17 @@
STDCALL
AddFontResourceExW ( LPCWSTR lpszFilename, DWORD fl, PVOID pvReserved )
{
- if (fl & ~(FR_PRIVATE | FR_NOT_ENUM))
+ int retVal = 0;
+
+ if (fl & (FR_PRIVATE | FR_NOT_ENUM))
+ {
+ retVal = GdiAddFontResourceW(lpszFilename, fl,0);
+ }
+ else
{
SetLastError( ERROR_INVALID_PARAMETER );
- return 0;
- }
-
- return GdiAddFontResourceW(lpszFilename, fl,0);
+ }
+ return retVal;
}
@@ -1110,24 +1114,26 @@
{
NTSTATUS Status;
PWSTR FilenameW;
- int rc;
-
- if (fl & ~(FR_PRIVATE | FR_NOT_ENUM))
+ int rc = 0;
+
+ if (!(fl & (FR_PRIVATE | FR_NOT_ENUM)))
{
SetLastError( ERROR_INVALID_PARAMETER );
- return 0;
- }
-
- Status = HEAP_strdupA2W ( &FilenameW, lpszFilename );
- if ( !NT_SUCCESS (Status) )
- {
- SetLastError (RtlNtStatusToDosError(Status));
- return 0;
- }
-
- rc = GdiAddFontResourceW ( FilenameW, fl, 0 );
- HEAP_free ( FilenameW );
- return rc;
+ }
+ else
+ {
+ Status = HEAP_strdupA2W ( &FilenameW, lpszFilename );
+ if ( !NT_SUCCESS (Status) )
+ {
+ SetLastError (RtlNtStatusToDosError(Status));
+ }
+ else
+ {
+ rc = GdiAddFontResourceW ( FilenameW, fl, 0 );
+ HEAP_free ( FilenameW );
+ }
+ }
+ return rc;
}
More information about the Ros-diffs
mailing list