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 752686 - Crash opening reconcile window with new KVP code
Crash opening reconcile window with new KVP code
Status: RESOLVED FIXED
Product: GnuCash
Classification: Other
Component: User Interface General
git-master
Other Mac OS
: Normal major
: ---
Assigned To: gnucash-ui-maint
gnucash-ui-maint
Depends on:
Blocks:
 
 
Reported: 2015-07-21 21:06 UTC by Mike Alexander
Modified: 2018-06-29 23:41 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Crash report for the crash (19.56 KB, application/zip)
2015-07-21 21:06 UTC, Mike Alexander
Details
Stack trace from debug build (19.54 KB, application/zip)
2015-07-21 21:22 UTC, Mike Alexander
Details

Description Mike Alexander 2015-07-21 21:06:53 UTC
Created attachment 307865 [details]
Crash report for the crash

Crash in KVP code when fetching last reconciliation date while opening the reconcile window.  The attached crash report contains a stack trace.  Note that this was an optimized build and the call to gnc_get_reconcile_info seems to have been inlined.  Prior to the crash (but I don't know how long before) I got these messages:

sys:1: Warning: gvalue.c:179: cannot initialize GValue with type 'gint64', the value has already been initialized as '(null)'
sys:1: Warning: g_value_copy: assertion 'G_IS_VALUE (dest_value)' failed

This version was built last night from git rev 4551ee0.  It's the X Window version running on MacOS 10.10.4.
Comment 1 Mike Alexander 2015-07-21 21:22:41 UTC
Created attachment 307866 [details]
Stack trace from debug build

This is reproducible for one account (at least) so I got a stack trace from a debug build.  Other accounts work ok.  The reconcile-info slot for the bad account is

    <slot>
      <slot:key>reconcile-info</slot:key>
      <slot:value type="frame">
        <slot>
          <slot:key>auto-interest-transfer</slot:key>
          <slot:value type="string">false</slot:value>
        </slot>
        <slot>
          <slot:key>include-children</slot:key>
          <slot:value type="integer">0</slot:value>
        </slot>
        <slot>
          <slot:key>last-date</slot:key>
          <slot:value type="integer">1432267199</slot:value>
        </slot>
        <slot>
          <slot:key>last-interval</slot:key>
          <slot:value type="frame">
            <slot>
              <slot:key>days</slot:key>
              <slot:value type="integer">0</slot:value>
            </slot>
            <slot>
              <slot:key>months</slot:key>
              <slot:value type="integer">1</slot:value>
            </slot>
          </slot:value>
        </slot>
      </slot:value>
    </slot>
Comment 2 Mike Alexander 2015-07-22 21:56:09 UTC
I had a chance to look at this today and just pushed a change to fix it.  It turned out to be a fairly trivial problem with some uninitialized variables.  The fix is in commit 0db17f109.
Comment 3 John Ralls 2018-06-29 23:41:59 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=752686. Please update any external references or bookmarks.