Debugger update
[p5sagit/p5-mst-13.2.git] / lib / AnyDBM_File.pm
index 50acce4..e6a1503 100644 (file)
@@ -1,12 +1,15 @@
 package AnyDBM_File;
+use vars qw(@ISA);
 
 @ISA = qw(NDBM_File DB_File GDBM_File SDBM_File ODBM_File) unless @ISA;
 
-eval { require NDBM_File } ||
-eval { require DB_File } ||
-eval { require GDBM_File } ||
-eval { require SDBM_File } ||
-eval { require ODBM_File };
+my $mod;
+for $mod (@ISA) {
+    return 1 if eval "require $mod"
+}
+
+die "No DBM package was successfully found or installed";
+#return 0;
 
 =head1 NAME
 
@@ -39,8 +42,8 @@ will only find GDBM_File.
 Having multiple DBM implementations makes it trivial to copy database formats:
 
     use POSIX; use NDBM_File; use DB_File;
-    tie %newhash,  DB_File, $new_filename, O_CREAT|O_RDWR;
-    tie %oldhash,  NDBM_File, $old_filename, 1, 0;
+    tie %newhash,  'DB_File', $new_filename, O_CREAT|O_RDWR;
+    tie %oldhash,  'NDBM_File', $old_filename, 1, 0;
     %newhash = %oldhash;
 
 =head2 DBM Comparisons