|
From: Stefan S. <se...@sy...> - 2005-11-10 14:57:19
|
Tony Graham wrote:
> Stefan Seefeld <se...@sy...> writes:
>
>>Tony Graham wrote:
>
> ...
>
>>I get a segmentation fault after lots of 'libfo-CRITICAL' messages. The first
>>one is
>>
>>(process:12015): libfo-CRITICAL **: fo_area_page_size_request:: Cannot split child:: page:
>>FoAreaPage (0x9e8ddb8 : 2); child: FoAreaViewportReference (0x9e8dcb8 : 1)
>>
>>which I assume your latest work was meant to resolve. Right ?
>
>
> I had left the warning in there so I could see when the code was being used.
> It is currently benign. I should change it to be a warning that is output
> only if the 'overflow' property value is 'error-if-overflow'.
>
>
>>The second such message looks like an identical copy of the first, but the third
>>one is strange again:
>
>
> That hopefully indicates that you have two pages with content that is too big
> for the page (or you added content to an area that was already too big for the
> page).
>
>
>>(process:12015): libfo-CRITICAL **: Expression evaluation error: Expression not completely
>>evaluated: '/ast.svg'
>>Object path:
>>/FoTree[1]/root[1]/page-sequence[5]/flow[1]/FoBlockBlock[2]/FoBlockLayout[3]/external-graphic[1]
>>
>>The expression in question seems to stem from an external-graphic attribute
>>src="images/ast.svg". I thought xmlroff is able to deal with such paths. Do I remember
>>wrongly ?
>
>
> I think you remember wrongly. The value of 'src' should be a
> <uri-specification>, which should start with 'url(' and end with ')'.
>
> You can submit an RFE for xmlroff to support 'src' property values without the
> 'url(...)'. All it would take would be yet another expression evaluation
> function, since "images/ast.svg" is a plausible expression.
>
> I don't know that xmlroff supports SVG graphics. I haven't tried it.
>
>
>>The last errors, which appear to have caused the actual segfault, are assertion errors
>>such as:
>>
>>(process:12015): libfo-CRITICAL **: file fo-length.c: line 320 (fo_length_get_value): assertion
>>`length != NULL' failed
>
>
> This may be a byproduct of the external graphic not being created properly.
> It indicates a bug in the error handling previously, since it shouldn't have
> got to the point of trying to process null length datatypes.
>
>
>>Let me know if I can help debug this further.
>
>
> Please correct your <uri-specification> and, if necessary, try it with a PNG
> instead of SVG image.
Ok, I tuned the xslt stylesheet a bit and now I only get the first two libfo-CRITICAL
errors (warnings). However, xmlroff still segfaults:
0x005a291a in fo_area_size_request_default (child=0x9458540) at fo-area.c:2063
(the rhs 'return_child' is 0x0, and so dereferencing next_part crashes the application)
Let me know if I should mail you the full stack trace.
Regards,
Stefan
|