On 04/11/2016 12:28 PM, Jean-Marc Lasgouttes wrote: > Le 11/04/2016 17:53, Scott Kostyshak a écrit : >> I can confirm that I do not see the problem in 2.1.4 and I do see it >> with 2.2.0dev. >> >> I suppose this is a dataloss bug, and that there is a rule of not going >> to an RC with a known dataloss bug that is a regression. Although the >> bug only shows in a specific case and has gone unnoticed for more than a >> year in 2.2.0dev, it is pretty easy to trigger and it would not be >> surprising at all that a user comes across it. I would like to hear from >> Jürgen to see if a quick fix can be made before proceeding with rc1. > > Here is a very lightly tested patch. It looks OK to me, but this kind > of changes has potential to do more harm than good. So if we do not > have 1/ good user testing and 2/ a +1 from someone who understands > this code, I am not sure we want it in rc1. And rc1 really needs to > happen soon IMO.
This is exactly what I was going to do. A quicker and dirtier and very safe (IMO) fix is: @@ -75,6 +75,8 @@ void InsetFlex::write(ostream & os) const // use il.name(), since this resolves obsoleted // InsetLayout names string name = to_utf8(il.name()); + if (name == from_ascii("undefined")) + name == name_; // Remove the "Flex:" prefix, if it is present if (support::prefixIs(name, "Flex:")) name = support::token(name, ':', 1); Richard