First off, if you watch the adders in this hold carefully, you can see that they shorten by two units per turn when stuck. Once for being blocked by another adder, and once for the head staying still on a hot tile. I
think this is flawlessly consistent (a sword strike + hotplate has the same effect), but it's debatable.
The bug here is that the hot tile is attempting to shorten an adder which just died on its own turn. In DRODLib/CurrentGame.cpp ProcessMonsters() line 3423, I added
//Process monster.
pMonster->Process(nLastCommand, CueEvents);
//Check for damage inflicted from something in the room.
if (pMonster->bAlive && pMonster->CheckForDamage(CueEvents))
Running the same demo that I made to hunt the bug, I get no more drod.err messages, and no adders failing to pull their tails along.