sometimes circuit_get_open_circ_or_launch() can return 0 but not return a circuit, e.g. because too many circuits have failed recently so the new one didn't launch. we need to tolerate that. svn:r2478