patch 8.0.0746: when :term fails the job is not properly cleaned up

Problem:    When :term fails the job is not properly cleaned up.
Solution:   Free the terminal. Handle a job that failed to start. (closes
            #1858)
diff --git a/src/os_unix.c b/src/os_unix.c
index 156168f..bbc74c7 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -5475,7 +5475,9 @@
 	job_pid = -job_pid;
 #endif
 
-    kill(job_pid, sig);
+    /* Never kill ourselves! */
+    if (job_pid != 0)
+	kill(job_pid, sig);
 
     return OK;
 }