Bug#775945: reportbug segfaults when the DISPLAY is not available

Christian Brabandt cb at 256bit.org
Sat Jan 24 14:10:27 UTC 2015


Hallo Sandro!

Sandro Tosi schrieb am Samstag, den 24. Januar 2015:

> control: tags -1 + moreinfo
> 
> Hello,
> 
> On Wed, Jan 21, 2015 at 7:31 PM, Christian Brabandt <cb at 256bit.org> wrote:
> > DISPLAY= reportbug segfaults.
> >
> > It would be nice, if it could fall back to a terminal like behaviour, if the
> > gui is not available
> 
> The log you reported is not about a segfault, but just the workings
> python-gtk2 emits if DISPLAY is unaccessible. Additionally I would say
> it's python-gtk2 which should fail in case DISPLAY is missing.

And then it segfaults.

Report generated with
env -u DISPLAY reportbug |tail reportbug.log
(Additional output from the shell, after all the stacktrace, which is 
not caught by tail):
zsh: floating point exception (core dumped)

I am attaching the logfile, as well as the report from loading the file 
in gdb (this is not very useful, by itsself, because it is no debug 
build. Do I need a python debug build?

Best,
Christian
-- 
Solange Menschen denken, daß Tiere nicht fühlen,
Müssen Tiere fühlen, daß Menschen nicht denken!
		-- Meta-Ger
-------------- next part --------------
/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:57: GtkWarning: could not open display
  warnings.warn(str(e), _gtk.Warning)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1308: Warning: invalid (NULL) pointer instance
  gtk.Assistant.__init__ (self)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1308: Warning: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
  gtk.Assistant.__init__ (self)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1308: GtkWarning: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
  gtk.Assistant.__init__ (self)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1308: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
  gtk.Assistant.__init__ (self)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1335: GtkWarning: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
  widget.set_label("_Quit")
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1335: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
  widget.set_label("_Quit")
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1336: GtkWarning: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
  widget.set_image(image)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1336: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
  widget.set_image(image)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1336: Warning: value "TRUE" of type 'gboolean' is invalid or out of range for property 'visible' of type 'gboolean'
  widget.set_image(image)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1340: GtkWarning: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
  widget.set_label ("_Continue")
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1340: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
  widget.set_label ("_Continue")
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1341: GtkWarning: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
  widget.set_image (image)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1341: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
  widget.set_image (image)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:1341: Warning: value "TRUE" of type 'gboolean' is invalid or out of range for property 'visible' of type 'gboolean'
  widget.set_image (image)
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:454: GtkWarning: Screen for GtkWindow not set; you must always set
a screen for a GtkWindow before using the window
  gtk.main ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:454: GtkWarning: IA__gdk_screen_get_display: assertion 'GDK_IS_SCREEN (screen)' failed
  gtk.main ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:454: GtkWarning: IA__gdk_keymap_get_for_display: assertion 'GDK_IS_DISPLAY (display)' failed
  gtk.main ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:454: Warning: invalid (NULL) pointer instance
  gtk.main ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:454: Warning: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
  gtk.main ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:606: GtkWarning: IA__gdk_pango_context_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
  self.entry = gtk.Entry ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:606: PangoWarning: pango_context_set_font_description: assertion 'context != NULL' failed
  self.entry = gtk.Entry ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:606: PangoWarning: pango_context_set_base_dir: assertion 'context != NULL' failed
  self.entry = gtk.Entry ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:606: PangoWarning: pango_context_set_language: assertion 'context != NULL' failed
  self.entry = gtk.Entry ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:606: PangoWarning: pango_layout_new: assertion 'context != NULL' failed
  self.entry = gtk.Entry ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:606: PangoWarning: pango_layout_set_attributes: assertion 'layout != NULL' failed
  self.entry = gtk.Entry ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:606: PangoWarning: pango_layout_set_text: assertion 'layout != NULL' failed
  self.entry = gtk.Entry ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:606: PangoWarning: pango_layout_get_unknown_glyphs_count: assertion 'PANGO_IS_LAYOUT (layout)' failed
  self.entry = gtk.Entry ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:606: Warning: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
  self.entry = gtk.Entry ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:625: GtkWarning: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
  completion = gtk.EntryCompletion ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:625: Warning: g_object_get: assertion 'G_IS_OBJECT (object)' failed
  completion = gtk.EntryCompletion ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:625: Warning: invalid (NULL) pointer instance
  completion = gtk.EntryCompletion ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:625: Warning: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
  completion = gtk.EntryCompletion ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: GtkWarning: Screen for GtkWindow not set; you must always set
a screen for a GtkWindow before using the window
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: GtkWarning: IA__gdk_pango_context_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_context_set_font_description: assertion 'context != NULL' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_context_set_base_dir: assertion 'context != NULL' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_context_set_language: assertion 'context != NULL' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_new: assertion 'context != NULL' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_set_text: assertion 'layout != NULL' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_set_attributes: assertion 'layout != NULL' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_set_justify: assertion 'layout != NULL' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_set_alignment: assertion 'layout != NULL' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_set_ellipsize: assertion 'PANGO_IS_LAYOUT (layout)' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_set_single_paragraph_mode: assertion 'PANGO_IS_LAYOUT (layout)' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_set_wrap: assertion 'PANGO_IS_LAYOUT (layout)' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_set_width: assertion 'layout != NULL' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_get_extents: assertion 'layout != NULL' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: Warning: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: GtkWarning: IA__gdk_screen_get_width: assertion 'GDK_IS_SCREEN (screen)' failed
  self.assistant.show ()
/usr/lib/python2.7/dist-packages/reportbug/ui/gtk2_ui.py:519: PangoWarning: pango_layout_get_line_count: assertion 'layout != NULL' failed
  self.assistant.show ()
zsh: floating point exception (core dumped) 
-------------- next part --------------
GNU gdb (Debian 7.7.1+dfsg-5) 7.7.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
BFD: Warning: /home/chrisbra/code/vim/src/core is truncated: expected core file size >= 37244928, found: 10485760.
[New LWP 12953]
[New LWP 12949]
Failed to read a valid object file image from memory.
Core was generated by `/usr/bin/python /usr/bin/reportbug'.
Program terminated with signal SIGFPE, Arithmetic exception.
#0  0x00007f5a7c8cf2dc in ?? ()
(gdb) backtrace full
Python Exception <class 'gdb.MemoryError'> Cannot access memory at address 0x7f5a76151040: 
#0  0x00007f5a7c8cf2dc in ?? ()
No symbol table info available.
Cannot access memory at address 0x7f5a76151040
(gdb) info registers
rax            0x761512ff	1981092607
rbx            0x2319e10	36806160
rcx            0x0	0
rdx            0x0	0
rsi            0xffffffff	4294967295
rdi            0x0	0
rbp            0x7f5a	0x7f5a
rsp            0x7f5a76151040	0x7f5a76151040
r8             0x0	0
r9             0x7f5a704c0b80	140026407816064
r10            0x7f5a76156cf0	140026504899824
r11            0x21	33
r12            0x76151300	1981092608
r13            0x7f5a76151080	140026504876160
r14            0x76151300	1981092608
r15            0x0	0
rip            0x7f5a7c8cf2dc	0x7f5a7c8cf2dc
eflags         0x10246	[ PF ZF IF RF ]
cs             0x33	51
ss             0x2b	43
ds             0x0	0
es             0x0	0
fs             0x0	0
gs             0x0	0
(gdb) x/16i $pc
=> 0x7f5a7c8cf2dc:	Cannot access memory at address 0x7f5a7c8cf2dc
(gdb) thread apply all backtrace
Python Exception <class 'gdb.MemoryError'> Cannot access memory at address 0x7fff37c5edc0: 

Thread 2 (LWP 12949):
#0  0x00007f5a821b6050 in ?? ()
Cannot access memory at address 0x7fff37c5edc0
(gdb) uquit


More information about the pkg-gnome-maintainers mailing list