[postgis-users] Error using pgsql2shp
Bruce Rindahl
rindahl at lrcwe.com
Fri Jun 16 20:06:09 PDT 2006
Ok
The bust must be in the compiler. I am using MinGW. I will look into this
and let you know what I can track down.
Bruce
-----Original Message-----
From: postgis-users-bounces at postgis.refractions.net
[mailto:postgis-users-bounces at postgis.refractions.net] On Behalf Of
strk at refractions.net
Sent: Friday, June 16, 2006 4:08 PM
To: 'PostGIS Users Discussion'
Subject: Re: [postgis-users] Error using pgsql2shp
On Fri, Jun 16, 2006 at 08:51:19AM -0600, Bruce Rindahl wrote:
> v1.83 works fine, 1.84 and 1.85 gives the error. Do you have a diff from
> 1.83 so I can test if it is the compiler?
Not much has changed between the two versions:
cvs diff -r 1.83 -r 1.84 pgsql2shp.c
Index: pgsql2shp.c
===================================================================
RCS file: /home/cvs/postgis/postgis/loader/pgsql2shp.c,v
retrieving revision 1.83
retrieving revision 1.84
diff -U2 -r1.83 -r1.84
--- pgsql2shp.c 3 Feb 2006 20:53:36 -0000 1.83
+++ pgsql2shp.c 18 Apr 2006 14:09:28 -0000 1.84
@@ -1,4 +1,4 @@
/**********************************************************************
- * $Id: pgsql2shp.c,v 1.83 2006/02/03 20:53:36 strk Exp $
+ * $Id: pgsql2shp.c,v 1.84 2006/04/18 14:09:28 strk Exp $
*
* PostGIS - Spatial Types for PostgreSQL
@@ -20,5 +20,5 @@
static char rcsid[] =
- "$Id: pgsql2shp.c,v 1.83 2006/02/03 20:53:36 strk Exp $";
+ "$Id: pgsql2shp.c,v 1.84 2006/04/18 14:09:28 strk Exp $";
#include <stdio.h>
@@ -59,4 +59,8 @@
#define HEXWKB 1
+/* Maximum DBF field width (according to ARCGIS) */
+#define MAX_DBF_FIELD_SIZE 255
+
+
/*typedef unsigned long int uint32;*/
typedef uint32_t uint32;
@@ -2773,10 +2777,20 @@
}
}
+
+ if ( size > MAX_DBF_FIELD_SIZE )
+ {
+ fprintf(stderr, "Warning: values of field '%s' "
+ "exceeding maximum dbf field width (%d) "
+ "will be truncated.\n",
+ fname, MAX_DBF_FIELD_SIZE);
+ size = MAX_DBF_FIELD_SIZE;
+ }
+
/*printf( "FIELD_NAME: %s, SIZE: %d\n", field_name, size); */
-
+
/* generic type (use string representation) */
if(DBFAddField(dbf, field_name, FTString, size, 0) == -1)
{
- printf( "Error - String field could not "
+ fprintf(stderr, "Error - String field could not "
"be created.\n");
return 0;
_______________________________________________
postgis-users mailing list
postgis-users at postgis.refractions.net
http://postgis.refractions.net/mailman/listinfo/postgis-users
More information about the postgis-users
mailing list