Is AudioTransportSource::hasStreamFinished behaving as it should?

I am using an AudioTransportSource to play a MemoryAudioSource, and hasStreamFinished, as far as I can tell, is never returning true. Maybe I am not understanding the purpose of the function, but I was expecting my listeners to be notified of the playback hitting the end of the audio source by this section in AudioTransportSource::getNextAudioBlock:

if (hasStreamFinished())
        {
            playing = false;
            sendChangeMessage();
        }

Is this the intended behavior? I can fix this for my local copy, just wanted to check.