From 41a00d9279529ca7c5b98958eb39f53fbbd981ed Mon Sep 17 00:00:00 2001 From: Andrew Schwartzmeyer Date: Wed, 22 Jul 2015 11:24:57 -0700 Subject: [PATCH] Clarify lpBuffer layout in GetUserName unit test --- tests/test-getusername.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/tests/test-getusername.cpp b/tests/test-getusername.cpp index c2c9d1c2d..825e94960 100644 --- a/tests/test-getusername.cpp +++ b/tests/test-getusername.cpp @@ -26,9 +26,11 @@ TEST(GetUserName,simple) // GetUserName sets lpnSize to length of username including null ASSERT_EQ(username.size()+1, lpnSize); - // copy UTF-16 bytes from lpBuffer to vector for conversion - vector input(reinterpret_cast(&lpBuffer[0]), - reinterpret_cast(&lpBuffer[lpnSize-1])); + // copy UTF-16 bytes (excluding null) from lpBuffer to vector for conversion + unsigned char *begin = reinterpret_cast(&lpBuffer[0]); + // -1 to skip null; *2 because UTF-16 encodes two bytes per character + unsigned char *end = begin + (lpnSize-1)*2; + vector input(begin, end); // convert to UTF-8 for assertion string output; Utf16leToUtf8(input, output);