- $self->{tmp_dir_obj} = File::Temp->newdir(CLEANUP => 1);
- $self->{tmp_dir} = $self->{tmp_dir_obj}->dirname;
- $self->{tmp_file} = File::Spec->catfile($self->{tmp_dir}, $exe_name);
+ return 'File::Temp 0.19 is required to make a proper temporary directory'
+ unless $good_enough_file_temp;
+ if (length $exe_ext and $exe_name !~ /\Q$exe_ext\E$/) {
+ $exe_name .= $exe_ext;
+ }
+ $self->{tmp_dir_obj} = File::Temp->newdir(CLEANUP => 1);
+ $self->{tmp_dir} = $self->{tmp_dir_obj}->dirname;
+ $self->{tmp_file} = File::Spec->catfile($self->{tmp_dir}, $exe_name);