mirror of
https://github.com/postgres/postgres.git
synced 2025-05-02 11:44:50 +03:00
Add missing CHECK_FOR_INTERRUPTS in lseg_inside_poly
Apparently, there are bugs in this code that cause it to loop endlessly. That bug still needs more research, but in the meantime it's clear that the loop is missing a check for interrupts so that it can be cancelled timely. Backpatch to 9.1 -- this has been missing since 49475aab8d0d.
This commit is contained in:
parent
c6eced09b2
commit
188675256e
@ -20,6 +20,7 @@
|
||||
#include <ctype.h>
|
||||
|
||||
#include "libpq/pqformat.h"
|
||||
#include "miscadmin.h"
|
||||
#include "utils/builtins.h"
|
||||
#include "utils/geo_decls.h"
|
||||
|
||||
@ -3931,6 +3932,8 @@ lseg_inside_poly(Point *a, Point *b, POLYGON *poly, int start)
|
||||
{
|
||||
Point *interpt;
|
||||
|
||||
CHECK_FOR_INTERRUPTS();
|
||||
|
||||
s.p[1] = poly->p[i];
|
||||
|
||||
if (on_ps_internal(t.p, &s))
|
||||
|
Loading…
x
Reference in New Issue
Block a user