I know what the problems is. Unfortunately, I have once again missed something and will need to make an API change.
I tested this from an Analyzer and not a Filter. With an Analyzer, look-ups like 'Current' and 'Parent' make sense because they are triggered by user action from a Filter. However, with a Filter those relationships only make sense
relative to a particular filter. Relative to your custom filter in this case.
Unfortunately, the API that you are working with takes "Current Filter" to mean the one that the user user currently looking at. In a tail file situation, lots of filters are triggered but only one currently has the user focus. Only one can be 'Current'.
When you are executing your code, the "Current Filter" is actually the parent of the filter you are currently creating. The parent filter is the one above that.
Really, you want the 'Current Filter' to be 'this' filter. ...and that is information that is not currently supported in the API.
So, I will need to make a change (again - sorry :-) to the API. The new API will look like:
public IEnumerable<LogEntry> FindNext(LookupSource source, ILogFilter currentFilter)
...which you can then call with:
logEntry.FindNext(LookupSource.ParentFilter, this)
If you wanted to search relative the the users current focus, you can pass in NULL instead. The current focus will become the default behavior.
I hope that makes sense. Apologies for not spotting this issue sooner. I should be able to turn this around in the next few days.
Thanks,
Toby