summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2017-06-21 21:47:34 +0100
committerdakkar <dakkar@thenautilus.net>2017-06-21 21:47:34 +0100
commitf8de255992557b387c262587255a52df867be099 (patch)
tree4b2b27515a8978fe1e083eff2c47ce17cf2de6ea
parentgit ignore (diff)
downloadDateTime-Format-GeekTime-f8de255992557b387c262587255a52df867be099.tar.gz
DateTime-Format-GeekTime-f8de255992557b387c262587255a52df867be099.tar.bz2
DateTime-Format-GeekTime-f8de255992557b387c262587255a52df867be099.zip
simpler surrogate codepoints detection
*something* happened in recent versions of Perl that makes them no longer warn when hr()ing a surrogate
-rw-r--r--lib/DateTime/Format/GeekTime.pm10
1 files changed, 3 insertions, 7 deletions
diff --git a/lib/DateTime/Format/GeekTime.pm b/lib/DateTime/Format/GeekTime.pm
index 9eb367b..6b909b4 100644
--- a/lib/DateTime/Format/GeekTime.pm
+++ b/lib/DateTime/Format/GeekTime.pm
@@ -62,13 +62,9 @@ sub format_datetime {
$seconds=int($seconds/86_400*65_536+0.5);
- my ($chr,$warn);
- {
- local $SIG{__WARN__}=sub {$warn=shift};
- $chr=chr($seconds);
- }
- if (defined $warn) {$chr=''}
- else {$chr=" $chr"};
+ my $chr = $seconds <= 0xD800 || $seconds >= 0xDFFF
+ ? ' '.chr($seconds)
+ : '';
return sprintf '0x%04X on day 0x%03X%s',$seconds,$days,$chr;
}