Programmer happens to have just written a unit test for that, unit test shows up the mistake. Programmer fixes it, reruns test, checks in the software. Call it 4-20 minutes. Compare that with Programmer misses a test case. Test department or whoever does final check on this beast has spent untold hours inventing weird and wonderful tests.
Tester fills in bug log with test that fails and information available.
If we are really lucky, they pass on the bug reports to the original programmer team. If not, multiply the following by some arbitrary multiplicative factor to deal with the fact that people not familiar with the original program are faced with fixing it. They investigate the design to see why it produced that error. They write new unit test, refactor, add code, etc until it passes, and mark the bug report corrected. Tester picks up fixed bug list, finds the test to run, reruns the test, it passes.