Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitd5f767c

Browse files
committed
Fix corner-case coredump in _SPI_error_callback().
I noticed that _SPI_execute_plan initially sets spierrcontext.arg = NULL,and only fills it in some time later. If an error were to happen inbetween, _SPI_error_callback would try to dereference the null pointer.This is unlikely --- there's not much between those points exceptpush-snapshot calls --- but it's clearly not impossible. Tweak thecallback to do nothing if the pointer isn't set yet.It's been like this for awhile, so back-patch to all supported branches.
1 parent70dc7ad commitd5f767c

File tree

1 file changed

+3
-0
lines changed
  • src/backend/executor

1 file changed

+3
-0
lines changed

‎src/backend/executor/spi.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2407,6 +2407,9 @@ _SPI_error_callback(void *arg)
24072407
constchar*query= (constchar*)arg;
24082408
intsyntaxerrposition;
24092409

2410+
if (query==NULL)/* in case arg wasn't set yet */
2411+
return;
2412+
24102413
/*
24112414
* If there is a syntax error position, convert to internal syntax error;
24122415
* otherwise treat the query as an item of context stack

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp