Index: /trunk/PS-IPP-Config/lib/PS/IPP/Config.pm
===================================================================
--- /trunk/PS-IPP-Config/lib/PS/IPP/Config.pm	(revision 13275)
+++ /trunk/PS-IPP-Config/lib/PS/IPP/Config.pm	(revision 13276)
@@ -1,5 +1,5 @@
 # Copyright (c) 2006  Paul Price, Joshua Hoblitt
 #
-# $Id: Config.pm,v 1.42 2007-05-05 01:06:52 eugene Exp $
+# $Id: Config.pm,v 1.43 2007-05-05 02:52:28 price Exp $
 
 package PS::IPP::Config;
@@ -311,8 +311,25 @@
 	$name = _strip_scheme( $name );
 	$self->_neb_start();
-	return $self->{nebulous}->create( $name );
-    }
-
-    return $name;
+	$name = $self->{nebulous}->create( $name );
+    }
+
+    return $self->file_resolve($name);
+}
+
+# Check if a file exists
+sub file_exists
+{
+    my $self = shift;		# Configuration object
+    my $name = shift;		# File name to check
+
+    my $uri = URI->new( $name );# URI parser
+    my $scheme = $uri->scheme();# Scheme for file name
+    if (defined $scheme and $scheme eq 'neb') {
+	$name = _strip_scheme( $name );
+	$self->_neb_start();
+	return (defined $self->{nebulous}->find_instances( $name ) ? 1 : 0);
+    }
+
+    return (-f $self->file_resolve($name));
 }
 
@@ -328,14 +345,10 @@
     my $uri = URI->new( $target );# URI parser
     my $scheme = $uri->scheme();# Scheme for file name
-    if (defined $scheme) {
-	if ($scheme eq 'neb') {
-	    $target = _strip_scheme( $target );
-	    $self->_neb_start();
-	    $target = $self->{nebulous}->create( $target );
-	} else {
-	    $target = $self->convert_filename_absolute( $target );
-	}
-    }
-
+    if (defined $scheme and $scheme eq 'neb') {
+	$target = _strip_scheme( $target );
+	$self->_neb_start();
+	$target = $self->{nebulous}->create( $target );
+    }
+    $target = $self->file_resolve( $target );
     $source = $self->file_resolve( $source );
 
