[PATCH] [RFC] fixes for guile-1.8

Bill Nottingham notting at redhat.com
Tue May 9 18:31:57 EDT 2006


It still spews a huge pile of warnings on startup that I haven't tracked down
yet, but this is the start of some work to get gnucash going with guile-1.8.

What this patch changes:

qif-parse.scm: Fixes:

ERROR: In procedure scm_lreadr:
ERROR: /usr/src/build/746034-x86_64/BUILD/gnucash-1.9.5/intl-scm/../src/import-export/qif-import/qif-parse.scm:9:50: illegal character in escape sequence: #\|
make[2]: *** [guile-strings.c] Error 1

during build.

engine-helpers.c: scm_block_gc no longer exists in guile-1.8.

The engine-helpers.c probably needs wrapped in a version-check, which
is why this is a RFC...

Bill
-------------- next part --------------
--- gnucash-1.9.5/src/engine/engine-helpers.c.foo	2006-05-09 17:08:56.000000000 -0400
+++ gnucash-1.9.5/src/engine/engine-helpers.c	2006-05-09 17:09:05.000000000 -0400
@@ -1686,8 +1686,6 @@
 
   if (!q) return SCM_BOOL_F;
 
-  ++scm_block_gc;
-
   /* terms */
   pair = scm_cons (gnc_query_terms2scm (qof_query_get_terms (q)), SCM_EOL);
   pair = scm_cons (scm_str2symbol ("terms"), pair);
@@ -1723,7 +1721,6 @@
 
   /* Reverse this list; tag it as 'query-v2' */
   pair = scm_reverse (query_scm);
-  --scm_block_gc;
   return scm_cons (scm_str2symbol ("query-v2"), pair);
 }
 
@@ -1928,8 +1925,6 @@
   gboolean si1 = TRUE, si2 = TRUE, si3 = TRUE;
   int max_results = -1;
 
-  ++scm_block_gc;
-
   while (!SCM_NULLP (query_scm))
   {
     const gchar *symbol;
@@ -2008,8 +2003,6 @@
     }
   }
 
-  --scm_block_gc;
-
   if (ok && search_for) {
     qof_query_search_for (q, search_for);
     qof_query_set_sort_order (q, sp1, sp2, sp3);
--- gnucash-1.8.12/src/import-export/qif-import/qif-parse.scm.guile18	2006-03-16 12:56:35.000000000 +0100
+++ gnucash-1.8.12/src/import-export/qif-import/qif-parse.scm	2006-03-16 12:56:43.000000000 +0100
@@ -7,7 +7,7 @@
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (define qif-category-compiled-rexp 
-  (make-regexp "^ *(\\[)?([^]/\\|]*)(]?)(/?)([^\|]*)(\\|(\\[)?([^]/]*)(]?)(/?)(.*))? *$"))
+  (make-regexp "^ *(\\[)?([^]/\\|]*)(]?)(/?)([^\\|]*)(\\|(\\[)?([^]/]*)(]?)(/?)(.*))? *$"))
 
 (define qif-date-compiled-rexp 
   (make-regexp "^ *([0-9]+) *[-/.'] *([0-9]+) *[-/.'] *([0-9]+).*$|^ *([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]).*$"))


More information about the gnucash-devel mailing list