program execution is not as intended

Does this fragment:

        while ( buffer_at < buffer_end )
        {
            *buffer_at++ = Serial1.read();
        }

make the assumption that the data arrives via Serial1.read() at a rate that is slower than a byte can be incremented? It would seem to me that, at 9600 baud, this loop is blasted through pretty quickly, or am I missing something?