- Select all was selecting hidden elements - Select flush was also selecting hidden elements (so selecting two *visible* vertices of a *hidden* edge selected that hidden edge) - Several places were using BM_SetHFlag(elem, BM_SELECT) directly, when they should be using BM_Select(bm, elem) - In certain scenarios, "reveal all" could leave you with selections which aren't valid in that selection mode (e.g. lonely edges selected in face select mode)