Fixed bug which crept in with the recent lexer changes.
[pspp-builds.git] / src / language / lexer / lexer.c
index 39b674c554d6891e037e43a97cc6d41b61a25f39..b6e5fc4e39683ef3296b7e21753af463d6aaec78 100644 (file)
@@ -111,11 +111,14 @@ lex_create (bool (*read_line_func) (struct string *, bool *))
 void
 lex_destroy (struct lexer *lexer)
 {
-  ds_destroy (&lexer->put_tokstr);
-  ds_destroy (&lexer->tokstr);
-  ds_destroy (&lexer->line_buffer);
+  if ( NULL != lexer ) 
+    {
+      ds_destroy (&lexer->put_tokstr);
+      ds_destroy (&lexer->tokstr);
+      ds_destroy (&lexer->line_buffer);
 
-  free (lexer);
+      free (lexer);
+    }
 }
 
 \f