summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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;
}