Opened 9 years ago
Closed 7 years ago
#50110 closed defect (fixed)
Evince seg fault
Reported by: | asic512 | Owned by: | dbevans (David B. Evans) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | ||
Port: | evince |
Description
OS X 10.11.2 MacPorts 2.3.4 Xcode 7.1.1 evince @3.18.2_0
Evince crashes when it tries to open a simple .dvi file. (seg. fault 11)
Moreover it is very slow to launch with dbus error (evince:2145): WARNING : Error retrieving accessibility bus address: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
More generally gnome-session doesn't work as many other gnome applications (dbus error)
Attachments (3)
Change History (16)
comment:1 follow-up: 3 Changed 9 years ago by dbevans (David B. Evans)
Changed 9 years ago by dbevans (David B. Evans)
Attachment: | essai2.dvi added |
---|
Sample .dvi file (provided by reporter) that demostrates issue.
comment:2 Changed 9 years ago by dbevans (David B. Evans)
Cc: | devans@… removed |
---|---|
Keywords: | evince dvi gnome removed |
Owner: | changed from macports-tickets@… to devans@… |
Port: | @3.18.2_0 removed |
Status: | new → assigned |
Version: | 2.3.4 |
comment:3 follow-up: 6 Changed 9 years ago by asic512
Message obtained from the command evince essai.dvi
** (evince:933): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken. Segmentation fault: 11
The Dbus error is probably due to a bad configuration ... Evince works fine with pdf files but seems to crash with any simple dvi (produced by LateX). I attach a simpler dvi.
comment:4 Changed 9 years ago by dbevans (David B. Evans)
I concur. I've tried a number of dvi files some complex, others very simple. All fail. In addition, all the files (including yours) work fine with xdvi (provided by port texlive-basic) and I can convert them to pdf with dvipdfm. So definitely a generic dvi problem.
comment:5 Changed 9 years ago by dbevans (David B. Evans)
Tentative fix committed in r143824. I've disabled the use of t1lib for font rasterization in the dvi backend. This is where the error was occurring. In addition, I added a patch to fix dvi font map handling in some rare instances. To clean up the console output, debug output is now disabled.
Evince now correctly renders dvi files (yours in particular) both as thumbnails and the normal page display.
To take advantage of these changes, update your port tree and rebuild evince.
sudo port selfupdate sudo port clean evince sudo port upgrade evince
Let me know if this fixes the problem for you as well so I can close the ticket. Thanks.
comment:6 Changed 9 years ago by dbevans (David B. Evans)
Replying to pf15@…:
Message obtained from the command evince essai.dvi
** (evince:933): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
The dbus issue is independent of the segmentation fault. The accessibility bus is a separate dbus instance from the main session dbus and is started on demand by processes that support it. This is what's failing for you. If you look at dbus related processes you should see something like this if all is well:
$ ps ax 18381 ?? S 0:00.17 /opt/local/bin/dbus-daemon --nofork --session 18384 ?? S 0:00.07 /opt/local/bin/dbus-daemon --config-file=/opt/local/etc/at-spi2/accessibility.conf --nofork --print-address 3 21493 ?? Ss 0:00.01 /opt/local/bin/dbus-daemon --system --nofork
The first is the normal session bus daemon, the second is the accessibility bus daemon and the third is the system dbus daemon.
Make sure that at-spi2-atk (a dependency of gtk3) is installed and that you haven't changed any dbus related conf files. You can also try logging out and then logging back in again to cause the dbus system to restart in case something has gotten hung up.
Sorry I can't offer too much more on this one. It should just work as shipped.
Segmentation fault: 11
}}}
}}}
The Dbus error is probably due to a bad configuration ... Evince works fine with pdf files but seems to crash with any simple dvi (produced by LateX). I attach a simpler dvi.
comment:7 follow-up: 9 Changed 9 years ago by asic512
The upgrade has fixed the problem with dvi files. Thanks !
I still have the Dbus problem which I don't understand ... After closing Evince I also get the following
Message warning:
(evince:41502): Gtk-WARNING **: Attempting to store changes into '/opt/local/share/recently-used.xbel', but faile\ d: La création du fichier « /opt/local/share/recently-used.xbel.5JHP9X » a échoué : dcv7\xe3h (evince:41502): Gtk-WARNING **: Attempting to set the permissions of '/opt/local/share/recently-used.xbel', but f\ ailed: \xccP\xff\u007f
comment:8 follow-up: 10 Changed 9 years ago by asic512
Thanks again for your helpful messages! I forgot to mention that after a ps I don't get the accessibility bus daemon. I just get
1838 ?? Ss 0:00.01 /opt/local/bin/dbus-daemon --system --nofork 40717 ?? S 0:00.03 /opt/local/bin/dbus-daemon --nofork --session
comment:9 Changed 9 years ago by dbevans (David B. Evans)
Replying to pf15@…: After closing Evince I also get the following
Message warning:
(evince:41502): Gtk-WARNING **: Attempting to store changes into '/opt/local/share/recently-used.xbel', but faile\ d: La création du fichier « /opt/local/share/recently-used.xbel.5JHP9X » a échoué : dcv7\xe3h (evince:41502): Gtk-WARNING **: Attempting to set the permissions of '/opt/local/share/recently-used.xbel', but f\ ailed: \xccP\xff\u007f
This is the file that GTK+ uses to keep track of recently used files for each GTK application. For example, by default, when you open a new window in evince, a window of file thumbnails is presented showing the files that you have recently opened with evince. Because it is regularly updated by GTK+, it needs to be in a directory to which you have read/write access. /opt/local/share
doesn't meet this criteria:
$ ls -ld /opt/local/share drwxr-xr-x 98 root admin 3332 Dec 24 08:19 /opt/local/share
This file is normally stored in your $HOME directory. For instance on my system, it's stored in
$ echo $HOME /Users/devans
as /Users/devans/.local/share/recently-used.xbel
This makes me think that your HOME environment variable is not set correctly.
comment:10 Changed 9 years ago by dbevans (David B. Evans)
Replying to pf15@…:
Thanks again for your helpful messages! I forgot to mention that after a ps I don't get the accessibility bus daemon. I just get
1838 ?? Ss 0:00.01 /opt/local/bin/dbus-daemon --system --nofork 40717 ?? S 0:00.03 /opt/local/bin/dbus-daemon --nofork --session
This is consistent with your error message and shows that the accessibility bus could not be started. Possibly due to permissions or other configuration problems.
I'm heading off for the Christmas holiday now but will take a look at the details of how this normally gets started after I return next week. Other than issuing the warning message this shouldn't effect the basic operation of evince or the other GNOME apps (other than possibly accessibility features).
comment:11 follow-up: 12 Changed 9 years ago by asic512
Thanks for your explanations: I made some progress..
First, after a cleaning of at-spi2-core and at-spi2-core and dbus , Evince can start rapidly without any error message.
My $HOME was correct. However I put in .xinitrc the following
export XDG_DATA_HOME=/Users/UUUUU/.local/share
where "UUUUU" is my user name. In this way I can get rid off the messages about recently-used.xbel.
But, when I use Evince I still get the following messages
** (evince:22569): WARNING **: AT-SPI: Could not obtain desktop path or name ** (evince:22563): WARNING **: atk-bridge: GetRegisteredEvents returned message with unknown signature ** (evince:22563): WARNING **: atk-bridge: get_device_events_reply: unknown signature
And now I have the 3 processes
77 ?? Ss 0:00.02 /opt/local/bin/dbus-daemon --system --nofork 389 ?? S 0:00.36 /opt/local/bin/dbus-daemon --nofork --session 7512 ?? S 0:00.05 /opt/local/bin/dbus-daemon --config-file=/opt/local/etc/at-spi2/accessibility.conf --nofork --print-address 3
Happy Christmas!
comment:12 Changed 9 years ago by asic512
If I start Xquartz from the launchpad (instead of using startx) with no personnal configuration file (no .xinitrc or .xinitrc.d), I can launch evince from a xterm, then the accessibility bus starts correctly. I get no error or warning message from evince. However gnome-panel crashes:
** (gnome-panel:1396): WARNING **: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files ** (gnome-panel:1396): WARNING **: Failed to load applications: Failed to look up menu_file for "gnome-applications.menu" ** (gnome-panel:1396): WARNING **: Could not ask session manager if shut down is available: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files Segmentation fault: 11
(is it compatible with quartz wm ?) and I get from gnome-session the following:
gnome-session-is-accelerated: No composite extension. gnome-session-is-accelerated: No GLX_EXT_texture_from_pixmap support. Dec 27 12:45:45 gnome-session-binary[1400] <Warning>: WARNING: Using null backend for session tracking Dec 27 12:45:45 gnome-session-binary[1400] <Warning>: WARNING: Unable to find required component 'gnome-shell' Dec 27 12:45:45 gnome-session-binary[1400] <Warning>: WARNING: Unable to find required component 'gnome-settings-daemon' ** (gnome-session-quit:1412): WARNING **: Failed to call logout: GDBus.Error:org.gnome.SessionManager.NotInRunning: Logout interface is only available during the Running phase
So what are the right configuration files that I should put in .xinit.d in order to start a gnome-session ? Thanks.
comment:13 Changed 7 years ago by dbevans (David B. Evans)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
The dvi issue has been fixed for some time and I cannot reproduce the dbus errors described here with current evince versions.
Closing as fixed.
gnome-session continues to be a problem and should be addressed as a separate ticket.
As mentioned via email, I have confirmed that there is an issue with evince concerning the rendering of .dvi files that causes a segfault in t1lib. I'm working to identify the specific cause and hopefully a fix. Currently, it's not clear whether this is a problem with the .dvi file that you provided or .dvi files in general. Other supported file types such as pdf, jpeg, tiff, etc work fine.
I have not been able to reproduce any dbus problems. I see no errors at all when evince starts up, only when I attempt to open the .dvi file that you provided. If you would submit the exact text of the error message that you see (using WikiFormatting) that would help in understanding the nature of the error you are seeing. It seems to be specific to your system, however.
Will update this ticket when I have more information. Thanks for your report.