Recent-ish Linux systems have made it so that when you add or remove monitors (e.g., docking a laptop) the system is actually aware that this has happened (shocking, I know) and dynamically changes the size, position, and number of screens.
Based on the email complaints I'm getting, it would appear that xscreensaver handles this... poorly.
However, I don't have access to any Linux machines capaple of doing this new Xrandr junk, so I can't really debug it.
I would like someone who does have access to such a machine to A) figure out what cases don't work, and B) send me a patch. You'll need one (preferably two) external monitors to experiment with. Probably better if the machine is a laptop.
Is this person you?