On 2/23/2026 2:16 PM, Álvaro Herrera wrote:
> Hello, thanks for following up.
>
> However, I was going over the commit message one final time after your
> reply, and I noticed that SymInitialize()'s documentation says quite
> explicitly:
>
> "Do not use the handle returned by GetCurrentProcess"
> https://learn.microsoft.com/en-us/windows/win32/api/dbghelp/nf-dbghelp-syminitialize
>
> which is exactly what we do with this patch.
>
> I think we should DuplicateHandle() on the GetCurrentProcess() handle
> (which then obviously needs CloseHandle afterwards). Would you agree?
>
> Here's the whole thing again with edited commit message and some trivial
> stylistic changes.
>
>
> I was amused to discover that Solaris, macOS and FreeBSD all copied the
> backtrace() interface from glibc, and the only platform in the buildfarm
> other than Windows that seems to lack support for backtraces is Alpine
> Linux.
>
> Regards
>
I have implemented DuplicateHandle and closed the handle in the
appropriate places. I also reset backtrace_process to NULL if
SymInitialize() fails. Patch is attached.
--
Bryan Green
EDB: https://www.enterprisedb.com