[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