Tommaso Cucinotta schreef:
While traveling, I was thinking to a couple of unusual use-cases:
1) create a.lyx and b.lyx
2) let a.lyx include b.lyx
3) let b.lyx include a.lyx
I just tried, and we have segfault after 3) (infinite recursion in
Buffer::masterBuffer() [1]). Probably such operation attempt should
give up with an error to the user (but it may not be easy to identify
an arbitrary "loop" in what is supposed to be a DAG, with documents
that are not necessarily open).
Yes, that's a problem.
Second use-case:
Create two documents, say a.lyx and b.lyx, and let them *both* include
c.lyx.
Now, open a.lyx, b.lyx and c.lyx.
Who's the master for c.lyx ? I tried through "View->Master", and it
seems the master changes according to the last-loaded master. Also,
when closing one of the two masters, its child is also closed
Yes, I addressed this issue a while ago, and I added a warning when the
master is set for a second time. But well, I don't know how to fix it
properly.
Vincent