longtable changes the page heading

I think it's a bug sorry, there are similar (but different) instances in the bugs database, a workaround is to modify a local copy of longtable around line 402 to lose the vboxing.

      \global\vsize\@colht
%      \vbox
        {\unvbox\z@\box\ifvoid\LT@lastfoot\LT@foot\else\LT@lastfoot\fi}%

If you let me know if that (a) fixes your real case and/or (b) breaks everything else, that would be useful information....


Building on David Carlisle's suggestion, here's a solution that doesn't require you to make a local copy of the file longtable.sty. Instead, it utilizes the macro \patchcmd of the etoolbox package. Inserting the following code in the preamble should do the trick.

\usepackage{longtable,etoolbox}
% The following code should only be used with v. 4.11 [2004/02/01, (DPC)] 
%    of the longtable package. It will probably -- actually, almost 
%    certainly! -- not work with other versions of this package.
% There are four separate occurrences of \vbox in "\LT@output"; 
%    must patch (i.e., eliminate) only the one that follows "\@colht".
\makeatletter
\patchcmd{\LT@output}{\@colht \vbox}{\@colht}{}{} 
\makeatother