InventoryFolderBase GetFolderIfValidAndNotInTrash(UUID folderId, CachedUserInfo uInfo) { try { //first make sure the folder exists at all InventoryFolderBase desiredFolder = uInfo.GetFolderAttributesChecked(folderId); //this will throw if the user doesnt own the folder or if it doesnt exist if (desiredFolder == null) return null; InventoryFolderBase topLevelFolder = uInfo.FindTopLevelFolderFor(desiredFolder.ID); if ((topLevelFolder != null) && (topLevelFolder.Type != (int)AssetType.TrashFolder)) { return desiredFolder; } } catch (Exception e) { m_log.InfoFormat("[AGENT INVENTORY] Unable to check heirarchy for {0}. {1}", folderId, e); } return null; }