I've got a hunch it's got something to do with your mystery "fuelcheck()" function.
It's not defined in
this script, so either you're not showing us the code you've got on your turtle, or you've executed some other script which defined it. Because you're not localising your functions, they stay in memory (in the shell's environment table, used for storing globals) until the turtle shuts down, meaning that this later script can still call them...
http://lua-users.org...i/ScopeTutorial
I'm also not sure when you're wanting the turtle to suck. At the moment you're only ordering it once per complete loop, so certainly most saplings are going to be pushed around.