fix object cloning (aka log filtering)

This commit is contained in:
zefie
2022-10-15 20:39:48 -04:00
parent 894b2e733e
commit e7a5cc6ed6

View File

@@ -45,12 +45,14 @@ class WTVShared {
return new RegExp(src); return new RegExp(src);
} else if (src instanceof Date) { } else if (src instanceof Date) {
return new Date(src.getTime()); return new Date(src.getTime());
} else if (Array.isArray(src)) {
return src.map(this.cloneObj);
} else if (typeof src === 'object' && src !== null) { } else if (typeof src === 'object' && src !== null) {
const clone = {}; var clone = null;
Object.keys(src).forEach(k => { if (Array.isArray(src)) clone = [];
clone[k] = this.cloneObj(src[k]); else clone = {};
var self = this;
Object.keys(src).forEach((k )=> {
clone[k] = self.cloneObj(src[k]);
}); });
return clone; return clone;
} }
@@ -524,7 +526,7 @@ class WTVShared {
filterRequestLog(obj) { filterRequestLog(obj) {
if (this.minisrv_config.config.filter_passwords_in_logs === true) { if (this.minisrv_config.config.filter_passwords_in_logs === true) {
if (obj.query) { if (obj.query) {
var newobj = this.cloneObj(obj) || {}; var newobj = this.cloneObj(obj);
try { try {
Object.keys(obj.query).forEach(function (k) { Object.keys(obj.query).forEach(function (k) {
var key = k.toLowerCase(); var key = k.toLowerCase();