I have edited the code to properly handle the reward halving till the last Satoshi is minted. We did have a change in the code already but that was only good for the next seven years.
// Halving subsidy happens every 2,100,000 blocks. The code below takes account for the // fact that the first 204,639 blocks took 2.5 minutes and after changed to 1 minute. nSubsidy >>= (nHeight + 306960) / 2100000;
Awesome, thanks.