The problem is that the way it works for trips is it inserts a row into the database with the start time, then updates that row at the end of a trip with the end time. If that update doesn't occur, then you end up with a trip that gets ignored [because it has one invalid endpoint].
obdgpslogger catches SIGINT [aka ctrl-c] to let it know it should exit. Looking at it, I've just edited it to also take SIGTERM which will probably work better for you.
To fix the log you sent, open sqlite3 on it and:
UPDATE trip SET end=1249965359.98869 WHERE tripid=1;