Alfredo Braunstein wrote:

> Angus Leeming wrote:
> 
>>> Just commit and we solve it later if there is any problem at all ;-)
>> 
>> Hmmm. Your last commit means that now I don't even enter the loop.
> 
> 
>  
>> Even changing to the explicit doesn't help:
>> 
>>         InsetBase & inset = owner->buffer()->inset();
>>         InsetIterator it  = inset_iterator_begin(inset);
>>         InsetIterator const end = inset_iterator_begin(inset);
>                                                    ^^^^^
> is this just an error in your post or in the test you've made?

Just to clarify:

InsetIterator it(inset) is now the end (void) iterator.

So:

        InsetIterator it(inset);
        for (; it ; ++it) {
                ...
        }

is wrong now (never enters the loop).

The correct one should be
        InsetIterator it = inset_iterator_begin(inset);
        for (; it;  ++it)

*or*

        InsetIterator it = inset_iterator_begin(inset);
        InsetIterator const end = inset_iterator_end(inset);
        for (; it != end;  ++it)

*or even*

        InsetIterator it = inset_iterator_begin(inset);
        InsetIterator const end = InsetIterator(inset);
        for (; it != end;  ++it)


Maybe I have introduced some bug somewhere? Although I don't see where...

Alfredo


Reply via email to