FS#45585 - [evince] missing dependency on unrar for opening .cbr files

Attached to Project: Arch Linux
Opened by Langston Barrett (siddharthist) - Wednesday, 08 July 2015, 03:57 GMT
Last edited by Jan de Groot (JGC) - Thursday, 05 October 2017, 20:56 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Jan de Groot (JGC)
Jan Alexander Steffens (heftig)
Architecture x86_64
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:
When opening a .cbr file in evince, the program crashes if unrar is not also installed. This has been reported to Ubuntu on Launchpad here: https://bugs.launchpad.net/ubuntu/+source/evince/+bug/480905.

-----------------------------------------------------------

Before unrar is installed:
$ evince /path/to/file.cbr

(evince:12633): GLib-GObject-WARNING **: The property GtkSettings:gtk-menu-images is deprecated and shouldn't be used anymore. It will be removed in a future version.

(evince:12633): GdkPixbuf-CRITICAL **: gdk_pixbuf_read_pixels: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(evince:12633): GdkPixbuf-CRITICAL **: gdk_pixbuf_copy: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(evince:12633): EvinceDocument-CRITICAL **: ev_document_misc_surface_from_pixbuf: assertion 'GDK_IS_PIXBUF (pixbuf)' failed

(evince:12633): GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
zsh: segmentation fault (core dumped) evince

-----------------------------------------------------------

After unrar is installed:
$ evince /path/to/file.cbr

(evince:12977): GLib-GObject-WARNING **: The property GtkSettings:gtk-menu-images is deprecated and shouldn't be used anymore. It will be removed in a future version.

-----------------------------------------------------------

Additional info:
~% pacman -Q evince
evince 3.16.1-1
~% pacman -Q unrar
unrar 1:5.2.7-1

Steps to reproduce:
Install evince, attempt to open a .cbr file.

Proposed solution:
Mark unrar as a dependency of evince, so full functionality is available without manual intervention.
This task depends upon

Closed by  Jan de Groot (JGC)
Thursday, 05 October 2017, 20:56 GMT
Reason for closing:  Fixed
Additional comments about closing:  evince has been ported to libarchive instead of command execution. unrar is no longer supported.
Comment by Jan de Groot (JGC) - Wednesday, 08 July 2015, 09:18 GMT
Evince is able to extract cbr files using bsdtar instead of unrar, so unrar should not be needed. Can you provide an example cbr file so we can test this? Either bsdtar is unable to process the cbr file or evince doesn't detect the file type correctly.
Comment by Langston Barrett (siddharthist) - Wednesday, 08 July 2015, 14:17 GMT
I have further isolated the issue. You are correct, bsdtar works quite well for most .cbr files. This image at the end, though, causes the crash. I have no idea why. For example, if I add it to the archive at the end of my copy of Sandman #24, evince will crash without unrar but work with it. I have shared a copy of that comic with that file added onto the end with you on Google drive, via your email jgc at archlinux dot org (don't want to share publicly, of course - for testing purposes only).
   xsou2.jpg (618.9 KiB)
Comment by Eli Schwartz (eschwartz) - Monday, 14 August 2017, 02:12 GMT
Is this still a problem with the latest versions of bsdtar/evince? And if so, will this be added as e.g. optdepends+=("unrar: open some unusual cbr files without crashing")?

AFAICT no one has actually pursued this issue upstream. ಠ_ಠ
Comment by Jan Alexander Steffens (heftig) - Monday, 14 August 2017, 06:40 GMT
Yeah, it is a problem again as the bsdtar support was removed recently (command injection vuln). However, master (3.25) uses libarchive properly and we might start packaging gnome-unstable soon so I'm not inclined to fix this.

Loading...