[O] (error Stack overflow in equal)

2013-08-31 Thread Jambunathan K

Export the below file to ODT.  You will see the following stacktrace.

Debugger entered--Lisp error: (error Stack overflow in equal)
  gethash(((table (:type org :attr_odt (:style \GriddedTable\) :parent)) . 
0))
  org-export-table-cell-width((table-cell (:parent (table-row (:type standard 
 )
  org-odt-table-cell((table-cell ))
  org-export-data((table-cell ))

Just to remind you, the table is created on fly by manipulating the
tree.  Using an `eq' as predicate in `org-export-table-cell-width'
solves the problem.  I am not sure this would be the right fix though. 

The last I have seen/worked (which is long time back), there was no
caching.

ps: If you aren't seeing the above trace in org repo, just pull from my
repo.

Web URL: http://repo.or.cz/w/org-mode/org-kjn.git
Pull URL: http://repo.or.cz/r/org-mode/org-kjn.git

#+ATTR_ODT: :list-table t
- Row 1
  - 1.1
  - 1.2
  - 1.3
- Row 2
  - 2.1
  - 2.2
  - 2.3

#+ATTR_ODT: :list-table t
- Row 3
  - 3.1
  - 3.2
  - 3.3
- Row 4
  - 4.1
  - 4.2
  - 4.3


Re: [O] (error Stack overflow in equal)

2013-08-29 Thread Nicolas Goaziou
Hello,

Jambunathan K kjambunat...@gmail.com writes:

 Export the below file to ODT.  You will see the following stacktrace.

 Debugger entered--Lisp error: (error Stack overflow in equal)
   gethash(((table (:type org :attr_odt (:style \GriddedTable\) :parent)) 
 . 0))
   org-export-table-cell-width((table-cell (:parent (table-row (:type standard 
  )
   org-odt-table-cell((table-cell ))
   org-export-data((table-cell ))

 Just to remind you, the table is created on fly by manipulating the
 tree.  Using an `eq' as predicate in `org-export-table-cell-width'
 solves the problem.  I am not sure this would be the right fix though.

Indeed, predicate has to be `eq', but then, key used (a cons cell) is
invalid. I changed both key and value structure in cache so it can use
`eq' as a predicate.

This should now be fixed. Thank you for reporting it.


Regards,

-- 
Nicolas Goaziou