Don't bother assigning to $_[1]; just let Danga::Socket
do its thing since $_[1] should be out-of-scope soon.
if (defined $n) {
my $nlen = length($_[1]) - $n;
return 1 if $nlen == 0; # all done!
- eval { $_[1] = substr($_[1], $n, $nlen) };
- if ($@) { # modification of read-only value:
- return $self->write(substr($_[1], $n, $nlen));
- }
- # fall through to normal write:
+
+ # Danga::Socket::write queues the unwritten substring:
+ return $self->write(substr($_[1], $n, $nlen));
}
}
$self->write($_[1]);