Wouldn't the GetU8 reduce it to 7?
Still, the Get funcs consume the bytes, so getting a u64 completely from the temp_buffer should clear it and reset tmp_buffer_len to 0, right?