I am reading your patch and hopefully can make it work.Cheers, Bo void Inset Bibtex::register Embedded Files(Embedded File List & files) const The registered Embedded File does not have the correct 'enabled' status, and there is no guarantee that the embedded file exists. If you really want to do it here, you will have to enable each Embedded File, and clear embed flag if it fails. As I have said, keeping a correct Embedded File List is useful here.I am talking about init View()/update Labels()/add To Toc().Don't be mislead by the method names, those should be renamed to: * init View(): init Buffer Context(), should be used when Buffer is set, when or when a critical parameter is changed.
An exception is when an inset does not 'keep' an Embedded File, such as Inset Include, in which an Embedded File is created on-the-fly. When an inset is added, a temporary Embedded File is created, and its enable() function is called.Embedding a file merely sets a flag (usually non-empty inzipname). Embedded File List::validate is used to adjust inzip files if they are not consistent with inzipname used in the current os.In this case, Embedded Files are 'enabled', meaning that they have temp_path_ saved so that they know where the inzip file is. Each inset maintains its own Embedded File(s), but insets usually do *not* enable/disable an embedded file.When an embedded file is updated (say, set Embed), enable will be called. This is why I handle Embedded File update in Gui Blah, not Inset Blah, because in this way, all Embedded File returned from Gui Blah will be valid, and with files in place.The problem you see is because you want to enable an Embedded File at the inset level.If you guys need the PDFs I can email them to you for closer inspection.