On 03/10/2014 03:32 PM, Jürgen Spitzmüller wrote:
2014-03-10 19:55 GMT+01:00 Vincent van Ravesteijn:
The problem is caused by 50bcd6ed7 (Use the master buffer's param
when compiling as a child (#8893)).
OK, then we need to re-add the children's authors at these two points,
apparently. What's the best way to do this?
Another issue about master-child relationships. Having two separate
copies of these structures just causes all kinds of problems. There is a
big part of me that thinks that, if a document is opened as a child,
then it should not be treated as having its own BufferParams at all.
Though I know this will cause all kinds of problems.
For the present, I don't see how we can just add the authors from the
children at this sort of point. We could see this same kind of problem
if View>Source were open (which, again, could be Uwe's problem). So, if
we are going to modify the BufferParams, they'll stay modified, and we
might as well do it at the beginning of the validation or export
routines. I guess we could introduce a temporary BufferParams, but that
would be messy at best, and it would probably iterate, as well: We'd end
up with tons of temporary copies.
I'm trying to think if there is some way we could modify what the master
Buffer regards as its authorlist when we are in the process of
exporting. Since validate() is only called during export, that would
also take care of that case. I.e., the thought would be to change
BufferParams::authors(), at least the const & version, so that it
returns something with the children in it if we're exporting. At
present, only Buffer knows if we are exporting, but MarkAsExporting
could easily be modified to deal with that.
Richard