Fix. Use local err variable in apply_param (#2152)
This commit is contained in:
committed by
FusionPBX
parent
a7341d97c4
commit
571e42508f
@@ -37,6 +37,8 @@ local param_pattern = "[:]([^%d%s][%a%d_]+)"
|
|||||||
local function apply_params(db, sql, params)
|
local function apply_params(db, sql, params)
|
||||||
params = params or {}
|
params = params or {}
|
||||||
|
|
||||||
|
local err
|
||||||
|
|
||||||
local str = string.gsub(sql, param_pattern, function(param)
|
local str = string.gsub(sql, param_pattern, function(param)
|
||||||
local v, t = params[param], type(params[param])
|
local v, t = params[param], type(params[param])
|
||||||
if "string" == t then return db:quote(v) end
|
if "string" == t then return db:quote(v) end
|
||||||
@@ -127,7 +129,10 @@ local function new_database(backend, backend_name)
|
|||||||
-- use emulation of parametes
|
-- use emulation of parametes
|
||||||
local err
|
local err
|
||||||
sql, err = self:_apply_params(sql, params)
|
sql, err = self:_apply_params(sql, params)
|
||||||
if not sql then return nil, err end
|
if not sql then
|
||||||
|
log.errf('can not bind parameter: %s', tostring(err))
|
||||||
|
return nil, err
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
return self.__base.query(self, sql, callback)
|
return self.__base.query(self, sql, callback)
|
||||||
|
|||||||
Reference in New Issue
Block a user