diff options
-rwxr-xr-x | videomv.pl | 2 | ||||
-rwxr-xr-x | videorm.pl | 14 |
2 files changed, 15 insertions, 1 deletions
@@ -542,7 +542,7 @@ if (defined $old_symlink) { &perform ("Deleting old symlink... ", unlink $old_symlink); } -open my $DIR, catdir($directors, $old_director) or die "Can't open: $!"; +opendir my $DIR, catdir($directors, $old_director) or die "Can't open: $!"; if (scalar(grep(!/^\.\.?$/, readdir $DIR) == 0)) { &perform ("Removing empty dir... ", rmdir catdir($directors, $old_director)); } @@ -152,6 +152,11 @@ my $file = basename ($ARGV[0]); my $file_s = catfile ($symlinks, $file); my $file_d; $file_d = catfile ($symlinks, readlink $file_s) if -l $file_s; +my $director; +if (-l $file_s) { + my @director = File::Spec->splitdir(readlink $file_s); + $director = $director[2] if $#director >= 2; +} # Connect to database @@ -184,6 +189,15 @@ my $r = 0; &ack ( "Deleting target... ", (defined $file_d) && -f $file_d && unlink $file_d ); +if (defined $director) { + opendir my $DIR, catdir($directors, $director) or die "Can't open: $!"; + if (scalar(grep(!/^\.\.?$/, readdir $DIR) == 0)) { + &ack ( "Removing empty dir...", + rmdir catdir($directors, $director) ); + } + closedir $DIR or die "Can't close: $!"; +} + $dbh->disconnect(); exit $r; |