Fix MCCP bug caused by improper buffer management.

Well, as a competitively new person to C++, I learnt something new today: that you CAN have a reference to a pointer BUT NOT the reverse.  I guess I sorta confused the '&' as the reference operator with the '*'  as the dereference operator so that they'd cancel each other out - but that's the fun of using pointers in 'C', if you don't clearly understand what is going on you can easily shoot yourself in the leg and if you get it badly wrong you can take off others' legs as well... :boom: