Now *actually* using pointers correctly - or more correctly, at any rate