diff --git a/reactos/lib/aclui/aclui.c b/reactos/lib/aclui/aclui.c index e973bcf49ec..dc7bb91802d 100644 --- a/reactos/lib/aclui/aclui.c +++ b/reactos/lib/aclui/aclui.c @@ -115,7 +115,8 @@ AddPrincipalToList(IN PSECURITY_PAGE sp, &SidNameUse)) { LookupResult = GetLastError(); - if (LookupResult != ERROR_NONE_MAPPED) + if (LookupResult != ERROR_NONE_MAPPED && + LookupResult != ERROR_INSUFFICIENT_BUFFER) { return FALSE; } @@ -375,7 +376,9 @@ AddPrincipalListEntry(IN PSECURITY_PAGE sp, li.iSubItem = 0; li.state = (Selected ? LVIS_SELECTED : 0); li.stateMask = LVIS_SELECTED; - li.pszText = (PrincipalListItem->DisplayString != NULL ? PrincipalListItem->DisplayString : PrincipalListItem->AccountName); + li.pszText = (PrincipalListItem->DisplayString != NULL ? + PrincipalListItem->DisplayString : + PrincipalListItem->AccountName); switch (PrincipalListItem->SidNameUse) { @@ -632,192 +635,192 @@ ResizeControls(IN PSECURITY_PAGE sp, nControls += 2; } - if (!(dwp = BeginDeferWindowPos(nControls))) + if ((dwp = BeginDeferWindowPos(nControls))) { - return; - } - - /* resize the Principal list view */ - GetWindowRect(sp->hWndPrincipalsList, - &rcControl); - if (!(dwp = DeferWindowPos(dwp, - sp->hWndPrincipalsList, - NULL, - 0, - 0, - cxWidth, - rcControl.bottom - rcControl.top, - SWP_NOMOVE | SWP_NOZORDER))) - { - return; - } - - /* move the Add Principal button */ - GetWindowRect(sp->hBtnAdd, - &rcControl); - GetWindowRect(sp->hBtnRemove, - &rcControl2); - btnSpacing = rcControl2.left - rcControl.right; - pt2.x = 0; - pt2.y = 0; - MapWindowPoints(sp->hBtnAdd, - sp->hWnd, - &pt2, - 1); - if (!(dwp = DeferWindowPos(dwp, - sp->hBtnAdd, - NULL, - pt.x + cxWidth - (rcControl2.right - rcControl2.left) - - (rcControl.right - rcControl.left) - - btnSpacing - cxEdge, - pt2.y, - 0, - 0, - SWP_NOSIZE | SWP_NOZORDER))) - { - return; - } - - /* move the Delete Principal button */ - pt2.x = 0; - pt2.y = 0; - MapWindowPoints(sp->hBtnRemove, - sp->hWnd, - &pt2, - 1); - if (!(dwp = DeferWindowPos(dwp, - sp->hBtnRemove, - NULL, - pt.x + cxWidth - (rcControl2.right - rcControl2.left) - cxEdge, - pt2.y, - 0, - 0, - SWP_NOSIZE | SWP_NOZORDER))) - { - return; - } - - /* move the Permissions For label */ - GetWindowRect(hWndAllow, - &rcControl); - GetWindowRect(hWndDeny, - &rcControl2); - GetWindowRect(sp->hPermissionsForLabel, - &rcControl3); - pt2.x = 0; - pt2.y = 0; - MapWindowPoints(sp->hPermissionsForLabel, - sp->hWnd, - &pt2, - 1); - if (!(dwp = DeferWindowPos(dwp, - sp->hPermissionsForLabel, - NULL, - 0, - 0, - cxWidth - (rcControl2.right - rcControl2.left) - - (rcControl.right - rcControl.left) - - (2 * btnSpacing) - cxEdge, - rcControl3.bottom - rcControl3.top, - SWP_NOMOVE | SWP_NOZORDER))) - { - return; - } - - /* move the Allow label */ - pt2.x = 0; - pt2.y = 0; - MapWindowPoints(hWndAllow, - sp->hWnd, - &pt2, - 1); - if (!(dwp = DeferWindowPos(dwp, - hWndAllow, - NULL, - cxWidth - (rcControl2.right - rcControl2.left) - - (rcControl.right - rcControl.left) - - btnSpacing - cxEdge, - pt2.y, - 0, - 0, - SWP_NOSIZE | SWP_NOZORDER))) - { - return; - } - - /* move the Deny label */ - pt2.x = 0; - pt2.y = 0; - MapWindowPoints(hWndDeny, - sp->hWnd, - &pt2, - 1); - if (!(dwp = DeferWindowPos(dwp, - hWndDeny, - NULL, - cxWidth - (rcControl2.right - rcControl2.left) - cxEdge, - pt2.y, - 0, - 0, - SWP_NOSIZE | SWP_NOZORDER))) - { - return; - } - - /* resize the Permissions check list box */ - GetWindowRect(sp->hAceCheckList, - &rcControl); - GetWindowRect(sp->hBtnAdvanced, - &rcControl2); - GetWindowRect(GetDlgItem(sp->hWnd, - IDC_LABEL_ADVANCED), - &rcControl3); - if (!(dwp = DeferWindowPos(dwp, - sp->hAceCheckList, - NULL, - 0, - 0, - cxWidth, - ((sp->ObjectInfo.dwFlags & SI_ADVANCED) ? - Height - (rcControl.top - rcWnd.top) - (rcControl3.bottom - rcControl3.top) - pt.x - btnSpacing : - Height - (rcControl.top - rcWnd.top) - pt.x), - SWP_NOMOVE | SWP_NOZORDER))) - { - return; - } - - if (sp->ObjectInfo.dwFlags & SI_ADVANCED) - { - /* move and resize the Advanced label */ + /* resize the Principal list view */ + GetWindowRect(sp->hWndPrincipalsList, + &rcControl); if (!(dwp = DeferWindowPos(dwp, - GetDlgItem(sp->hWnd, - IDC_LABEL_ADVANCED), + sp->hWndPrincipalsList, NULL, - pt.x, - Height - (rcControl3.bottom - rcControl3.top) - pt.x, - cxWidth - (rcControl2.right - rcControl2.left) - cxEdge, - rcControl3.bottom - rcControl3.top, - SWP_NOZORDER))) + 0, + 0, + cxWidth, + rcControl.bottom - rcControl.top, + SWP_NOMOVE | SWP_NOZORDER))) { - return; + goto EndDeferWnds; } - - /* move and resize the Advanced button */ + + /* move the Add Principal button */ + GetWindowRect(sp->hBtnAdd, + &rcControl); + GetWindowRect(sp->hBtnRemove, + &rcControl2); + btnSpacing = rcControl2.left - rcControl.right; + pt2.x = 0; + pt2.y = 0; + MapWindowPoints(sp->hBtnAdd, + sp->hWnd, + &pt2, + 1); if (!(dwp = DeferWindowPos(dwp, - sp->hBtnAdvanced, + sp->hBtnAdd, NULL, - cxWidth - (rcControl2.right - rcControl2.left) + pt.x, - Height - (rcControl2.bottom - rcControl2.top) - pt.x, + pt.x + cxWidth - (rcControl2.right - rcControl2.left) - + (rcControl.right - rcControl.left) - + btnSpacing - cxEdge, + pt2.y, 0, 0, SWP_NOSIZE | SWP_NOZORDER))) { - return; + goto EndDeferWnds; } + + /* move the Delete Principal button */ + pt2.x = 0; + pt2.y = 0; + MapWindowPoints(sp->hBtnRemove, + sp->hWnd, + &pt2, + 1); + if (!(dwp = DeferWindowPos(dwp, + sp->hBtnRemove, + NULL, + pt.x + cxWidth - (rcControl2.right - rcControl2.left) - cxEdge, + pt2.y, + 0, + 0, + SWP_NOSIZE | SWP_NOZORDER))) + { + goto EndDeferWnds; + } + + /* move the Permissions For label */ + GetWindowRect(hWndAllow, + &rcControl); + GetWindowRect(hWndDeny, + &rcControl2); + GetWindowRect(sp->hPermissionsForLabel, + &rcControl3); + pt2.x = 0; + pt2.y = 0; + MapWindowPoints(sp->hPermissionsForLabel, + sp->hWnd, + &pt2, + 1); + if (!(dwp = DeferWindowPos(dwp, + sp->hPermissionsForLabel, + NULL, + 0, + 0, + cxWidth - (rcControl2.right - rcControl2.left) - + (rcControl.right - rcControl.left) - + (2 * btnSpacing) - cxEdge, + rcControl3.bottom - rcControl3.top, + SWP_NOMOVE | SWP_NOZORDER))) + { + goto EndDeferWnds; + } + + /* move the Allow label */ + pt2.x = 0; + pt2.y = 0; + MapWindowPoints(hWndAllow, + sp->hWnd, + &pt2, + 1); + if (!(dwp = DeferWindowPos(dwp, + hWndAllow, + NULL, + cxWidth - (rcControl2.right - rcControl2.left) - + (rcControl.right - rcControl.left) - + btnSpacing - cxEdge, + pt2.y, + 0, + 0, + SWP_NOSIZE | SWP_NOZORDER))) + { + goto EndDeferWnds; + } + + /* move the Deny label */ + pt2.x = 0; + pt2.y = 0; + MapWindowPoints(hWndDeny, + sp->hWnd, + &pt2, + 1); + if (!(dwp = DeferWindowPos(dwp, + hWndDeny, + NULL, + cxWidth - (rcControl2.right - rcControl2.left) - cxEdge, + pt2.y, + 0, + 0, + SWP_NOSIZE | SWP_NOZORDER))) + { + goto EndDeferWnds; + } + + /* resize the Permissions check list box */ + GetWindowRect(sp->hAceCheckList, + &rcControl); + GetWindowRect(sp->hBtnAdvanced, + &rcControl2); + GetWindowRect(GetDlgItem(sp->hWnd, + IDC_LABEL_ADVANCED), + &rcControl3); + if (!(dwp = DeferWindowPos(dwp, + sp->hAceCheckList, + NULL, + 0, + 0, + cxWidth, + ((sp->ObjectInfo.dwFlags & SI_ADVANCED) ? + Height - (rcControl.top - rcWnd.top) - + (rcControl3.bottom - rcControl3.top) - pt.x - btnSpacing : + Height - (rcControl.top - rcWnd.top) - pt.x), + SWP_NOMOVE | SWP_NOZORDER))) + { + goto EndDeferWnds; + } + + if (sp->ObjectInfo.dwFlags & SI_ADVANCED) + { + /* move and resize the Advanced label */ + if (!(dwp = DeferWindowPos(dwp, + GetDlgItem(sp->hWnd, + IDC_LABEL_ADVANCED), + NULL, + pt.x, + Height - (rcControl3.bottom - rcControl3.top) - pt.x, + cxWidth - (rcControl2.right - rcControl2.left) - cxEdge, + rcControl3.bottom - rcControl3.top, + SWP_NOZORDER))) + { + goto EndDeferWnds; + } + + /* move and resize the Advanced button */ + if (!(dwp = DeferWindowPos(dwp, + sp->hBtnAdvanced, + NULL, + cxWidth - (rcControl2.right - rcControl2.left) + pt.x, + Height - (rcControl2.bottom - rcControl2.top) - pt.x, + 0, + 0, + SWP_NOSIZE | SWP_NOZORDER))) + { + goto EndDeferWnds; + } + } + + EndDeferWindowPos(dwp); } - - EndDeferWindowPos(dwp); - + +EndDeferWnds: /* update the width of the principal list view column */ GetClientRect(sp->hWndPrincipalsList, &rcControl); diff --git a/reactos/lib/aclui/misc.c b/reactos/lib/aclui/misc.c index a07e734ca4f..078d1a19a54 100644 --- a/reactos/lib/aclui/misc.c +++ b/reactos/lib/aclui/misc.c @@ -233,7 +233,7 @@ InitializeObjectPicker(IN PCWSTR ServerName, sizeof(DSOP_SCOPE_INIT_INFO), DSOP_SCOPE_TYPE_TARGET_COMPUTER, DSOP_SCOPE_FLAG_DEFAULT_FILTER_USERS | DSOP_SCOPE_FLAG_DEFAULT_FILTER_GROUPS | - DSOP_SCOPE_FLAG_STARTING_SCOPE, + DSOP_SCOPE_FLAG_STARTING_SCOPE, { { 0, @@ -241,7 +241,7 @@ InitializeObjectPicker(IN PCWSTR ServerName, 0 }, DSOP_DOWNLEVEL_FILTER_USERS | DSOP_DOWNLEVEL_FILTER_LOCAL_GROUPS | - DSOP_DOWNLEVEL_FILTER_GLOBAL_GROUPS | DSOP_DOWNLEVEL_FILTER_ALL_WELLKNOWN_SIDS + DSOP_DOWNLEVEL_FILTER_GLOBAL_GROUPS | DSOP_DOWNLEVEL_FILTER_ALL_WELLKNOWN_SIDS }, NULL, NULL, @@ -304,7 +304,7 @@ InvokeObjectPickerDialog(IN IDsObjectPicker *pDsObjectPicker, fe.dwAspect = DVASPECT_CONTENT; fe.lindex = -1; fe.tymed = TYMED_HGLOBAL; - + hRet = pdo->lpVtbl->GetData(pdo, &fe, &stm); @@ -317,11 +317,11 @@ InvokeObjectPickerDialog(IN IDsObjectPicker *pDsObjectPicker, PSID pSid; UINT i; BOOL contLoop = TRUE; - + for (i = 0; i < SelectionList->cItems && contLoop; i++) { vSid = SelectionList->aDsSelection[i].pvarFetchedAttributes; - + if (vSid != NULL && V_VT(vSid) == (VT_ARRAY | VT_UI1)) { hRet = SafeArrayAccessData(V_ARRAY(vSid), @@ -330,7 +330,7 @@ InvokeObjectPickerDialog(IN IDsObjectPicker *pDsObjectPicker, { break; } - + if (pSid != NULL) { contLoop = SelectedSidCallback(pDsObjectPicker, @@ -338,14 +338,14 @@ InvokeObjectPickerDialog(IN IDsObjectPicker *pDsObjectPicker, pSid, Context); } - + SafeArrayUnaccessData(V_ARRAY(vSid)); } } - + GlobalUnlock(stm.hGlobal); } - + ReleaseStgMedium(&stm); }