bugfix: after streamReload handlers and variables that existed before but do not exist any more had not been deleted
This commit is contained in:
@ -254,10 +254,12 @@ compile(StreamProtocolParser::Protocol* protocol)
|
||||
protocol->getNumberVariable("pollperiod", pollPeriod)))
|
||||
return false;
|
||||
|
||||
if (!(protocol->getStringVariable("terminator", inTerminator, &inTerminatorDefined) &&
|
||||
protocol->getStringVariable("terminator", outTerminator, &outTerminatorDefined) &&
|
||||
protocol->getStringVariable("interminator", inTerminator, &inTerminatorDefined) &&
|
||||
if (!(protocol->getStringVariable("interminator", inTerminator, &inTerminatorDefined) &&
|
||||
protocol->getStringVariable("outterminator", outTerminator, &outTerminatorDefined) &&
|
||||
(inTerminatorDefined ||
|
||||
protocol->getStringVariable("terminator", inTerminator, &inTerminatorDefined)) &&
|
||||
(outTerminatorDefined ||
|
||||
protocol->getStringVariable("terminator", outTerminator, &outTerminatorDefined)) &&
|
||||
protocol->getStringVariable("separator", separator)))
|
||||
return false;
|
||||
|
||||
|
@ -882,12 +882,12 @@ getEnumVariable(const char* varname, unsigned short& value, const char** enumstr
|
||||
bool StreamProtocolParser::Protocol::
|
||||
getStringVariable(const char* varname, StreamBuffer& value, bool* defined)
|
||||
{
|
||||
value.clear();
|
||||
const Variable* pvar = getVariable(varname);
|
||||
if (!pvar) return true;
|
||||
if (defined) *defined = true;
|
||||
const StreamBuffer* pvalue = &pvar->value;
|
||||
const char* source = (*pvalue)();
|
||||
value.clear();
|
||||
if (!compileString(value, source))
|
||||
{
|
||||
error("in string variable '%s' in protocol file '%s' line %d\n",
|
||||
@ -909,10 +909,10 @@ getStringVariable(const char* varname, StreamBuffer& value, bool* defined)
|
||||
bool StreamProtocolParser::Protocol::
|
||||
getCommands(const char* handlername,StreamBuffer& code, Client* client)
|
||||
{
|
||||
code.clear();
|
||||
const Variable* pvar = getVariable(handlername);
|
||||
if (!pvar) return true;
|
||||
if (!pvar->value) return true;
|
||||
code.clear();
|
||||
const char* source = pvar->value();
|
||||
debug("StreamProtocolParser::Protocol::getCommands"
|
||||
"(handlername=\"%s\", client=\"%s\"): source=%s\n",
|
||||
|
Reference in New Issue
Block a user