diff options
Diffstat (limited to 'videomv.pl')
-rwxr-xr-x | videomv.pl | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -542,6 +542,11 @@ if (defined $old_symlink) { &perform ("Deleting old symlink... ", unlink $old_symlink); } +open 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)); +} +closedir DIR or die "Can't close: $!"; &perform ("Creating new symlink... ", symlink catfile(updir(),'DIRECTORS',$new_director,$new_filename), @@ -635,6 +640,10 @@ sub revert { $actions[0] = 'Deleting'. $1; $rev = unlink $new_symlink; } + elsif ($actions[0] =~ /^Removing( empty dir.*)/) { + $actions[0] = 'Creating'. $1; + $rev = mkdir catdir($directors, $old_director); + } else { print STDERR "Error: unknown action `" .$actions[0]. "'!\n"; $actions[0] = undef; |