required doesn't make sense with default
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Request.pm
index e937fb1..f26c061 100644 (file)
@@ -435,7 +435,6 @@ sub body {
 
 has hostname => (
   is        => 'rw',
-  required  => 1,
   lazy      => 1,
   default   => sub {
     my ($self) = @_;
@@ -445,15 +444,21 @@ has hostname => (
         '',
         { flags => AI_NUMERICHOST }
     );
-    return $self->address
-        if $err;
+    if ( $err ) {
+        $self->_log->warn("resolve of hostname failed: $err");
+        return $self->address;
+    }
     ( $err, my $hostname ) = getnameinfo(
         $sockaddr->{addr},
         NI_NAMEREQD,
         # we are only interested in the hostname, not the servicename
         NIx_NOSERV
     );
-    return $err ? $self->address : $hostname;
+    if ( $err ) {
+        $self->_log->warn("resolve of hostname failed: $err");
+        return $self->address;
+    }
+    return $hostname;
   },
 );