Michael Stefaniuc : include: Add a generic available ARRAY_SIZE().

Alexandre Julliard julliard at winehq.org
Sun Mar 3 13:21:29 CST 2019


Module: wine
Branch: oldstable
Commit: eb5de88738da819c0c0c5f39643e36c3ccd78728
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=eb5de88738da819c0c0c5f39643e36c3ccd78728

Author: Michael Stefaniuc <mstefani at winehq.org>
Date:   Wed Jul  4 01:10:37 2018 +0200

include: Add a generic available ARRAY_SIZE().

Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
(cherry picked from commit 962b31c80b74cfc479da386a8c76d55d26aed752)
Conflicts:
	dlls/advapi32/advapi32_misc.h
	dlls/d3d12/d3d12_main.c
	dlls/d3d9/d3d9_private.h
	dlls/winevulkan/vulkan_private.h
	dlls/xmllite/xmllite_private.h
	programs/regedit/main.h
	programs/winedbg/debugger.h
Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>

---

 dlls/d2d1/d2d1_private.h         | 4 ----
 dlls/d3d11/d3d11_private.h       | 4 ----
 dlls/d3drm/d3drm_private.h       | 4 ----
 dlls/d3dx9_36/d3dx9_private.h    | 2 --
 dlls/ddraw/ddraw_private.h       | 2 --
 dlls/dmloader/dmloader_private.h | 1 -
 dlls/msi/tokenize.c              | 2 --
 dlls/usp10/usp10_internal.h      | 4 ----
 dlls/wined3d/wined3d_private.h   | 4 ----
 dlls/xmllite/writer.c            | 2 --
 include/wine/test.h              | 4 +++-
 include/winnt.h                  | 4 ++++
 programs/notepad/main.h          | 2 --
 programs/reg/reg.h               | 1 -
 programs/regedit/regproc.c       | 2 --
 tools/make_xftmpl.c              | 2 --
 16 files changed, 7 insertions(+), 37 deletions(-)

diff --git a/dlls/d2d1/d2d1_private.h b/dlls/d2d1/d2d1_private.h
index 98298f8..760bff6 100644
--- a/dlls/d2d1/d2d1_private.h
+++ b/dlls/d2d1/d2d1_private.h
@@ -30,10 +30,6 @@
 #endif
 #include "dwrite_2.h"
 
-#ifndef ARRAY_SIZE
-#define ARRAY_SIZE(array) (sizeof(array) / sizeof((array)[0]))
-#endif
-
 enum d2d_brush_type
 {
     D2D_BRUSH_TYPE_SOLID,
diff --git a/dlls/d3d11/d3d11_private.h b/dlls/d3d11/d3d11_private.h
index e7fd3a7..3f9bed2 100644
--- a/dlls/d3d11/d3d11_private.h
+++ b/dlls/d3d11/d3d11_private.h
@@ -37,10 +37,6 @@
 #include "wine/winedxgi.h"
 #include "wine/rbtree.h"
 
-#ifndef ARRAY_SIZE
-#define ARRAY_SIZE(array) (sizeof(array) / sizeof((array)[0]))
-#endif
-
 #define MAKE_TAG(ch0, ch1, ch2, ch3) \
     ((DWORD)(ch0) | ((DWORD)(ch1) << 8) | \
     ((DWORD)(ch2) << 16) | ((DWORD)(ch3) << 24 ))
diff --git a/dlls/d3drm/d3drm_private.h b/dlls/d3drm/d3drm_private.h
index 65e0016..2f3269e 100644
--- a/dlls/d3drm/d3drm_private.h
+++ b/dlls/d3drm/d3drm_private.h
@@ -32,10 +32,6 @@
 #include "wine/debug.h"
 #include "wine/list.h"
 
-#ifndef ARRAY_SIZE
-#define ARRAY_SIZE(a) (sizeof(a) / sizeof(*(a)))
-#endif
-
 struct d3drm_object
 {
     LONG ref;
diff --git a/dlls/d3dx9_36/d3dx9_private.h b/dlls/d3dx9_36/d3dx9_private.h
index 5ac5e63..0dbd160 100644
--- a/dlls/d3dx9_36/d3dx9_private.h
+++ b/dlls/d3dx9_36/d3dx9_private.h
@@ -30,8 +30,6 @@
 
 #define ULONG64_MAX (~(ULONG64)0)
 
-#define ARRAY_SIZE(array) (sizeof(array)/sizeof(*array))
-
 struct vec4
 {
     float x, y, z, w;
diff --git a/dlls/ddraw/ddraw_private.h b/dlls/ddraw/ddraw_private.h
index 0b6666a..34e221a 100644
--- a/dlls/ddraw/ddraw_private.h
+++ b/dlls/ddraw/ddraw_private.h
@@ -38,8 +38,6 @@
 #include "wine/list.h"
 #include "wine/wined3d.h"
 
-#define ARRAY_SIZE(array) (sizeof(array) / sizeof((array)[0]))
-
 extern const struct wined3d_parent_ops ddraw_null_wined3d_parent_ops DECLSPEC_HIDDEN;
 extern DWORD force_refresh_rate DECLSPEC_HIDDEN;
 
diff --git a/dlls/dmloader/dmloader_private.h b/dlls/dmloader/dmloader_private.h
index ecda299..36e2bd8 100644
--- a/dlls/dmloader/dmloader_private.h
+++ b/dlls/dmloader/dmloader_private.h
@@ -42,7 +42,6 @@
 #include "dmusicf.h"
 #include "dmusics.h"
 
-#define ARRAY_SIZE(a) (sizeof(a)/sizeof((a)[0]))
 #define ICOM_THIS_MULTI(impl,field,iface) impl* const This=(impl*)((char*)(iface) - offsetof(impl,field))
 
 /* dmloader.dll global (for DllCanUnloadNow) */
diff --git a/dlls/msi/tokenize.c b/dlls/msi/tokenize.c
index 1656fd8..d1c2da9 100644
--- a/dlls/msi/tokenize.c
+++ b/dlls/msi/tokenize.c
@@ -77,8 +77,6 @@ static const WCHAR updateW[] = {'U','P','D','A','T','E'};
 static const WCHAR valuesW[] = {'V','A','L','U','E','S'};
 static const WCHAR whereW[] = {'W','H','E','R','E'};
 
-#define ARRAY_SIZE(array) (sizeof(array)/sizeof((array)[0]))
-
 /*
 ** These are the keywords
 ** They MUST be in alphabetical order
diff --git a/dlls/usp10/usp10_internal.h b/dlls/usp10/usp10_internal.h
index 2dfca86..f48838e 100644
--- a/dlls/usp10/usp10_internal.h
+++ b/dlls/usp10/usp10_internal.h
@@ -24,10 +24,6 @@
             ( (ULONG)_x2 <<  8 ) |     \
               (ULONG)_x1         )
 
-#ifndef ARRAY_SIZE
-#define ARRAY_SIZE(array) (sizeof(array) / sizeof((array)[0]))
-#endif
-
 enum usp10_script
 {
     Script_Undefined = 0x00,
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 56b0f90..004bcd6 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -57,10 +57,6 @@
 #include "wine/rbtree.h"
 #include "wine/wgl_driver.h"
 
-#ifndef ARRAY_SIZE
-#define ARRAY_SIZE(array) (sizeof(array) / sizeof((array)[0]))
-#endif
-
 #define MAKEDWORD_VERSION(maj, min) (((maj & 0xffffu) << 16) | (min & 0xffffu))
 
 /* Driver quirks */
diff --git a/dlls/xmllite/writer.c b/dlls/xmllite/writer.c
index 9bf7e63..88f75b6 100644
--- a/dlls/xmllite/writer.c
+++ b/dlls/xmllite/writer.c
@@ -37,8 +37,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(xmllite);
 /* not defined in public headers */
 DEFINE_GUID(IID_IXmlWriterOutput, 0xc1131708, 0x0f59, 0x477f, 0x93, 0x59, 0x7d, 0x33, 0x24, 0x51, 0xbc, 0x1a);
 
-#define ARRAY_SIZE(array) (sizeof(array)/sizeof((array)[0]))
-
 static const WCHAR closeelementW[] = {'<','/'};
 static const WCHAR closetagW[] = {' ','/','>'};
 static const WCHAR closepiW[] = {'?','>'};
diff --git a/include/wine/test.h b/include/wine/test.h
index d3ccd09..fd427b5 100644
--- a/include/wine/test.h
+++ b/include/wine/test.h
@@ -127,7 +127,9 @@ extern void __winetest_cdecl winetest_trace( const char *msg, ... ) WINETEST_PRI
 #define todo_wine_if(is_todo)   todo_if((is_todo) && !strcmp(winetest_platform, "wine"))
 
 
-#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
+#ifndef ARRAY_SIZE
+# define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
+#endif
 
 #ifdef NONAMELESSUNION
 # define U(x)  (x).u
diff --git a/include/winnt.h b/include/winnt.h
index 3eac94d..053bef3 100644
--- a/include/winnt.h
+++ b/include/winnt.h
@@ -759,6 +759,10 @@ typedef struct _MEMORY_BASIC_INFORMATION
 #define CONTAINING_RECORD(address, type, field) \
   ((type *)((PCHAR)(address) - offsetof(type, field)))
 
+#ifdef __WINESRC__
+# define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
+#endif
+
 /* Types */
 
 typedef struct _LIST_ENTRY {
diff --git a/programs/notepad/main.h b/programs/notepad/main.h
index b672be6..e0efef0 100644
--- a/programs/notepad/main.h
+++ b/programs/notepad/main.h
@@ -19,8 +19,6 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-#define ARRAY_SIZE(a) sizeof(a)/sizeof((a)[0])
-
 #include "notepad_res.h"
 
 #define MAX_STRING_LEN      255
diff --git a/programs/reg/reg.h b/programs/reg/reg.h
index eb792bb..42001c7 100644
--- a/programs/reg/reg.h
+++ b/programs/reg/reg.h
@@ -21,7 +21,6 @@
 
 #include "resource.h"
 
-#define ARRAY_SIZE(A) (sizeof(A)/sizeof(*A))
 #define MAX_SUBKEY_LEN   257
 
 /* reg.c */
diff --git a/programs/regedit/regproc.c b/programs/regedit/regproc.c
index 5866ad0..a6183c9 100644
--- a/programs/regedit/regproc.c
+++ b/programs/regedit/regproc.c
@@ -42,8 +42,6 @@ static HKEY reg_class_keys[] = {
             HKEY_CURRENT_CONFIG, HKEY_CURRENT_USER, HKEY_DYN_DATA
         };
 
-#define ARRAY_SIZE(A) (sizeof(A)/sizeof(*A))
-
 void *heap_xalloc(size_t size)
 {
     void *buf = HeapAlloc(GetProcessHeap(), 0, size);
diff --git a/tools/make_xftmpl.c b/tools/make_xftmpl.c
index 6a22fef..49a1273 100644
--- a/tools/make_xftmpl.c
+++ b/tools/make_xftmpl.c
@@ -35,8 +35,6 @@
 #include "windef.h"
 #include "guiddef.h"
 
-#define ARRAY_SIZE(array) (sizeof(array)/sizeof(array[0]))
-
 #define TOKEN_NAME         1
 #define TOKEN_STRING       2
 #define TOKEN_INTEGER      3




More information about the wine-cvs mailing list