> OK, that's helpful by way of explanation. But here's where I was getting > the crash: You have an existing InsetBibtex, embedded, and then you > change the bibfiles. Now you try to save. Boom, because the newly chosen > bibfiles haven't been copied and, when the exception is thrown, LyX > tries an emergency save which just throws another exception, for the > same reason. (That has to be wrong, independently.) There needs to be > some way in this situation to make sure that all the new files get > copied over and the global list is updated, and enable() looks to me > like it does exactly that. If not, then we need some other method.
There is no global list.... For every new EmbeddedFile, it needs to be enabled() independently, within a try/catch block. It can be embedded only if it can be enabled correctly (with file copying). Please refer to GuiGraphics for how this works. Bo