forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit30fe8a7
committed
Avoid possible longjmp-induced logic error in PLy_trigger_build_args.
The "pltargs" variable wasn't marked volatile, which makes it unsafeto change its value within the PG_TRY block. It looks like the worstoutcome would be to fail to release a refcount on Py_None during an(improbable) error exit, which would likely go unnoticed in the field.Still, it's a bug. A one-liner fix could be to mark pltargs volatile,but on the whole it seems cleaner to arrange things so that we don'tchange its value within PG_TRY.Per report from Xing Guo. This has been there for quite awhile,so back-patch to all supported branches.Discussion:https://postgr.es/m/CACpMh+DLrk=fDv07MNpBT4J413fDAm+gmMXgi8cjPONE+jvzuw@mail.gmail.com1 parent25675c4 commit30fe8a7
1 file changed
+8
-4
lines changedLines changed: 8 additions & 4 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
702 | 702 |
| |
703 | 703 |
| |
704 | 704 |
| |
705 |
| - | |
| 705 | + | |
706 | 706 |
| |
707 | 707 |
| |
708 | 708 |
| |
| |||
726 | 726 |
| |
727 | 727 |
| |
728 | 728 |
| |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
729 | 734 |
| |
730 | 735 |
| |
731 | 736 |
| |
| |||
869 | 874 |
| |
870 | 875 |
| |
871 | 876 |
| |
872 |
| - | |
| 877 | + | |
873 | 878 |
| |
874 | 879 |
| |
875 | 880 |
| |
| |||
883 | 888 |
| |
884 | 889 |
| |
885 | 890 |
| |
886 |
| - | |
887 |
| - | |
| 891 | + | |
888 | 892 |
| |
889 | 893 |
| |
890 | 894 |
| |
|
0 commit comments
Comments
(0)