2005-09-05 Paul Jakma <paul.jakma@sun.com>
* command.c: (install_element) be more robust. Eg, cmd_init
need not have been called, some applications may use other
library subsystems, which call install_element, without the
application wanting commands and hence not calling cmd_init.
diff --git a/lib/command.c b/lib/command.c
index f642359..2b7ca9a 100644
--- a/lib/command.c
+++ b/lib/command.c
@@ -1,5 +1,5 @@
/*
- $Id: command.c,v 1.49 2005/08/22 22:39:56 paul Exp $
+ $Id: command.c,v 1.50 2005/09/05 11:54:13 paul Exp $
Command interpreter routine for virtual terminal [aka TeletYpe]
Copyright (C) 1997, 98, 99 Kunihiro Ishiguro
@@ -35,7 +35,7 @@
/* Command vector which includes some level of command lists. Normally
each daemon maintains each own cmdvec. */
-vector cmdvec;
+vector cmdvec = NULL;
/* Host information structure. */
struct host host;
@@ -475,7 +475,11 @@
install_element (enum node_type ntype, struct cmd_element *cmd)
{
struct cmd_node *cnode;
-
+
+ /* cmd_init hasn't been called */
+ if (!cmdvec)
+ return;
+
cnode = vector_slot (cmdvec, ntype);
if (cnode == NULL)