I had this nasty bug that disappeared in the past but now after quite some time it returned.
I have two TSam objects (derived from TPersistent) created and loaded into a
A block header getting corrupted usually means something's been overwriting memory, usually by doing some sort of unsafe operation. Are you using raw pointers or assembly code in any of your tasks? Also, if you have range checking and bounds checking turned off, try turning them on and rebuilding. They can help catch a lot of this sort of problem.