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 128393 - crash when removing empty row in spreadsheet
crash when removing empty row in spreadsheet
Status: VERIFIED FIXED
Product: GnuCash
Classification: Other
Component: User Interface General
1.8.x
Other other
: High critical
: ---
Assigned To: David Hampton
Chris Shoemaker
: 122788 125089 153310 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2003-12-02 21:24 UTC by liste
Modified: 2018-06-29 20:39 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description liste 2003-12-02 21:24:29 UTC
Package: GnuCash
Severity: major
Version: 1.8.7-4
Synopsis: crash when removing empty row in spreadsheet
Bugzilla-Product: GnuCash
Bugzilla-Component: User Interface General

Description:
Description of Problem:
it happens that you have four rows for one transaction. You want to
empty the account field but instead it crashes. 

Steps to reproduce the problem:
1. Enter a transaction:
transaction_number:description:account:amount from:amount to
row#1: NULL:transcation_descr_1:source_account:1000Euro:NULL
row#2: NULL:NULL:NULL:NULL:NULL
row#3: NULL:transcation_descr_2:target_account:NULL:1000Euro
row#4: NULL:NULL:NULL:NULL:NULL

then you try to minimise the empty rows by copying the description and
the amount to row#2:

row#1: NULL:transcation_descr_1:source_account:1000Euro:NULL
row#2: NULL:transcation_descr_2:NULL:NULL:1000Euro
row#3: NULL:NULL:target_account:NULL:1000Euro
row#4: NULL:NULL:NULL:NULL:NULL

Either now or when you then empty the field with 1000Euro in row#3 the
software crashes.

You lose all your data that you have entered so far without saving.


Actual Results:
Crash.

Expected Results:
A safe possibility to remove empty rows.

How often does this happen?
Everytime. I can repeat it.

Additional Information:




Debugging Information:

Backtrace was generated from '/usr/bin/guile-1.6'

(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...[New
Thread 16384 (LWP 6018)]

(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
0x400cdbb8 in waitpid () from /lib/libpthread.so.0

Thread 1 (Thread 16384 (LWP 6018))

  • #0 waitpid
    from /lib/libpthread.so.0
  • #1 GTK_CAULDRON_ESCAPE
    from /usr/lib/libgnomeui.so.32
  • #2 __pthread_sighandler
    from /lib/libpthread.so.0
  • #3 __libc_sigaction
    from /lib/libc.so.6
  • #4 gnc_split_register_layout_new
    from /usr/lib/gnucash/gnucash/libgncmod-ledger-core.so.0
  • #5 gnc_split_register_load
    from /usr/lib/gnucash/gnucash/libgncmod-ledger-core.so.0
  • #6 gnc_ledger_display_find_by_query
    from /usr/lib/gnucash/gnucash/libgncmod-ledger-core.so.0
  • #7 gnc_resume_gui_refresh
    from /usr/lib/gnucash/gnucash/libgncmod-app-utils.so.0
  • #8 gnc_resume_gui_refresh
    from /usr/lib/gnucash/gnucash/libgncmod-app-utils.so.0
  • #9 gnc_split_register_set_read_only
    from /usr/lib/gnucash/gnucash/libgncmod-ledger-core.so.0
  • #10 gnc_table_set_virt_cell_cursor
    from /usr/lib/gnucash/gnucash/libgncmod-register-core.so.0
  • #11 gnc_table_move_cursor_gui
    from /usr/lib/gnucash/gnucash/libgncmod-register-core.so.0
  • #12 gnc_table_verify_cursor_position
    from /usr/lib/gnucash/gnucash/libgncmod-register-core.so.0
  • #13 gnc_table_wrap_verify_cursor_position
    from /usr/lib/gnucash/gnucash/libgncmod-register-core.so.0
  • #14 gnucash_sheet_cursor_set_from_table
    from /usr/lib/gnucash/gnucash/libgncmod-register-gnome.so.0
  • #15 gnucash_sheet_modify_current_cell
    from /usr/lib/gnucash/gnucash/libgncmod-register-gnome.so.0
  • #16 gtk_marshal_BOOL__POINTER
    from /usr/lib/libgtk-1.2.so.0
  • #17 gtk_signal_set_funcs
    from /usr/lib/libgtk-1.2.so.0
  • #18 gtk_signal_emit
    from /usr/lib/libgtk-1.2.so.0
  • #19 gtk_widget_event
    from /usr/lib/libgtk-1.2.so.0
  • #20 gtk_propagate_event
    from /usr/lib/libgtk-1.2.so.0
  • #21 gtk_main_do_event
    from /usr/lib/libgtk-1.2.so.0
  • #22 gdk_wm_protocols_filter
    from /usr/lib/libgdk-1.2.so.0
  • #23 g_get_current_time
    from /usr/lib/libglib-1.2.so.0
  • #24 g_get_current_time
    from /usr/lib/libglib-1.2.so.0
  • #25 g_main_run
    from /usr/lib/libglib-1.2.so.0
  • #26 gtk_main
    from /usr/lib/libgtk-1.2.so.0
  • #27 gnc_ui_start_event_loop
    from /usr/lib/gnucash/libgncgnome.so.0
  • #28 _init
    from /usr/lib/gnucash/libgw-gnc.so.0
  • #29 scm_ceval
    from /usr/lib/libguile.so.12
  • #30 scm_ceval
    from /usr/lib/libguile.so.12
  • #31 scm_ceval
    from /usr/lib/libguile.so.12
  • #32 scm_ceval
    from /usr/lib/libguile.so.12
  • #33 scm_i_eval_x
    from /usr/lib/libguile.so.12
  • #34 scm_primitive_eval_x
    from /usr/lib/libguile.so.12
  • #35 scm_primitive_eval
    from /usr/lib/libguile.so.12
  • #36 scm_internal_dynamic_wind
    from /usr/lib/libguile.so.12
  • #37 scm_eval_x
    from /usr/lib/libguile.so.12
  • #38 scm_shell
    from /usr/lib/libguile.so.12
  • #39 scm_init_guile
    from /usr/lib/libguile.so.12
  • #40 scm_init_guile
    from /usr/lib/libguile.so.12
  • #41 scm_boot_guile
    from /usr/lib/libguile.so.12
  • #42 main
  • #43 __libc_start_main
    from /lib/libc.so.6
  • #0 waitpid
    from /lib/libpthread.so.0




------- Bug moved to this database by unknown@bugzilla.gnome.org 2003-12-02 16:24 -------

The original reporter (liste@garrecht.de) of this bug does not have an account here.
Reassigning to the exporter, unknown@bugzilla.gnome.org.
Reassigning to the default owner of the component, hampton@employees.org.

Comment 1 Christian Stimming 2003-12-03 09:48:45 UTC
The supposed way to handle "empty rows" is that you click on the row,
then click on the button "delete" to remove this (empty) transaction.
From what I understand in your description, this is not what you tried
to do. Copying the description from one "row" into another doesn't
"delete" "rows"; instead, a row is only one view of a transaction and
either a transaction is created or it is deleted. The user is not
supposed to copy fields of a transaction into some other transaction
if the other transaction should rather be deleted completely. Did I
misunderstand anything here?
Comment 2 Elijah Newren 2003-12-08 05:05:43 UTC
*** Bug 125089 has been marked as a duplicate of this bug. ***
Comment 3 Elijah Newren 2003-12-08 05:05:46 UTC
*** Bug 122788 has been marked as a duplicate of this bug. ***
Comment 4 Elijah Newren 2003-12-08 05:07:01 UTC
Since others have apparently also gotten this bug (using different
methods), I'm marking as new, setting priority->high and
severity->critical (it's a crasher), setting version->1.8.x, and
adding the bugsquad keyword.
Comment 5 linas 2004-06-01 14:20:41 UTC
I couldn't reproduce this crash with CVS 1.8 branch head.  After a while,  
I did, however, end up with a transaction with four splits, all of whose 
amounts were zero, and which gnucash was claiming to be unbalanced, and 
yet it couldn't balance, and thus, wouldn't allow me to leave the  
transaction.  Deleting was the only way out.  
 
p.s. the 'transaction unbalanced' dialog options are confusing. 
Comment 6 Sebastien Millet 2004-06-04 00:15:42 UTC
I encountered a bug which may be the same (still here in 1.8.9), in the
recurrent transaction module.
If i delete completely one of the scheduled transaction lines while in the last
window when the transaction is due, guile segfaults.

To reproduce it :

- Have a recurrent transaction which is due today
- When you launch GNUCash, it reminds you about this transaction
- You pass two windows (the first where you select the transactions to create,
the second named "to create transaction preparation")
- At the last window, when you can review the created transaction, delete
completelly one of the lines of the transaction (typically double-clic on the
description, delete, tab, delete, tab, delete, tab, delete)
- When, on the debit column, you press tab again to leave this (now empty) line,
guile crashes with a segfault.

This bug seems only present in the recurrent transaction window, i wasn't able
to reproduce it in the general ledger window.
Comment 7 Christian Stimming 2004-10-05 07:52:20 UTC
*** Bug 153310 has been marked as a duplicate of this bug. ***
Comment 8 Chris Shoemaker 2006-03-17 21:08:32 UTC
I don't know when this was fixed, but I can't reproduce this with 1.9.2.

The behavior I'm seeing in both 1.8.12 and 1.9.2 is that if you blank out a row, and then leave it, it is immediately deleted.
Comment 9 John Ralls 2018-06-29 20:39:13 UTC
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=128393. Please update any external references or bookmarks.