*
**********************************************************************
* $Log$
+ * Revision 1.42 2004/06/03 09:45:57 strk
+ * infinite geoms handled in WKB parser
+ *
* Revision 1.41 2004/06/03 08:19:20 strk
* yet another Infinite check used: finite() - which checks for NaN,-Inf,+Inf
*
pt.z =0;
}
}
+ if ( ! finite(pt.x) || ! finite(pt.y) || ! finite(pt.z) )
+ {
+ elog(ERROR, "infinite coordinate in geom");
+ return NULL;
+ }
return make_oneobj_geometry(sizeof(POINT3D),
(char *) &pt,
POINTTYPE, is3d, -1,1.0, 0.0, 0.0
{
pts[t].z =0;
}
+ if ( ! finite(pts[t].x) || ! finite(pts[t].y) || ! finite(pts[t].z) )
+ {
+ elog(ERROR, "infinite coordinate in geom");
+ return NULL;
+ }
}
//make_line(int npoints, POINT3D *pts, int *size)
line = make_line(npoints, pts,&size);
{
pts[t].z =0;
}
+ if ( ! finite(pts[t].x) || ! finite(pts[t].y) || ! finite(pts[t].z) )
+ {
+ elog(ERROR, "infinite coordinate in geom");
+ return NULL;
+ }
}
//make_line(int npoints, POINT3D *pts, int *size)
line = make_line(npoints, pts,&size);
- return make_oneobj_geometry(size,
- (char *) line,
- LINETYPE, is3d, -1,1.0, 0.0, 0.0
- );
+ return make_oneobj_geometry(size, (char *) line, LINETYPE, is3d, -1,1.0, 0.0, 0.0);
}
}
break;
{
pts[t].z =0;
}
+ if ( ! finite(pts[t].x) || ! finite(pts[t].y) || ! finite(pts[t].z) )
+ {
+ elog(ERROR, "infinite coordinate in geom");
+ return NULL;
+ }
}
*numbPoints = npoints;
if (is3d)