[PDH] Sync with Wine Staging 4.0. CORE-15682
[reactos.git] / dll / win32 / pdh / pdh_main.c
index fb131bd..bc3674a 100644 (file)
@@ -210,7 +210,7 @@ static const struct source counter_sources[] =
 static BOOL is_local_machine( const WCHAR *name, DWORD len )
 {
     WCHAR buf[MAX_COMPUTERNAME_LENGTH + 1];
-    DWORD buflen = sizeof(buf) / sizeof(buf[0]);
+    DWORD buflen = ARRAY_SIZE(buf);
 
     if (!GetComputerNameW( buf, &buflen )) return FALSE;
     return len == buflen && !memicmpW( name, buf, buflen );
@@ -274,7 +274,7 @@ PDH_STATUS WINAPI PdhAddCounterW( PDH_HQUERY hquery, LPCWSTR path,
     }
 
     *hcounter = NULL;
-    for (i = 0; i < sizeof(counter_sources) / sizeof(counter_sources[0]); i++)
+    for (i = 0; i < ARRAY_SIZE(counter_sources); i++)
     {
         if (pdh_match_path( counter_sources[i].path, path ))
         {
@@ -867,7 +867,7 @@ PDH_STATUS WINAPI PdhLookupPerfIndexByNameW( LPCWSTR machine, LPCWSTR name, LPDW
         FIXME("remote machine not supported\n");
         return PDH_CSTATUS_NO_MACHINE;
     }
-    for (i = 0; i < sizeof(counter_sources) / sizeof(counter_sources[0]); i++)
+    for (i = 0; i < ARRAY_SIZE(counter_sources); i++)
     {
         if (pdh_match_path( counter_sources[i].path, name ))
         {
@@ -886,7 +886,7 @@ PDH_STATUS WINAPI PdhLookupPerfNameByIndexA( LPCSTR machine, DWORD index, LPSTR
     PDH_STATUS ret;
     WCHAR *machineW = NULL;
     WCHAR bufferW[PDH_MAX_COUNTER_NAME];
-    DWORD sizeW = sizeof(bufferW) / sizeof(WCHAR);
+    DWORD sizeW = ARRAY_SIZE(bufferW);
 
     TRACE("%s %d %p %p\n", debugstr_a(machine), index, buffer, size);
 
@@ -925,7 +925,7 @@ PDH_STATUS WINAPI PdhLookupPerfNameByIndexW( LPCWSTR machine, DWORD index, LPWST
     if (!buffer || !size) return PDH_INVALID_ARGUMENT;
     if (!index) return ERROR_SUCCESS;
 
-    for (i = 0; i < sizeof(counter_sources) / sizeof(counter_sources[0]); i++)
+    for (i = 0; i < ARRAY_SIZE(counter_sources); i++)
     {
         if (counter_sources[i].index == index)
         {
@@ -1077,12 +1077,24 @@ PDH_STATUS WINAPI PdhValidatePathW( LPCWSTR path )
 
     if ((ret = validate_path( path ))) return ret;
 
-    for (i = 0; i < sizeof(counter_sources) / sizeof(counter_sources[0]); i++)
+    for (i = 0; i < ARRAY_SIZE(counter_sources); i++)
         if (pdh_match_path( counter_sources[i].path, path )) return ERROR_SUCCESS;
 
     return PDH_CSTATUS_NO_COUNTER;
 }
 
+/***********************************************************************
+ *              PdhVbAddCounter   (PDH.@)
+ */
+PDH_STATUS WINAPI PdhVbAddCounter( PDH_HQUERY query, LPCSTR path, PDH_HCOUNTER *counter )
+{
+    FIXME("%p, %s, %p: stub!\n", query, debugstr_a(path), counter);
+
+    if (!path) return PDH_INVALID_ARGUMENT;
+
+    return PDH_NOT_IMPLEMENTED;
+}
+
 /***********************************************************************
  *              PdhValidatePathExA   (PDH.@)
  */