In CSSListMenuDisplayer when top level menu item has childer but none of them is allowed to be displayed
only ending </ul> tag is printed which leads to corrupted HTML output.
This is caused by the fact that when printing starting tag <ul> there is a check:
but ending tag </ul> is not guarded:
// close the </ul> for the top menu
if (level == 0)