2017-06-28 9:25 GMT+02:00 Fabien COELHO <coe...@cri.ensmp.fr>: > > Hello Pavel, > > I agree that the existing "SetVariableBool" function is a misnommer, it >>> should be "SetVariableOn" given what it does, and it is not what we need. >>> >> >> switching default setting from ON to TRUE requires wider discussion - >> > > Yep. > > in this moment I like to have special function "SetVariableON". >> > > I'm fine with this, but this make it a change totally unrelated to this > patch as it would not use the function... Moreover, this function would not > use an hypothetical "set var bool" function because of the debatable on/off > vs true/false change. > > Also, a "set var bool" function would be called only twice, which is not > very beneficial for a oneliner, so I left it out. > > I agree that there is some common structure, but ISTM that the >>> AcceptResult function is called in a variety of situation where variables >>> are not to be set (eg "internal" queries, not user provided queries), so >>> I >>> thought it best to keep the two apart. >>> >> >> I understand, but It is not nice, really - maybe only switch can be moved >> to some inlining function like IsSuccess() - more .. with this function, >> the SetResultVariables function will be more cleaner >> > > Indeed. Attached v5 does that.
juju - something like this + if (success) + { + char *ntuples = PQcmdTuples(results); + SetVariable(pset.vars, "ROW_COUNT", *ntuples ? ntuples : "0"); + SetVariable(pset.vars, "ERROR", "FALSE"); + } + else + { + SetVariable(pset.vars, "ROW_COUNT", "0"); + SetVariable(pset.vars, "ERROR", "TRUE"); + } +} It can be simplified SetVariable(pset.vars, "ROW_COUNT", success ? PQcmdTuples(results) : 0); SetVariable(pset.vars, "ERROR", success ? "FALSE" : "TRUE"); Regards Pavel > > > -- > Fabien.