Bug in POD loader?

ReadAfterAlloc takes as second parameter dwNumberOfBytesToRead, however, it then uses SafeAlloc to allocate, which allocates sizeof(T) * dwNumberOfBytesToRead.

Is this a bug? Is the length read from the file markers in bytes or size units of the type being read?