diff --git a/lib/Slic3r.pm b/lib/Slic3r.pm index d759d1b34d..8b1f2a7a2e 100644 --- a/lib/Slic3r.pm +++ b/lib/Slic3r.pm @@ -300,6 +300,8 @@ sub resume_all_threads { sub encode_path { my ($path) = @_; + return undef if !defined $path; + $path = Unicode::Normalize::NFC($path); $path = Encode::encode(locale_fs => $path); @@ -310,6 +312,8 @@ sub encode_path { sub decode_path { my ($path) = @_; + return undef if !defined $path; + $path = Encode::decode(locale_fs => $path) unless utf8::is_utf8($path);