I go through this process more often than I like:
Got to fix a bug in the code. Turns out it's an easy fix. Yay!
Test the fix. Doesn't work. Fails under one specific condition.
Beat head off it for a bit then think, uh-oh. Test the specific condition WITHOUT the fix.
Shit. There's a MUCH BIGGER bug in the code.