From 4365b34838f14c0a6908ea794429ba6e493a59d2 Mon Sep 17 00:00:00 2001 From: Hans Leidekker Date: Fri, 27 Mar 2009 13:41:35 +0100 Subject: [PATCH] msi: Allocate token information buffer dynamically. --- dlls/msi/tests/msi.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/dlls/msi/tests/msi.c b/dlls/msi/tests/msi.c index 13afd92a78b..c3ef72b47fc 100644 --- a/dlls/msi/tests/msi.c +++ b/dlls/msi/tests/msi.c @@ -516,15 +516,19 @@ static void create_test_guid(LPSTR prodcode, LPSTR squashed) static void get_user_sid(LPSTR *usersid) { HANDLE token; - BYTE buf[1024]; DWORD size; PTOKEN_USER user; OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &token); - size = sizeof(buf); - GetTokenInformation(token, TokenUser, buf, size, &size); - user = (PTOKEN_USER)buf; + + size = 0; + GetTokenInformation(token, TokenUser, NULL, size, &size); + user = HeapAlloc(GetProcessHeap(), 0, size); + + GetTokenInformation(token, TokenUser, user, size, &size); pConvertSidToStringSidA(user->User.Sid, usersid); + + HeapFree(GetProcessHeap(), 0, user); CloseHandle(token); }