forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit5eac8ce
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 parent91cbb4b commit5eac8ce
1 file changed
+8
-4
lines changedLines changed: 8 additions & 4 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
689 | 689 |
| |
690 | 690 |
| |
691 | 691 |
| |
692 |
| - | |
| 692 | + | |
693 | 693 |
| |
694 | 694 |
| |
695 | 695 |
| |
| |||
713 | 713 |
| |
714 | 714 |
| |
715 | 715 |
| |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
716 | 721 |
| |
717 | 722 |
| |
718 | 723 |
| |
| |||
856 | 861 |
| |
857 | 862 |
| |
858 | 863 |
| |
859 |
| - | |
| 864 | + | |
860 | 865 |
| |
861 | 866 |
| |
862 | 867 |
| |
| |||
870 | 875 |
| |
871 | 876 |
| |
872 | 877 |
| |
873 |
| - | |
874 |
| - | |
| 878 | + | |
875 | 879 |
| |
876 | 880 |
| |
877 | 881 |
| |
|
0 commit comments
Comments
(0)