Fixed read() method