A 2016-10-04 16:32, Francis Tyers escrigué:
> A 2016-10-04 16:27, Tino Didriksen escrigué:
>> In r73762 and r73763, I've partially worked around a segfault in
>> apertium-transfer:
>> 
>> https://apertium.projectjj.com/trac/changeset/73762 [1] ,
>> https://apertium.projectjj.com/trac/changeset/73763 [2]
>> 
>> E.g., at times, the word[ti.getPos()]->target() call in case
>> ti_clip_tl at
>> https://apertium.projectjj.com/trac/browser/trunk/apertium/apertium/transfer.cc?rev=73762#L301
>> [3] would try to use an offset where there is no word. The array is
>> big enough, but it's null at that spot.
>> 
>> Observed segfault on OS X with pair sme-fin. It didn't segfault on
>> Linux, but now it at least reports many of the errors, so the problem
>> is not OS X specific. Debuggers are reporting use-after-free errors
>> and other fun things.
>> 
>> I don't know the code or transfer format well enough further figure
>> out if there is an underlying problem or it really is down to
>> malformed XML, so I'm leaving it for others to work on.
>> 
>> Linux log: http://codepad.org/vPl3cjqn [4]
>> OS X log: http://codepad.org/frgruttt [5] ,
>> http://codepad.org/p4qY5Klk [6]
>> 
> 
> Thanks Tino! Does this mean that Apertium on Trond's machine won't
> segfault now ? If so, what should the behaviour be ?

Ok, I found the bug in the XML. I was calling a two-parameter macro with 
only one parameter:

-        <call-macro n="handle-nominal-derivation1"><with-param 
pos="1"/></call-macro>
-        <call-macro n="handle-nominal-derivation2"><with-param 
pos="2"/></call-macro>
+        <call-macro n="handle-nominal-derivation2"><with-param 
pos="2"/><with-param pos="1"/></call-macro>

The new debug/warning output is great, thanks.

F.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Apertium-stuff mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/apertium-stuff

Reply via email to