If you call or gosub a routine, make sure it lands on the return instruction to get back. If you use goto to get there, and it lands on return, you'll really have some odd things happening. It will not skip over or ignore the return instruction.
Just organize your routines and use goto, call, gosub, etc accordingly to save yourself a lot of headaches.
Bookmarks