Interrupt does not switch between ISR's properly

I can't see anything in your ISR that tells the rest of the code to exit early - change this while(var < Steps) statement to test an exit early flag which is set in your interrupt routine

Code:
while((var < Steps) && bExitEarly == false)
{
...
}

Thanks DuaneB, for your comments. Could you give some more information about the exit early flag? I received my Arduino less than 2 weeks ago so I am still very new to all of this. Any help is appreciated.

You are right about my lack of good comments. In the future I will make my code more readable for posting. Thanks for the tip.

Leisurely? locationChange looks like about 200 machine instructions. Which is about 200/16000000*1000000 = 12 milliseconds. Are you honestly going to try to convince us that you have a stepper motor + cart that responds to a signal change within 12 milliseconds?

Coding Badly, the delay in switching between ISR's takes several seconds. The Arduino doesn't stop the current routine, but it finishes it completely before going to the next routine. I'm sure the fault lies in my code.
As I said, I am still very new to this, but thanks for your input!

I don't see any ISR's in what you did post!

Mark, I have an interrupt at the end of my code. The interrupt sets the variable "currentLocation" to a 1 or 0. Based on that variable the void loop will execute one of two functions.
Does that answer your question, or am I wrong?