Silently fails to display tar contents after a file with xattrs is encountered
When opening a tar file containing a file with xattrs, file-roller will silently fail to display that file or any files after that in the archive. When attempting to extract such an archive, a (confusing) error ("Ignoring malformed pax extended attribute") is displayed.
This has been reproduced using Ubuntu 18.04 (using the Ubuntu package with version 3.28.0-1ubuntu1).
Steps to reproduce
These steps work on Ubuntu 18.04, because they use a file that is known to have xattrs on such a system, but they should be readily generalisable to other systems.
- Create a tar file containing
/usr/bin/mtr-packet
(which has xattrs) (and a file before and after to confirm the behaviour):$ tar -C / --xattrs --xattrs-include=\* etc/adduser.conf usr/bin/mtr-packet etc/aliases -cf reproducer.tar
- Confirm that tar reads the file correctly:
$ tar tf reproducer.tar etc/adduser.conf usr/bin/mtr-packet etc/aliases
- Open the file with file-roller (
file-roller reproducer.tar
) - Attempt to extract the archive.
Expected behaviour
After step 3, all three files are displayed in the UI. After step 4, the tar file is successfully extracted.
Actual behaviour
After step 3, only etc/adduser.conf appears in the UI. After step 4, an error message ("Ignoring malformed pax extended attribute") is displayed: