From b5e42836311fa14c38917f63e8c18a7cf245344f Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Fri, 25 Mar 2016 23:15:28 +0100
Subject: user.exe16: Don't open code CONTAINING_RECORD.

---
 dlls/user.exe16/user.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/dlls/user.exe16/user.c b/dlls/user.exe16/user.c
index aba797d..376c521 100644
--- a/dlls/user.exe16/user.c
+++ b/dlls/user.exe16/user.c
@@ -87,10 +87,7 @@ static BOOL CALLBACK gray_string_callback( HDC hdc, LPARAM param, INT len )
 /* callback for 16-bit gray string proc with string pointer */
 static BOOL CALLBACK gray_string_callback_ptr( HDC hdc, LPARAM param, INT len )
 {
-    const struct gray_string_info *info;
-    char *str = (char *)param;
-
-    info = (struct gray_string_info *)(str - offsetof( struct gray_string_info, str ));
+    const struct gray_string_info *info = CONTAINING_RECORD( (void *)param, struct gray_string_info, str );
     return gray_string_callback( hdc, (LPARAM)info, len );
 }
 
-- 
2.7.1

