fixed memory leak in screen::load()

This commit is contained in:
Dana Jansens 2002-04-19 21:05:49 +00:00
parent e75d3560a6
commit 8f8eba7b96

View file

@ -1192,8 +1192,11 @@ void BScreen::load() {
rname.seekp(0); rclass.seekp(0);
rname << rscreen.str() << "strftimeFormat" << ends;
rclass << rscreen.str() << "StrftimeFormat" << ends;
if (config.getValue(rname.str(), rclass.str(), s))
if (config.getValue(rname.str(), rclass.str(), s)) {
if (resource.strftime_format != NULL)
delete [] resource.strftime_format;
resource.strftime_format = bstrdup(s.c_str());
}
#else // !HAVE_STRFTIME
rname.seekp(0); rclass.seekp(0);
rname << rscreen.str() << "dateFormat" << ends;
@ -1230,8 +1233,11 @@ void BScreen::load() {
rname.seekp(0); rclass.seekp(0);
rname << rscreen.str() << "rootCommand" << ends;
rclass << rscreen.str() << "RootCommand" << ends;
if (config.getValue(rname.str(), rclass.str(), s))
if (config.getValue(rname.str(), rclass.str(), s)) {
if (resource.root_command != NULL)
delete [] resource.root_command;
resource.root_command = bstrdup(s.c_str());
}
rname.seekp(0); rclass.seekp(0);
rname << rscreen.str() << "opaqueMove" << ends;