Skip to content

Commit 1b6f541

Browse files
authored
fix msg precendence when sending a merging object with msg and err (#1654)
1 parent eafbc90 commit 1b6f541

File tree

2 files changed

+21
-1
lines changed

2 files changed

+21
-1
lines changed

lib/proto.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ function write (_obj, msg, num) {
193193
}
194194
} else {
195195
obj = _obj
196-
if (msg === undefined && _obj[errorKey]) {
196+
if (msg === undefined && _obj.msg === undefined && _obj[errorKey]) {
197197
msg = _obj[errorKey].message
198198
}
199199
}

test/error.test.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -356,3 +356,23 @@ test('correctly adds msg on error when nestedKey is used', async ({ same }) => {
356356
msg: 'msg message'
357357
})
358358
})
359+
360+
test('msg should take precedence over error message on mergingObject', async ({ same }) => {
361+
const err = new Error('myerror')
362+
const stream = sink()
363+
const instance = pino(stream)
364+
instance.error({ msg: 'my message', err })
365+
const result = await once(stream, 'data')
366+
delete result.time
367+
same(result, {
368+
pid,
369+
hostname,
370+
level: 50,
371+
err: {
372+
type: 'Error',
373+
stack: err.stack,
374+
message: err.message
375+
},
376+
msg: 'my message'
377+
})
378+
})

0 commit comments

Comments
 (0)