Skip to content

Commit

Permalink
Merge branch 'branch-6-2' of github.com:mapserver/mapserver into bran…
Browse files Browse the repository at this point in the history
…ch-6-2
  • Loading branch information
Schpidi committed Sep 5, 2012
2 parents d6be4e6 + 40ad795 commit fdcdddc
Show file tree
Hide file tree
Showing 7 changed files with 33 additions and 39 deletions.
4 changes: 2 additions & 2 deletions Makefile.in
Expand Up @@ -305,7 +305,7 @@ EXE_LIST = shp2img legend mapserv shptree shptreevis \
#
# --- You shouldn't have to edit anything else. ---
#
all: $(LIBMAP) $(EXE_LIST) @MAKE_PHP_MAPSCRIPT@ @MAKE_PYTHON_MAPSCRIPT@
all: $(LIBMAP) $(EXE_LIST) mapscriptvars @MAKE_PHP_MAPSCRIPT@ @MAKE_PYTHON_MAPSCRIPT@

# Explicitly invoke this rule when maplexer.l is altered. We don't do
# it automatically for the reasons listed in #2310
Expand Down Expand Up @@ -482,7 +482,7 @@ install-module: mod_mapserver.la install-lib
$(APXS) -i -a -n "mapserver" mod_mapserver.la

clean: @MAKE_PHP_MAPSCRIPT_CLEAN@ @MAKE_PYTHON_MAPSCRIPT_CLEAN@
rm -rf $(LIBMAP) *.o *.lo *.la .libs $(EXE_LIST) renderers/agg/src/*.o renderers/agg/src/*.lo renderers/agg/src/.libs
rm -rf $(LIBMAP) mapscriptvars *.o *.lo *.la .libs $(EXE_LIST) renderers/agg/src/*.o renderers/agg/src/*.lo renderers/agg/src/.libs

exe-clean:
rm -f $(EXE_LIST)
Expand Down
2 changes: 2 additions & 0 deletions mapogcfiltercommon.c
Expand Up @@ -538,6 +538,8 @@ char *FLTGetSpatialComparisonCommonExpression(FilterEncodingNode *psNode, layerO

if (strncasecmp(psNode->pszValue, "intersect", 9) == 0)
pszTmp = msStrdup("intersects");
if (strncasecmp(psNode->pszValue, "equals", 9) == 0)
pszTmp = msStrdup("eq");
else
pszTmp = msStrdup(psNode->pszValue);
msStringToLower(pszTmp);
Expand Down
27 changes: 1 addition & 26 deletions mappostgis.c
Expand Up @@ -65,10 +65,6 @@
#include "maptime.h"
#include "mappostgis.h"

#ifndef FLT_MAX
#define FLT_MAX 25000000.0
#endif

#define FP_EPSILON 1e-12
#define FP_EQ(a, b) (fabs((a)-(b)) < FP_EPSILON)
#define FP_LEFT -1
Expand Down Expand Up @@ -2998,27 +2994,6 @@ int msPostGISLayerGetItems(layerObj *layer)
#endif
}

/*
** msPostGISLayerGetExtent()
**
** Registered vtable->LayerGetExtent function.
**
** TODO: Update to use proper PostGIS functions to pull
** extent quickly and accurately when available.
*/
int msPostGISLayerGetExtent(layerObj *layer, rectObj *extent)
{
if (layer->debug) {
msDebug("msPOSTGISLayerGetExtent called.\n");
}

extent->minx = extent->miny = -1.0 * FLT_MAX ;
extent->maxx = extent->maxy = FLT_MAX;

return MS_SUCCESS;

}

/*
* make sure that the timestring is complete and acceptable
* to the date_trunc function :
Expand Down Expand Up @@ -3373,7 +3348,7 @@ int msPostGISLayerInitializeVirtualTable(layerObj *layer)
layer->vtable->LayerGetShape = msPostGISLayerGetShape;
layer->vtable->LayerClose = msPostGISLayerClose;
layer->vtable->LayerGetItems = msPostGISLayerGetItems;
layer->vtable->LayerGetExtent = msPostGISLayerGetExtent;
/* layer->vtable->LayerGetExtent = msPostGISLayerGetExtent; */
layer->vtable->LayerApplyFilterToLayer = msLayerApplyCondSQLFilterToLayer;
/* layer->vtable->LayerGetAutoStyle, not supported for this layer */
layer->vtable->LayerCloseConnection = msPostGISLayerClose;
Expand Down
2 changes: 1 addition & 1 deletion mapprimitive.c
Expand Up @@ -1815,7 +1815,7 @@ void msPolylineLabelPathLineString(mapObj *map, imageObj *img, shapeObj *p, int
double kernel_normal = 2.6; /* Must be sum of kernel elements */
int kernel_size = 5;

double letterspacing = 1.25;
double letterspacing = 1.05;
/* As per RFC 60, if label->maxoverlapangle == 0 then fall back on pre-6.0 behavior
which was to use maxoverlapangle = 0.4*MS_PI ( 40% of 180 degrees ) */
double maxoverlapangle = 0.4 * MS_PI;
Expand Down
25 changes: 21 additions & 4 deletions mapsde.c
Expand Up @@ -601,6 +601,7 @@ static int sdeGetRecord(layerObj *layer, shapeObj *shape)

#ifdef SE_NCLOB_TYPE
SE_NCLOB_INFO nclobval;
SE_WCHAR* nclobstring; /* null terminated */
#endif

#ifdef SE_NSTRING_TYPE
Expand Down Expand Up @@ -797,13 +798,29 @@ static int sdeGetRecord(layerObj *layer, shapeObj *shape)
#ifdef SE_CLOB_TYPE

case SE_NCLOB_TYPE:
memset(&nclobval, 0, sizeof(nclobval)); /* to prevent from the crash in SE_stream_get_nclob */
status = SE_stream_get_nclob(sde->connPoolInfo->stream, (short) (i+1), &nclobval);
if(status == SE_SUCCESS) {
shape->values[i] = (char *)msSmallMalloc(sizeof(char)*nclobval.nclob_length);
shape->values[i] = memcpy( shape->values[i],
nclobval.nclob_buffer,
nclobval.nclob_length);
/* the returned string is not null-terminated */
nclobstring = (SE_WCHAR*)malloc(sizeof(char)*(nclobval.nclob_length+2));
memcpy(nclobstring, nclobval.nclob_buffer, nclobval.nclob_length);
nclobstring[nclobval.nclob_length / 2] = '\0';

if (sde->bBigEndian)
shape->values[i] = msConvertWideStringToUTF8((const wchar_t*) nclobstring, "UTF-16BE");
else
shape->values[i] = msConvertWideStringToUTF8((const wchar_t*) nclobstring, "UTF-16LE");

if (!shape->values[i]) { /* There was an error */
msSetError( MS_SDEERR,
"msConvertWideStringToUTF8()==NULL.",
"sdeGetRecord()");
shape->values[i] = (char *)malloc(itemdefs[i].size*sizeof(char)+1);
shape->values[i][0] = '\0'; /* empty string */
}

SE_nclob_free(&nclobval);
msFree(nclobstring);
} else if (status == SE_NULL_VALUE) {
shape->values[i] = msStrdup(MS_SDE_NULLSTRING);
} else {
Expand Down
10 changes: 5 additions & 5 deletions mapserver.h
Expand Up @@ -635,20 +635,20 @@ extern "C" {
/* expressionObj & tokenObj */
/************************************************************************/

enum MS_TOKEN_LOGICAL_ENUM { MS_TOKEN_LOGICAL_AND=100, MS_TOKEN_LOGICAL_OR, MS_TOKEN_LOGICAL_NOT };
enum MS_TOKEN_LITERAL_ENUM { MS_TOKEN_LITERAL_NUMBER=110, MS_TOKEN_LITERAL_STRING, MS_TOKEN_LITERAL_TIME, MS_TOKEN_LITERAL_SHAPE };
enum MS_TOKEN_LOGICAL_ENUM { MS_TOKEN_LOGICAL_AND=300, MS_TOKEN_LOGICAL_OR, MS_TOKEN_LOGICAL_NOT };
enum MS_TOKEN_LITERAL_ENUM { MS_TOKEN_LITERAL_NUMBER=310, MS_TOKEN_LITERAL_STRING, MS_TOKEN_LITERAL_TIME, MS_TOKEN_LITERAL_SHAPE };
enum MS_TOKEN_COMPARISON_ENUM {
MS_TOKEN_COMPARISON_EQ=120, MS_TOKEN_COMPARISON_NE, MS_TOKEN_COMPARISON_GT, MS_TOKEN_COMPARISON_LT, MS_TOKEN_COMPARISON_LE, MS_TOKEN_COMPARISON_GE, MS_TOKEN_COMPARISON_IEQ,
MS_TOKEN_COMPARISON_EQ=320, MS_TOKEN_COMPARISON_NE, MS_TOKEN_COMPARISON_GT, MS_TOKEN_COMPARISON_LT, MS_TOKEN_COMPARISON_LE, MS_TOKEN_COMPARISON_GE, MS_TOKEN_COMPARISON_IEQ,
MS_TOKEN_COMPARISON_RE, MS_TOKEN_COMPARISON_IRE,
MS_TOKEN_COMPARISON_IN, MS_TOKEN_COMPARISON_LIKE,
MS_TOKEN_COMPARISON_INTERSECTS, MS_TOKEN_COMPARISON_DISJOINT, MS_TOKEN_COMPARISON_TOUCHES, MS_TOKEN_COMPARISON_OVERLAPS, MS_TOKEN_COMPARISON_CROSSES, MS_TOKEN_COMPARISON_WITHIN, MS_TOKEN_COMPARISON_CONTAINS,
MS_TOKEN_COMPARISON_BEYOND, MS_TOKEN_COMPARISON_DWITHIN
};
enum MS_TOKEN_FUNCTION_ENUM {
MS_TOKEN_FUNCTION_LENGTH=140, MS_TOKEN_FUNCTION_TOSTRING, MS_TOKEN_FUNCTION_COMMIFY, MS_TOKEN_FUNCTION_AREA, MS_TOKEN_FUNCTION_ROUND, MS_TOKEN_FUNCTION_FROMTEXT,
MS_TOKEN_FUNCTION_LENGTH=340, MS_TOKEN_FUNCTION_TOSTRING, MS_TOKEN_FUNCTION_COMMIFY, MS_TOKEN_FUNCTION_AREA, MS_TOKEN_FUNCTION_ROUND, MS_TOKEN_FUNCTION_FROMTEXT,
MS_TOKEN_FUNCTION_BUFFER, MS_TOKEN_FUNCTION_DIFFERENCE
};
enum MS_TOKEN_BINDING_ENUM { MS_TOKEN_BINDING_DOUBLE=150, MS_TOKEN_BINDING_INTEGER, MS_TOKEN_BINDING_STRING, MS_TOKEN_BINDING_TIME, MS_TOKEN_BINDING_SHAPE };
enum MS_TOKEN_BINDING_ENUM { MS_TOKEN_BINDING_DOUBLE=350, MS_TOKEN_BINDING_INTEGER, MS_TOKEN_BINDING_STRING, MS_TOKEN_BINDING_TIME, MS_TOKEN_BINDING_SHAPE };
enum MS_PARSE_TYPE_ENUM { MS_PARSE_TYPE_BOOLEAN, MS_PARSE_TYPE_STRING, MS_PARSE_TYPE_SHAPE };

#ifndef SWIG
Expand Down
2 changes: 1 addition & 1 deletion mapwms.c
Expand Up @@ -1540,7 +1540,7 @@ this request. Check wms/ows_enable_request settings.",
int numlayers =0;
layerObj *lp = NULL;

tokens = msStringSplit(styles, ',' ,&n);
tokens = msStringSplitComplex(styles, ",",&n,MS_ALLOWEMPTYTOKENS);
for (i=0; i<n; i++) {
if (tokens[i] && strlen(tokens[i]) > 0 &&
strcasecmp(tokens[i],"default") != 0) {
Expand Down

0 comments on commit fdcdddc

Please sign in to comment.