[MSGINA]
authorEric Kohl <eric.kohl@reactos.org>
Tue, 11 Mar 2014 20:33:25 +0000 (20:33 +0000)
committerEric Kohl <eric.kohl@reactos.org>
Tue, 11 Mar 2014 20:33:25 +0000 (20:33 +0000)
Do not close the logon dialog if the user failed to log on.

svn path=/trunk/; revision=62478

reactos/dll/win32/msgina/gui.c

index 2b5911d..1bd863e 100644 (file)
@@ -922,7 +922,7 @@ GUILoggedOnSAS(
 
 
 static
 
 
 static
-INT
+BOOL
 DoLogon(
     IN HWND hwndDlg,
     IN OUT PGINA_CONTEXT pgContext)
 DoLogon(
     IN HWND hwndDlg,
     IN OUT PGINA_CONTEXT pgContext)
@@ -930,7 +930,7 @@ DoLogon(
     LPWSTR UserName = NULL;
     LPWSTR Password = NULL;
     LPWSTR Domain = NULL;
     LPWSTR UserName = NULL;
     LPWSTR Password = NULL;
     LPWSTR Domain = NULL;
-    INT result = WLX_SAS_ACTION_NONE;
+    BOOL result = FALSE;
     NTSTATUS Status, SubStatus = STATUS_SUCCESS;
 
     if (GetTextboxText(hwndDlg, IDC_USERNAME, &UserName) && *UserName == '\0')
     NTSTATUS Status, SubStatus = STATUS_SUCCESS;
 
     if (GetTextboxText(hwndDlg, IDC_USERNAME, &UserName) && *UserName == '\0')
@@ -1003,7 +1003,7 @@ TRACE("DoLoginTasks failed! Status 0x%08lx\n", Status);
     ZeroMemory(pgContext->Password, 256 * sizeof(WCHAR));
     wcscpy(pgContext->Password, Password);
 
     ZeroMemory(pgContext->Password, 256 * sizeof(WCHAR));
     wcscpy(pgContext->Password, Password);
 
-    result = WLX_SAS_ACTION_LOGON;
+    result = TRUE;
 
 done:
     if (UserName != NULL)
 
 done:
     if (UserName != NULL)
@@ -1074,7 +1074,8 @@ LoggedOutWindowProc(
             switch (LOWORD(wParam))
             {
                 case IDOK:
             switch (LOWORD(wParam))
             {
                 case IDOK:
-                    EndDialog(hwndDlg, DoLogon(hwndDlg, pgContext));
+                    if (DoLogon(hwndDlg, pgContext))
+                        EndDialog(hwndDlg, WLX_SAS_ACTION_LOGON);
                     return TRUE;
 
                 case IDCANCEL:
                     return TRUE;
 
                 case IDCANCEL: