# HG changeset patch # User Juanma Barranquero # Date 1182329180 0 # Node ID 3a8b85706c0c89eb49dfae5ca37d7dc5341a7ce0 # Parent 5131a632194a1f7a9d21384821940dca247d6c10 (_wsa_errlist): Fix typo in error message. (init_environment): Ignore any environment variable from the registry having a null value. diff -r 5131a632194a -r 3a8b85706c0c src/w32.c --- a/src/w32.c Wed Jun 20 08:27:53 2007 +0000 +++ b/src/w32.c Wed Jun 20 08:46:20 2007 +0000 @@ -113,7 +113,7 @@ /* - Initialization states + Initialization states */ static BOOL g_b_init_is_windows_9x; static BOOL g_b_init_open_process_token; @@ -486,20 +486,16 @@ the user-sid as the user id value (same for group id using the primary group sid from the process token). */ - char user_sid[256], name[256], domain[256]; - DWORD length = sizeof (name), dlength = sizeof (domain), trash; - HANDLE token = NULL; - SID_NAME_USE user_type; - - if ( - open_process_token (GetCurrentProcess (), TOKEN_QUERY, &token) - && get_token_information ( - token, TokenUser, - (PVOID) user_sid, sizeof (user_sid), &trash) - && lookup_account_sid ( - NULL, *((PSID *) user_sid), name, &length, - domain, &dlength, &user_type) - ) + char user_sid[256], name[256], domain[256]; + DWORD length = sizeof (name), dlength = sizeof (domain), trash; + HANDLE token = NULL; + SID_NAME_USE user_type; + + if (open_process_token (GetCurrentProcess (), TOKEN_QUERY, &token) + && get_token_information (token, TokenUser, + (PVOID) user_sid, sizeof (user_sid), &trash) + && lookup_account_sid (NULL, *((PSID *) user_sid), name, &length, + domain, &dlength, &user_type)) { strcpy (the_passwd.pw_name, name); /* Determine a reasonable uid value. */ @@ -524,7 +520,7 @@ /* Get group id */ if (get_token_information (token, TokenPrimaryGroup, - (PVOID) user_sid, sizeof (user_sid), &trash)) + (PVOID) user_sid, sizeof (user_sid), &trash)) { SID_IDENTIFIER_AUTHORITY * pSIA; @@ -541,7 +537,7 @@ } } /* If security calls are not supported (presumably because we - are running under Windows 95), fallback to this. */ + are running under Windows 95), fallback to this. */ else if (GetUserName (name, &length)) { strcpy (the_passwd.pw_name, name); @@ -1110,7 +1106,9 @@ { int dont_free = 0; - if ((lpval = w32_get_resource (env_vars[i].name, &dwType)) == NULL) + if ((lpval = w32_get_resource (env_vars[i].name, &dwType)) == NULL + /* Also ignore empty environment variables. */ + || *lpval == 0) { lpval = env_vars[i].def_value; dwType = REG_EXPAND_SZ; @@ -2481,7 +2479,7 @@ != INVALID_HANDLE_VALUE) { /* This is more accurate in terms of gettting the correct number - of links, but is quite slow (it is noticable when Emacs is + of links, but is quite slow (it is noticeable when Emacs is making a list of file name completions). */ BY_HANDLE_FILE_INFORMATION info; @@ -2966,7 +2964,7 @@ WSAEINVALIDPROCTABLE , "Invalid procedure table from service provider", WSAEINVALIDPROVIDER , "Invalid service provider version number", WSAEPROVIDERFAILEDINIT , "Unable to initialize a service provider", - WSASYSCALLFAILURE , "System call failured", + WSASYSCALLFAILURE , "System call failure", WSASERVICE_NOT_FOUND , "Service not found", /* not sure */ WSATYPE_NOT_FOUND , "Class type not found", WSA_E_NO_MORE , "No more resources available", /* really not sure */ @@ -4160,7 +4158,7 @@ SetConsoleCtrlHandler(shutdown_handler, TRUE); } -/* end of nt.c */ +/* end of w32.c */ /* arch-tag: 90442dd3-37be-482b-b272-ac752e3049f1 (do not change this comment) */