Index: /trunk/PS-IPP-Metadata-Config/lib/PS/IPP/Metadata/Config.pm
===================================================================
--- /trunk/PS-IPP-Metadata-Config/lib/PS/IPP/Metadata/Config.pm	(revision 7864)
+++ /trunk/PS-IPP-Metadata-Config/lib/PS/IPP/Metadata/Config.pm	(revision 7865)
@@ -1,5 +1,5 @@
 # Copyright (c) 2005  Joshua Hoblitt
 #
-# $Id: Config.pm,v 1.17 2006-07-06 21:49:27 jhoblitt Exp $
+# $Id: Config.pm,v 1.18 2006-07-12 02:49:53 jhoblitt Exp $
 
 package PS::IPP::Metadata::Config;
@@ -36,4 +36,7 @@
 sub parse {
     my ( $self, $metadata ) = @_;
+
+    return undef if not defined $metadata;
+    return undef if $metadata =~ /^\s*$/;
 
     # remove any local data from a prevous run
Index: /trunk/PS-IPP-Metadata-Config/t/02_examples.t
===================================================================
--- /trunk/PS-IPP-Metadata-Config/t/02_examples.t	(revision 7864)
+++ /trunk/PS-IPP-Metadata-Config/t/02_examples.t	(revision 7865)
@@ -3,5 +3,5 @@
 # Copyright (C) 2005  Joshua Hoblitt
 #
-# $Id: 02_examples.t,v 1.4 2005-05-04 22:08:08 jhoblitt Exp $
+# $Id: 02_examples.t,v 1.5 2006-07-12 02:49:53 jhoblitt Exp $
 
 use strict;
@@ -12,8 +12,23 @@
 #$::RD_TRACE = 1;
 
-use Test::More tests => 6;
+use Test::More tests => 9;
 use PS::IPP::Metadata::Config;
 
 my $config_parser = PS::IPP::Metadata::Config->new;
+
+{
+    my $config = $config_parser->parse(undef);
+    is($config, undef, "parsing undef returns undef");
+}
+
+{
+    my $config = $config_parser->parse('');
+    is($config, undef, "parsing an empty string returns undef");
+}
+
+{
+    my $config = $config_parser->parse("\n\n\n\n\n");
+    is($config, undef, "parsing an empty string returns undef");
+}
 
 {
