Module: wine Branch: master Commit: 4365b34838f14c0a6908ea794429ba6e493a59d2 URL: http://source.winehq.org/git/wine.git/?a=commit;h=4365b34838f14c0a6908ea7944...
Author: Hans Leidekker hans@codeweavers.com Date: Fri Mar 27 13:41:35 2009 +0100
msi: Allocate token information buffer dynamically.
---
dlls/msi/tests/msi.c | 12 ++++++++---- 1 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/dlls/msi/tests/msi.c b/dlls/msi/tests/msi.c index 13afd92..c3ef72b 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); }