This is indeed very funny. In my tests the \ifx .. \fi also causes the overfull vbox warning and I can't really see or understand why. I tried some variations but without success.
–
Martin Scharrer♦Jul 28 '11 at 11:03

3 Answers
3

I believe that what happens is beamer calculates the total height of the head at the beginning of the document, before \insertsection is set, and uses this value to calculate the other dimensions of the page. With the head empty, it expects the size of the head to be 0, and if the head is not empty, the whole page is overfull. Notice that on the pages with the section head, with the original code, the navigation line is pushed out of the page, so it disappears.

Also, it has the disadvantage that if there is a lower separation line \begin{beamercolorbox}[colsep=0.5pt]{lower separation line head}\end{beamercolorbox} to seperate headline from normal text, it will not be placed correctly.
–
ArchibaldJul 28 '11 at 15:39

Yes, it "solves" the issue because the conditional is always false, so it's equivalent to not putting the conditional at all. But the OP doesn't want the colored band when the section title has not yet been set.
–
egregJul 28 '11 at 12:05

Hmm, right I thought \insertsection was user supplied, but it's some beamer command. Looking at the code I can't understand what's going on… looks like beamer does multiple passes: using \ifx\insertsection\empty\vskip 30pt\else we can see that the 'non-else' part is taken into account even if the 'else' part is the displayed one.
–
Stéphane GimenezJul 28 '11 at 13:11