After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 497477 - CHITEST crash
CHITEST crash
Status: RESOLVED FIXED
Product: Gnumeric
Classification: Applications
Component: General
git master
Other All
: Normal critical
: ---
Assigned To: Jody Goldberg
Jody Goldberg
Depends on:
Blocks:
 
 
Reported: 2007-11-16 20:41 UTC by Jérôme Guelfucci
Modified: 2007-11-30 16:36 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Jérôme Guelfucci 2007-11-16 20:41:24 UTC
Steps to reproduce:
1. Open http://launchpadlibrarian.net/10442371/alto.gnumeric
2. Click on cell H129
3. Try to delete the cell.


Stack trace:
GNU gdb 6.6-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
(gdb) handle SIG33 pass nostop noprint
Signal        Stop	Print	Pass to program	Description
SIG33         No	No	Yes		Real-time event 33
(gdb) set pagination 0
(gdb) run 
Starting program: /usr/bin/gnumeric 
[Thread debugging using libthread_db enabled]
[New Thread -1225222480 (LWP 4222)]

** (/usr/bin/gnumeric:4222): WARNING **: Using default value '1'
Reading file:///home/famille/Desktop/alto.gnumeric

Program received signal SIGSEGV, Segmentation fault.

Thread NaN (LWP 4222)

  • #0 gnumeric_chitest
    at ../../../plugins/fn-stat/functions.c line 1495
  • #1 function_call_with_exprs
    at ../../src/func.c line 1239
  • #2 gnm_expr_eval
    at ../../src/expr.c line 1319
  • #3 gnm_expr_top_eval
    at ../../src/expr.c line 2820
  • #4 gnm_cell_eval_content
    at ../../src/dependent.c line 1449
  • #5 workbook_recalc
    at ../../src/dependent.c line 1545
  • #6 update_after_action
    at ../../src/commands.c line 390
  • #7 command_push_undo
    at ../../src/commands.c line 775
  • #8 gnm_pane_key_press
    at ../../src/gnm-pane.c line 380
  • #9 _gtk_marshal_BOOLEAN__BOXED
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkmarshalers.c line 84
  • #10 g_type_class_meta_marshal
    at /build/buildd/glib2.0-2.14.1/gobject/gclosure.c line 567
  • #11 IA__g_closure_invoke
    at /build/buildd/glib2.0-2.14.1/gobject/gclosure.c line 490
  • #12 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2478
  • #13 IA__g_signal_emit_valist
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2209
  • #14 IA__g_signal_emit
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2243
  • #15 gtk_widget_event_internal
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkwidget.c line 4675
  • #16 IA__gtk_window_propagate_key_event
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkwindow.c line 4935
  • #17 gtk_window_key_press_event
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkwindow.c line 4965
  • #18 _gtk_marshal_BOOLEAN__BOXED
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkmarshalers.c line 84
  • #19 g_type_class_meta_marshal
    at /build/buildd/glib2.0-2.14.1/gobject/gclosure.c line 567
  • #20 IA__g_closure_invoke
    at /build/buildd/glib2.0-2.14.1/gobject/gclosure.c line 490
  • #21 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2478
  • #22 IA__g_signal_emit_valist
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2209
  • #23 IA__g_signal_emit
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2243
  • #24 gtk_widget_event_internal
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkwidget.c line 4675
  • #25 IA__gtk_propagate_event
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkmain.c line 2291
  • #26 IA__gtk_main_do_event
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkmain.c line 1537
  • #27 gdk_event_dispatch
    at /build/buildd/gtk+2.0-2.12.0/gdk/x11/gdkevents-x11.c line 2351
  • #28 IA__g_main_context_dispatch
    at /build/buildd/glib2.0-2.14.1/glib/gmain.c line 2061
  • #29 g_main_context_iterate
    at /build/buildd/glib2.0-2.14.1/glib/gmain.c line 2694
  • #30 IA__g_main_loop_run
    at /build/buildd/glib2.0-2.14.1/glib/gmain.c line 2898
  • #31 IA__gtk_main
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkmain.c line 1144
  • #32 main
    at ../../src/main-application.c line 535

Thread 1 (Thread -1225222480 (LWP 4222))

  • #0 gnumeric_chitest
    at ../../../plugins/fn-stat/functions.c line 1495
  • #1 function_call_with_exprs
    at ../../src/func.c line 1239
  • #2 gnm_expr_eval
    at ../../src/expr.c line 1319
  • #3 gnm_expr_top_eval
    at ../../src/expr.c line 2820
  • #4 gnm_cell_eval_content
    at ../../src/dependent.c line 1449
  • #5 workbook_recalc
    at ../../src/dependent.c line 1545
  • #6 update_after_action
    at ../../src/commands.c line 390
  • #7 command_push_undo
    at ../../src/commands.c line 775
  • #8 gnm_pane_key_press
    at ../../src/gnm-pane.c line 380
  • #9 _gtk_marshal_BOOLEAN__BOXED
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkmarshalers.c line 84
  • #10 g_type_class_meta_marshal
    at /build/buildd/glib2.0-2.14.1/gobject/gclosure.c line 567
  • #11 IA__g_closure_invoke
    at /build/buildd/glib2.0-2.14.1/gobject/gclosure.c line 490
  • #12 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2478
  • #13 IA__g_signal_emit_valist
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2209
  • #14 IA__g_signal_emit
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2243
  • #15 gtk_widget_event_internal
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkwidget.c line 4675
  • #16 IA__gtk_window_propagate_key_event
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkwindow.c line 4935
  • #17 gtk_window_key_press_event
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkwindow.c line 4965
  • #18 _gtk_marshal_BOOLEAN__BOXED
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkmarshalers.c line 84
  • #19 g_type_class_meta_marshal
    at /build/buildd/glib2.0-2.14.1/gobject/gclosure.c line 567
  • #20 IA__g_closure_invoke
    at /build/buildd/glib2.0-2.14.1/gobject/gclosure.c line 490
  • #21 signal_emit_unlocked_R
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2478
  • #22 IA__g_signal_emit_valist
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2209
  • #23 IA__g_signal_emit
    at /build/buildd/glib2.0-2.14.1/gobject/gsignal.c line 2243
  • #24 gtk_widget_event_internal
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkwidget.c line 4675
  • #25 IA__gtk_propagate_event
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkmain.c line 2291
  • #26 IA__gtk_main_do_event
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkmain.c line 1537
  • #27 gdk_event_dispatch
    at /build/buildd/gtk+2.0-2.12.0/gdk/x11/gdkevents-x11.c line 2351
  • #28 IA__g_main_context_dispatch
    at /build/buildd/glib2.0-2.14.1/glib/gmain.c line 2061
  • #29 g_main_context_iterate
    at /build/buildd/glib2.0-2.14.1/glib/gmain.c line 2694
  • #30 IA__g_main_loop_run
    at /build/buildd/glib2.0-2.14.1/glib/gmain.c line 2898
  • #31 IA__gtk_main
    at /build/buildd/gtk+2.0-2.12.0/gtk/gtkmain.c line 1144
  • #32 main
    at ../../src/main-application.c line 535
The program is running.  Exit anyway? (y or n) 

Other information:
This was reported on Launchpad: https://bugs.launchpad.net/ubuntu/+source/gnumeric/+bug/114644
by: https://bugs.launchpad.net/~alioth87-online

Reported when using 1.7.8, original stack trace: http://launchpadlibrarian.net/7634213/%3Cfdopen%3E

Threadstacktrace: http://launchpadlibrarian.net/7634214/%3Cfdopen%3E

I could reproduce with 1.7.11 and produced the stack trace I copied here.
Comment 1 Jon Kåre Hellan 2007-11-16 22:16:52 UTC
Can reproduce. Here's my stack trace:

  • #0 gnumeric_chitest
    at functions.c line 1495
  • #1 function_call_with_exprs
    at func.c line 1239
  • #2 gnm_expr_eval
    at expr.c line 1319
  • #3 gnm_expr_top_eval
    at expr.c line 2835
  • #4 gnm_cell_eval_content
    at dependent.c line 1449
  • #5 dependent_eval
    at dependent.c line 1545
  • #6 workbook_recalc
    at dependent.c line 2587
  • #7 update_after_action
    at commands.c line 389
  • #8 command_push_undo
    at commands.c line 742
  • #9 cmd_selection_clear
    at commands.c line 1665

Comment 2 Jon Kåre Hellan 2007-11-16 22:22:45 UTC
The crashing line is

plugins/fn-stat/functions.c:1496      p2.current_cell = p1.columns->data; 

where p1.columns == NULL

p1 = {columns = 0x0, column = 0x883ec90, col = 0, row = 4, cols = 1, rows = 5}
Comment 3 Morten Welinder 2007-11-17 00:50:59 UTC
That code needs life support.

This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.
Comment 4 Jérôme Guelfucci 2007-11-17 11:00:08 UTC
Thanks !
Comment 5 Jérôme Guelfucci 2007-11-29 17:46:20 UTC
Could you please provide the final patch for this ? Is it safe to apply it on gnumeric 1.7.11 source ? Thanks.
Comment 7 Jérôme Guelfucci 2007-11-30 16:36:57 UTC
Thank you.