On 9 August 2013 21:05, Yuki Matsushita <matsushy at creo.co.jp> wrote:
perhaps padding out with bogus "trigger" or "ignore" lines.
I'm guessing, from reading the code, that I could work around this by always have exactly the same number of "trigger" lines as "ignore" lines
Thanks for analysing this issue. I think so too.
Yes, and no. It now goes past the code with the typo. However, it now dumps core when it actually uses the trigger and the number of bytes in matching lines is large. gdb tells me that it fails in line 315, in the logdata() function:
memmove(triggerendpos, skipend, bytesleft);
If I push out the filesize limit to the max (1024k) then this line doesn't get executed and no more segfault. But I think I'm just being lucky that the volume of matching lines is less than 100k, and if it reached 100k, I'd be getting the segfault again.
So, still a problem, just a different one. And this code is waaaay too complicated for me to grok.
J