The given change was neccessary, because `beta[0]` was never re-set, but `beta[BufSize]` exceeded beta's array bounds.

Anyway, it seemed that this is an off-by-one, since `diag_H` and `I` have been set at position `nCP` instead of `nCP+1`.

Reverting this would introduce a memory violation - so maybe we can analytically create a toy example to show whats right?  Or show a pathological one to show when we're wrong?