PG_FUNCTION_INFO_V1(TWKBFromLWGEOM);
Datum TWKBFromLWGEOM(PG_FUNCTION_ARGS)
{
- GSERIALIZED *geom = (GSERIALIZED*)PG_DETOAST_DATUM(PG_GETARG_DATUM(0));
+ GSERIALIZED *geom;
LWGEOM *lwgeom;
uint8_t *twkb;
size_t twkb_size;
int64_t id;
int prec;
+ /*check for null input since we cannot have the sql-function as strict.
+ That is because we use null as default for optional ID*/
+ if ( PG_ARGISNULL(0) ) PG_RETURN_NULL();
+ geom = (GSERIALIZED*)PG_DETOAST_DATUM(PG_GETARG_DATUM(0));
+
/* If user specified precision, respect it */
if ( (PG_NARGS()>1) && (!PG_ARGISNULL(1)) )
{
SELECT '#2870', ST_Summary('Point(151.215289 -33.856885)'::geometry::bytea::geography) ;
+SELECT '#2956', st_astwkb(null,0) is null;
-- Clean up
DELETE FROM spatial_ref_sys;