diff --git a/ChangeLog b/ChangeLog
index 65c037a024b447c4c2fd29b9aa5ce4356e441d4e..e836203e47ef45e6b13512553bc92f9b0273a300 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -73,13 +73,13 @@ CVS code -
 	  nanogetstr() (renamed get_prompt_string()), statusq() (renamed
 	  do_prompt()), statusq_abort() (renamed do_prompt_abort()), and
 	  do_yesno() (renamed do_yesno_prompt()). (DLR)
+	- Initialize the static pid_t pid in text.c. (DLR)
 - chars.c:
   mbwidth()
 	- If wcwidth() returns -1 for the character passed in, treat the
 	  character as having the width of Unicode U+FFFD (Replacement
-	  Character) instead of having zero width, since there are
-	  display problems that sometimes crop up with the latter
-	  approach. (DLR)
+	  Character) instead of having a width of zero, since display
+	  problems can crop up with the latter approach. (DLR)
 - files.c:
   read_file()
 	- Remove apparently unneeded logic to handle a case where
diff --git a/src/text.c b/src/text.c
index 3063ab03d3c9122ab44933945b0300333a80628d..252ced8a161d352c2caf039834a7a927f6d69818 100644
--- a/src/text.c
+++ b/src/text.c
@@ -34,10 +34,9 @@
 #include "proto.h"
 
 #ifndef NANO_SMALL
-static pid_t pid;
-	/* The PID of the newly forked process in execute_command().  It
-	 * must be global because the cancel_command() signal handler
-	 * needs it. */
+static pid_t pid = -1;
+	/* The PID of the newly forked process in execute_command(), for
+	 * use with the cancel_command() signal handler. */
 #endif
 #ifndef DISABLE_WRAPPING
 static bool same_line_wrap = FALSE;