This is an automated email from the git hooks/post-receive script.

guillem pushed a commit to branch main
in repository dpkg.

View the commit online:
https://git.dpkg.org/cgit/dpkg/dpkg.git/commit/?id=66531572cf9f89b40df153a483cd033957afbb62

commit 66531572cf9f89b40df153a483cd033957afbb62 (HEAD -> main)
Author: Guillem Jover <[email protected]>
AuthorDate: Fri Jan 23 00:47:07 2026 +0100

    Dpkg::Control::FieldsCore: Improve Maintainer and Uploader field parse 
errors
    
    Instead of letting the email address modules error themselves, where
    they do not have enough context to print in their error message, catch
    those errors and completely replace them with ones containing a bit
    more context, including the affect field.
    
    In the future we should be moving to throw exception objects instead,
    which should make it possible to bubble up these messages in a more
    ergonomic way.
---
 scripts/Dpkg/Control/FieldsCore.pm | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/scripts/Dpkg/Control/FieldsCore.pm 
b/scripts/Dpkg/Control/FieldsCore.pm
index e20f3ca91..5fc747499 100644
--- a/scripts/Dpkg/Control/FieldsCore.pm
+++ b/scripts/Dpkg/Control/FieldsCore.pm
@@ -1214,7 +1214,12 @@ sub field_parse_maintainer($ctrl)
     }
 
     require Dpkg::Email::Address;
-    return Dpkg::Email::Address->new($maint);
+    eval {
+        return Dpkg::Email::Address->new($maint);
+    } or do {
+        error(g_('cannot parse %s field value "%s"'),
+              'Maintainer', $maint);
+    };
 }
 
 =item $email_list = field_parse_uploaders($ctrl)
@@ -1230,7 +1235,12 @@ sub field_parse_uploaders($ctrl)
     my $uploaders = $ctrl->{'Uploaders'};
 
     require Dpkg::Email::AddressList;
-    return Dpkg::Email::AddressList->new($uploaders);
+    eval {
+        return Dpkg::Email::AddressList->new($uploaders);
+    } or do {
+        error(g_('cannot parse %s field value "%s"'),
+              'Uploaders', $uploaders);
+    };
 }
 
 =item ($source, $version) = field_parse_binary_source($ctrl)

-- 
Dpkg.Org's dpkg

Reply via email to