[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[SCM] Debian package checker branch, lab-refactor, updated. 2.5.3-186-gd1570a8



The following commit has been merged in the lab-refactor branch:
commit 99b3dc65fbedcda4402a4814aab1b75c6c5914da
Author: Niels Thykier <niels@thykier.net>
Date:   Wed Nov 2 09:57:45 2011 +0100

    L::L::Entry: Be consistent in error handling
    
    create_entry consistenly uses croak for all errors.
    update_status_file sets $! when the causing error does not set it.
    
    Signed-off-by: Niels Thykier <niels@thykier.net>

diff --git a/lib/Lintian/Lab/Entry.pm b/lib/Lintian/Lab/Entry.pm
index dd8ef25..eef16b8 100644
--- a/lib/Lintian/Lab/Entry.pm
+++ b/lib/Lintian/Lab/Entry.pm
@@ -245,7 +245,7 @@ sub create_entry {
         # In the pool we may have to create multiple directories. On
         # error we only remove the "top dir" and that is enough.
         system ('mkdir', '-p', $base_dir) == 0
-            or return 0;
+            or croak "mkdir -p $base_dir failed";
         $madedir = 1;
     }
     if ($pkg_type eq 'changes'){
@@ -257,10 +257,12 @@ sub create_entry {
     } else {
         croak "create_entry cannot handle $pkg_type";
     }
-    unless (symlink($pkg_path, $link)){
+    unless (symlink ($pkg_path, $link)){
+        my $err = $!;
         # "undo" the mkdir if the symlink fails.
-        rmdir($base_dir) if($madedir);
-        return 0;
+        rmdir $base_dir  if $madedir;
+        $! = $err;
+        croak "symlinking $pkg_path failed: $!";
     }
     if ($pkg_type eq 'source'){
         # If it is a source package, pull in all the related files
@@ -346,7 +348,10 @@ sub update_status_file {
     my $file;
     my @sc;
 
-    return 0 unless $self->entry_exists;
+    unless ($self->entry_exists) {
+        $! = "Entry does not exists";
+        return 0;
+    }
 
     $file = $self->base_dir () . '/.lintian-status';
     open my $sfd, '>', $file or return 0;

-- 
Debian package checker


Reply to: