summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtes2006-03-07 21:28:47 +0000
committerLudovic Courtes2006-03-07 21:28:47 +0000
commit7ddcfdf4f07723986ec519fb8b9eb965bd24ea1d (patch)
tree514b98df99b0bb63ffb10e5ecf296f3edcca4ed7
parent7410fe3c62754c0c469e18137fc03ff90fe1c20f (diff)
parent7a234de08a024d77d32c7f4784d1e40c06a6893a (diff)
downloadskribilo-7ddcfdf4f07723986ec519fb8b9eb965bd24ea1d.tar.gz
skribilo-7ddcfdf4f07723986ec519fb8b9eb965bd24ea1d.tar.lz
skribilo-7ddcfdf4f07723986ec519fb8b9eb965bd24ea1d.zip
Fixed `copy-engine' with respect to the writers optimization.
Patches applied: * lcourtes@laas.fr--2004-libre/skribilo--devel--1.2 (patch 66) - Fixed `copy-engine' with respect to the writers optimization. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-41
-rw-r--r--ChangeLog20
-rw-r--r--src/guile/skribilo/engine.scm11
2 files changed, 31 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index e5cdb57..857cfb9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,26 @@
# arch-tag: automatic-ChangeLog--lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2
#
+2006-03-07 21:28:47 GMT Ludovic Courtes <ludovic.courtes@laas.fr> patch-41
+
+ Summary:
+ Fixed `copy-engine' with respect to the writers optimization.
+ Revision:
+ skribilo--devel--1.2--patch-41
+
+ Patches applied:
+
+ * lcourtes@laas.fr--2004-libre/skribilo--devel--1.2 (patch 66)
+
+ - Fixed `copy-engine' with respect to the writers optimization.
+
+ modified files:
+ ChangeLog src/guile/skribilo/engine.scm
+
+ new patches:
+ lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-66
+
+
2006-03-07 21:28:02 GMT Ludovic Courtes <ludovic.courtes@laas.fr> patch-40
Summary:
diff --git a/src/guile/skribilo/engine.scm b/src/guile/skribilo/engine.scm
index fbaf4d2..de455cd 100644
--- a/src/guile/skribilo/engine.scm
+++ b/src/guile/skribilo/engine.scm
@@ -207,6 +207,17 @@
(slot-set! new 'symbol-table (or symbol-table (slot-ref e 'symbol-table)))
(slot-set! new 'customs (or custom (slot-ref e 'customs)))
+ ;; XXX: We don't use `list-copy' here because writer lists are only
+ ;; consed, never mutated.
+
+ ;(slot-set! new 'free-writers (list-copy (slot-ref e 'free-writers)))
+
+ (let ((new-writers (make-hash-table)))
+ (hash-for-each (lambda (m w*)
+ (hashq-set! new-writers m w*))
+ (slot-ref e 'writers))
+ (slot-set! new 'writers new-writers))
+
(set! *engines* (cons new *engines*))
new))