Andr�, this (in InsetVSpaceMailer::string2params) fails to fill 
'vspace':

        lex >> name >> vsp;
        if (lex)
                vspace = VSpace(vsp);

because we have reached the end of the stream, so this fails:
bool LyXLex::isOK() const
{
        return pimpl_->is.good();
}

as, therefore, does this:
LyXLex::operator void *() const
{
        return isOK() ? const_cast<LyXLex *>(this) : 0;
}

isOK() is documented as 
        /// stream is open and end of stream is not reached

so I think that we should change the operator void *() above to:
LyXLex::operator void *() const
{
        return pimpl_->is.fail() ? 0 : const_cast<LyXLex *>(this);
}

Ok? (Ditto with operator!(). I'll make the changes 'cos I have also 
made InsetVSpace::space_ private...)

-- 
Angus

Reply via email to