I am having the same problem as https://sourceforge.net/p/cvsgui/bugs/932/ but if I don't use external diff the internal diff works and ends with
** CVS exited normally with code 1 **
So I think there is a problem with the external diff. On version WINCVS 2.0.2.4 (Build 4) if you press the stop sometimes the external diff was opened but the server file was missing some lines at the end.
The CVS version is Concurrent Versions System (CVSNT) 2.0.51d (client/server)