mirror of
https://git.lyx.org/repos/lyx.git
synced 2025-01-22 07:42:02 +00:00
Avoid loading local layout file multiple times
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21983 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
93c7c89beb
commit
f1821946dc
@ -209,11 +209,18 @@ TextClassList::addTextClass(std::string const & textclass, std::string const & p
|
||||
if (regex_match(line, sub, reg)) {
|
||||
// returns: whole string, classtype (not used here), first option, description
|
||||
BOOST_ASSERT(sub.size()==4);
|
||||
// now, add the layout to textclass.
|
||||
// now, create a TextClass with description containing path information
|
||||
TextClass tmpl(textclass, sub.str(2)==""?textclass:sub.str(2),
|
||||
sub.str(3) + " <" + path + ">", true);
|
||||
if (lyxerr.debugging(Debug::TCLASS))
|
||||
tmpl.load(path);
|
||||
// Do not add this local TextClass to classlist_ if it has
|
||||
// already been loaded by, for example, a master buffer.
|
||||
pair<bool, lyx::textclass_type> pp =
|
||||
textclasslist.numberOfClass(textclass);
|
||||
// only layouts from the same directory are considered to be identical.
|
||||
if (pp.first && classlist_[pp.second].description() == tmpl.description())
|
||||
return pp;
|
||||
classlist_.push_back(tmpl);
|
||||
return make_pair(true, classlist_.size() - 1);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user