Updated perl packages that fix several bugs are now available for Red Hat Enterprise Linux 6.
Perl is a high-level programming language that is commonly used for system administration utilities and web programming.
- Due to creating threads after tying a variable to an SDBM database using the SDBM_File Perl module, the Perl interpreter terminated unexpectedly when terminating Perl threads. With this update, the DB_File, GDBM_File, NDBM_File, ODBM_File, and SDBM_File Perl modules have been modified to destroy their objects only from the thread context which created the objects. As a result, the destructors of the aforementioned file objects are now thread-safe. Note, however, that other operations on the objects cannot be called from other threads. In general, the DB_File, GDBM_File, NDBM_File, ODBM_File, and SDBM_File Perl modules remain thread-unsafe.
- Previously, using the Module::Pluggable Perl module to locate plug-ins in a single-letter-named package did not work correctly. As a consequence, existing single-letter-named packages were not found. An upstream patch has been applied, and single-letter-named plug-ins are now located by Module::Pluggable correctly.
- Previously, the perl-suidperl package consumed the libperl.so library from the perl-libs subpackage with no explicit package-version requirement. This could cause problems, for example, during upgrading. With this update, an explicit dependency on the same version of perl-libs has been added to perl-suidperl, which avoids accidental mixing of incompatible perl-suidperl and perl-libs packages on a system.
- The Perl Locale::Maketext localization framework did not properly translate the backslash (\) characters. As a consequence, Perl rendered the backslashes as double (\\). With this update, Perl no longer escapes the backslashes in literal output strings, and they appear correctly.
- Prior to this update, the Archive::Tar Perl module unpacked PAX headers into artificial PaxHeader subdirectories, which caused the extracted tree to be different from the archived tree. Consequently, installation of a Comprehensive Perl Archive Network (CPAN) distribution by the cpan client failed. This bug has been fixed, and it is now possible to install CPAN distributions archived with extended attributes.
- Previously, when the SHA::Digest method was called on the corresponding class, Perl terminated unexpectedly with a segmentation fault. An upstream patch has been applied, and calling any SHA::Digest method on a class yields a proper exception instead of Perl crash.
- Previously, due to earlier problems with threads, several tests were blocked for IBM S/390, IBM System z, or PowerPC platforms in the Perl specification file. Consequently, when building the perl package, internal tests were not performed on these platforms, even though the original problems no longer occurred. Now, when building the perl package, the tests are performed on all supported architectures.
Users of perl are advised to upgrade to these updated packages, which fix these bugs.