Don't call pgwin32_message_to_UTF16() without CurrentMemoryContext.
Noah Misch <noah@leadboat.com>
Don't call pgwin32_message_to_UTF16() without CurrentMemoryContext. PostgreSQL running as a Windows service crashed upon calling write_stderr() before MemoryContextInit(). This fix completes work started in 5735efee15540765315aa8c1a230575e756037f7. Messages this early contain only ASCII bytes; if we removed the CurrentMemoryContext requirement, the ensuing conversions would have no effect. Back-patch to 9.3 (all supported versions). Takayuki Tsunakawa, reviewed by Michael Paquier. Discussion: https://postgr.es/m/0A3221C70F24FB45833433255569204D1F80CC73@G01JPEXMBYT05
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/utils/error/elog.c | modified | +6 −1 |
Discussion
- [bug fix] postgres.exe crashes with access violation on Windows while starting up 9 messages · 2017-10-27 → 2017-11-12