Stack overflow in main.scm

David Reiser dbreiser at earthlink.net
Thu Oct 8 02:02:02 EDT 2009


I get a stack overflow when trying to run a Cash Flow report in  
gnucash built either from the 2.3.7 tarball or svn r18372. But it is a  
different error in each case.

In both cases, just launch gnucash ( I have about 8 registers open by  
default) and pick the Cash Flow report. The progress bar nearly  
completes before the crash.

cash flow report from tarball-built (2.3.7):

Backtrace:
In unknown file:
    ?:  7* [gnc:find-file "base-uri" #]
    ?:  8* [gnc:debug "gnc:find-file looking for " "base-uri" ...]
In /sw/share/gnucash/guile-modules/gnucash/main.scm:
  171:  9  [gnc-scm-log-debug ...
  171: 10* [strify ("gnc:find-file looking for " "base-uri" " in " ...)]
  159: 11  [string-join ("gnc:find-file looking for " "base-uri" " in  
" ...) ""]
     ...
  122: 12  [apply #<primitive-procedure string-append> ... ...
  124: 13* [loop #]
  125: 14  (if (null? remaining-elements) (quote ()) ...)
  127: 15  [cons "" ...
  127: 16* [cons "base-uri" ...
  128: 17* [loop #]
  125: 18  (if (null? remaining-elements) (quote ()) ...)
  127: 19  [cons "" ...
  127: 20* [cons " in " ...
  128: 21* [loop #]
  125: 22  (if (null? remaining-elements) (quote ()) ...)
  127: 23  [cons "" ...
  127: 24* [cons "(/Users/dbr/.gnucash/html/en_US.UTF-8 /Users/ 
dbr/.gnucash/html/en_US /Users/dbr/.gnucash/html/en /Users/ 
dbr/.gnucash/html/C)" ...
  128: 25* [loop ...
  128: 26* (cdr remaining-elements)

/sw/share/gnucash/guile-modules/gnucash/main.scm:128:46: In expression  
(cdr remaining-elements):
/sw/share/gnucash/guile-modules/gnucash/main.scm:128:46: Stack overflow


cashflow report from svn r18372:

Backtrace:
In unknown file:
    ?:  0* [#<procedure #f (window)> #<swig-pointer GncMainWindow *  
106000080>]
In /opt/gnucash-svn/share/gnucash/guile-modules/gnucash/report/report- 
gnome.scm:
   79:  1* (let* ((report #)) (gnc-main-window-open-report report  
window))
   81:  2  [gnc-main-window-open-report 0 #<swig-pointer GncMainWindow  
* 106000080>]
In unknown file:
    ?:  3* [gnc:find-doc-file "base-uri"]
    ?:  4* [gnc:find-localized-file "base-uri" #]
    ?:  5  (letrec (#) (# # base-directories))
     ...
    ?:  6  (or (gnc:find-file file #) (gnc:find-file file #) (loop  
prefixes #))
    ?:  7* [gnc:find-file "base-uri" ...
    ?:  8* [map #<procedure #f (prefix)> ("en_US.UTF-8" "en_US" "en"  
"C")]
    ?:  9* [#<procedure #f (prefix)> "en_US.UTF-8"]
    ?: 10* [build-path "/Users/dbr/.gnucash/html" "en_US.UTF-8"]
    ?: 11  [string-join ("/Users/dbr/.gnucash/html" "en_US.UTF-8") "/"]
In /opt/gnucash-svn/share/gnucash/guile-modules/gnucash/main.scm:
  120: 12  (if (or (not (list? lst)) (null? lst)) "" ...)
  120: 13* (or (not (list? lst)) (null? lst))
  120: 14* [not ...
  120: 15* (list? lst)

/opt/gnucash-svn/share/gnucash/guile-modules/gnucash/main.scm:120:16:  
In expression (list? lst):
/opt/gnucash-svn/share/gnucash/guile-modules/gnucash/main.scm:120:16:  
Stack overflow

The only difference should be that the swig I use for trunk builds is  
1.3.40 vs. whatever version is used for constructing the tarballs.

Mac OS X 10.6.1, Apple's gcc 4.2.1, guile 1.8.6, slib 3b1 (plus a  
guile patch for slib committed to their trunk just after 3b1 was  
released)

Dave
--
David Reiser
dbreiser at earthlink.net






More information about the gnucash-devel mailing list