- const struct cell_contents *contents = &cell.contents[i];
-
- if (contents->text)
- {
- xmlTextWriterStartElement (odt->content_wtr, _xml("text:p"));
-
- if ( r < table_ht (tab) || c < table_hl (tab) )
- xmlTextWriterWriteAttribute (odt->content_wtr, _xml("text:style-name"), _xml("Table_20_Heading"));
- else
- xmlTextWriterWriteAttribute (odt->content_wtr, _xml("text:style-name"), _xml("Table_20_Contents"));
-
- if (strchr (contents->text, '\n'))
- {
- char *line = xstrdup (contents->text);
- write_xml_with_line_breaks (odt->content_wtr, line);
- free (line);
- }
- else
- xmlTextWriterWriteString (odt->content_wtr, _xml(contents->text));
-
- xmlTextWriterEndElement (odt->content_wtr); /* text:p */
- }
- else if (contents->table)
- {
- write_table (odt, contents->table);
- continue;
- }
+ /* XXX */
+ char *s = output_get_text_from_markup (cell.text);
+ write_xml_with_line_breaks (odt, s);
+ free (s);