in reply to Re^2: re-syncing these subtitles
in thread re-syncing these subtitles

It's a cautionary cleanup in case you're passing garbage as parameters.

Perhaps you should use Scalar::Util::looks_like_number to confirm a numerical value.


I think you missed the "d" there :)

There is no letter 'd' in the line:

my $seconds = sprintf( "%02.3f", ( ( $sectime - ( $hours * 3600 ) +) - ( $minutes * 60 )) );


Update


Why not just:
 my ( $hours, $minutes, $seconds ) = split /:/, $time;
Because I want that if you pass only one value, it defaults to seconds, and to minutes:seconds with only two values.

Then try it like this:

my ( $hours, $minutes, $seconds ) = ( split /:/, $time )[ -3, -2, -1 ] +;

Replies are listed 'Best First'.
Re^4: re-syncing these subtitles
by wazoox (Prior) on Sep 06, 2010 at 11:48 UTC
    There is no letter 'd' in the line:

    Ooops garbled copy and paste....

    my ( $hours, $minutes, $seconds ) = ( split /:/, $time ) -3, -2, -1 ;

    Nice but too clever for my taste :)