Commit 0d8f3d5d authored by Alvaro Herrera's avatar Alvaro Herrera

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 49475aab.
parent e2f1765c
......@@ -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))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment