[Libreoffice] instructions for building on windows with OneGit

Tor Lillqvist tlillqvist at suse.com
Wed Aug 31 08:18:44 PDT 2011

> This appears to be a windows weirdity related to the fact that my account 
> name and my machine name is the same.
> Under this situation, the LookupAccountName API call will return the wrong 
> answer.

Well, "wrong" or "right" is a matter of opinion here, I guess... The documentation doesn't exactly mention this for LookupAccountName(),, true, but on the other hand, I guess that in general member computers also are "accounts" in the domain, or something, so it makes sense from that point of view...

Anyway, great catch!

Does this help?

diff --git a/sal/qa/osl/security/osl_Security.cxx b/sal/qa/osl/security/osl_Security.cxx
index ea59027..f5da4d9 100644
--- a/sal/qa/osl/security/osl_Security.cxx
+++ b/sal/qa/osl/security/osl_Security.cxx
@@ -464,8 +466,11 @@ void MyTestPlugInImpl::initialize( CPPUNIT_NS::TestFactoryRegistry *,
         // Set the count variables to the buffer sizes and retrieve the SID.
         cbSid = dwSidBufferSize;
         cchDomainName = dwDomainBufferSize;
+        WCHAR wszComputerName[MAX_COMPUTERNAME_LENGTH+1];
+        DWORD nComputerNameSize = MAX_COMPUTERNAME_LENGTH + 1;
+        GetComputerNameW( wszComputerName, &nComputerNameSize );
         if (LookupAccountNameW(
-                           NULL,            // Computer name. NULL for the local computer
+                           wszComputerName,
                            pSid,          // Pointer to the SID buffer. Use NULL to get the size needed,
                            &cbSid,          // Size of the SID buffer needed.


More information about the LibreOffice mailing list