diff --git a/bug3525_ms5.6.patch b/bug3525_ms5.6.patch deleted file mode 100644 index c63f7a4..0000000 --- a/bug3525_ms5.6.patch +++ /dev/null @@ -1,809 +0,0 @@ -Index: mapwms.c -=================================================================== ---- mapserver/mapwms.c (revision 10854) -+++ mapserver/mapwms.c (working copy) -@@ -65,9 +65,8 @@ - ** - ** Report current MapServer error in requested format. - */ --static char *wms_exception_format=NULL; - --int msWMSException(mapObj *map, int nVersion, const char *exception_code) -+int msWMSException(mapObj *map, int nVersion, const char *exception_code, char *wms_exception_format) - { - const char *encoding; - char *schemalocation = NULL; -@@ -282,7 +281,7 @@ - /* - ** Apply the TIME parameter to layers that are time aware - */ --int msWMSApplyTime(mapObj *map, int version, char *time) -+int msWMSApplyTime(mapObj *map, int version, char *time, char *wms_exception_format) - { - int i=0; - layerObj *lp = NULL; -@@ -313,7 +312,7 @@ - { - msSetError(MS_WMSERR, "No Time value was given, and no default time value defined.", "msWMSApplyTime"); - return msWMSException(map, version, -- "MissingDimensionValue"); -+ "MissingDimensionValue", wms_exception_format); - } - else - { -@@ -322,7 +321,7 @@ - msSetError(MS_WMSERR, "No Time value was given, and the default time value %s is invalid or outside the time extent defined %s", "msWMSApplyTime", timedefault, timeextent); - /* return MS_FALSE; */ - return msWMSException(map, version, -- "InvalidDimensionValue"); -+ "InvalidDimensionValue", wms_exception_format); - } - msLayerSetTimeFilter(lp, timedefault, timefield); - } -@@ -337,7 +336,7 @@ - msSetError(MS_WMSERR, "Time value(s) %s given is invalid or outside the time extent defined (%s).", "msWMSApplyTime", time, timeextent); - /* return MS_FALSE; */ - return msWMSException(map, version, -- "InvalidDimensionValue"); -+ "InvalidDimensionValue", wms_exception_format); - } - else - { -@@ -346,7 +345,7 @@ - msSetError(MS_WMSERR, "Time value(s) %s given is invalid or outside the time extent defined (%s), and default time set is invalid (%s)", "msWMSApplyTime", time, timeextent, timedefault); - /* return MS_FALSE; */ - return msWMSException(map, version, -- "InvalidDimensionValue"); -+ "InvalidDimensionValue", wms_exception_format); - } - else - msLayerSetTimeFilter(lp, timedefault, timefield); -@@ -380,7 +379,7 @@ - ** - */ - int msWMSLoadGetMapParams(mapObj *map, int nVersion, -- char **names, char **values, int numentries) -+ char **names, char **values, int numentries, char *wms_exception_format) - { - int i, adjust_extent = MS_FALSE, nonsquare_enabled = MS_FALSE; - int iUnits = -1; -@@ -443,7 +442,7 @@ - if (ogrEnabled == 0) - { - msSetError(MS_WMSERR, "OGR support is not available.", "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - else - { -@@ -452,12 +451,12 @@ - if (strcasecmp(names[i], "SLD") == 0) - { - if ((status = msSLDApplySLDURL(map, values[i], -1, NULL)) != MS_SUCCESS) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - if (strcasecmp(names[i], "SLD_BODY") == 0) - { - if ((status =msSLDApplySLD(map, values[i], -1, NULL)) != MS_SUCCESS) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - } - } -@@ -478,7 +477,7 @@ - if (layers==NULL || strlen(values[i]) <=0 || numlayers < 1) { - msSetError(MS_WMSERR, "At least one layer name required in LAYERS.", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - - -@@ -609,14 +608,14 @@ - msSetError(MS_WMSERR, - "Unsupported CRS namespace (only EPSG, AUTO2, CRS currently supported).", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "InvalidCRS"); -+ return msWMSException(map, nVersion, "InvalidCRS", wms_exception_format); - } - else - { - msSetError(MS_WMSERR, - "Unsupported SRS namespace (only EPSG and AUTO currently supported).", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "InvalidSRS"); -+ return msWMSException(map, nVersion, "InvalidSRS", wms_exception_format); - } - } - } -@@ -628,7 +627,7 @@ - if (tokens==NULL || n != 4) { - msSetError(MS_WMSERR, "Wrong number of arguments for BBOX.", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - bboxrequest = values[i]; - -@@ -650,7 +649,7 @@ - msSetError(MS_WMSERR, - "Invalid values for BBOX.", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - adjust_extent = MS_TRUE; - } -@@ -689,7 +688,7 @@ - "Unsupported output format (%s).", - "msWMSLoadGetMapParams()", - values[i] ); -- return msWMSException(map, nVersion, "InvalidFormat"); -+ return msWMSException(map, nVersion, "InvalidFormat", wms_exception_format); - } - } - else -@@ -705,7 +704,7 @@ - "Unsupported output format (%s).", - "msWMSLoadGetMapParams()", - values[i] ); -- return msWMSException(map, nVersion, "InvalidFormat"); -+ return msWMSException(map, nVersion, "InvalidFormat", wms_exception_format); - } - } - msFree( map->imagetype ); -@@ -742,7 +741,7 @@ - msSetError(MS_WMSERR, - "Invalid format for the EXCEPTION parameter.", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "InvalidFormat"); -+ return msWMSException(map, nVersion, "InvalidFormat", wms_exception_format); - } - } - if (bboxfound && bboxrequest && nVersion >= OWS_1_3_0) -@@ -807,7 +806,7 @@ - msSetError(MS_WMSERR, - "Invalid values for BBOX.", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - adjust_extent = MS_TRUE; - } -@@ -836,7 +835,7 @@ - */ - if (timerequest) - { -- if (msWMSApplyTime(map, nVersion, stime) == MS_FAILURE) -+ if (msWMSApplyTime(map, nVersion, stime, wms_exception_format) == MS_FAILURE) - { - return MS_FAILURE;/* msWMSException(map, nVersion, "InvalidTimeRequest"); */ - } -@@ -857,7 +856,7 @@ - { - msSetError(MS_WMSERR, "Invalid layer(s) given in the LAYERS parameter.", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "LayerNotDefined"); -+ return msWMSException(map, nVersion, "LayerNotDefined", wms_exception_format); - } - - /* validate srs value: When the SRS parameter in a GetMap request contains a -@@ -919,13 +918,13 @@ - { - msSetError(MS_WMSERR, "Invalid CRS given : CRS must be valid for all requested layers.", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "InvalidSRS"); -+ return msWMSException(map, nVersion, "InvalidSRS", wms_exception_format); - } - else - { - msSetError(MS_WMSERR, "Invalid SRS given : SRS must be valid for all requested layers.", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "InvalidSRS"); -+ return msWMSException(map, nVersion, "InvalidSRS", wms_exception_format); - } - } - } -@@ -943,7 +942,7 @@ - /* Restore valid default values in case errors INIMAGE are used */ - map->width = 400; - map->height= 300; -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - - /* Check whether requested BBOX and width/height result in non-square pixels -@@ -986,7 +985,7 @@ - "have any projection set. Please make sure your mapfile " - "has a projection defined at the top level.", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "InvalidCRS"); -+ return msWMSException(map, nVersion, "InvalidCRS", wms_exception_format); - } - else - { -@@ -994,7 +993,7 @@ - "have any projection set. Please make sure your mapfile " - "has a projection defined at the top level.", - "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "InvalidSRS"); -+ return msWMSException(map, nVersion, "InvalidSRS", wms_exception_format); - } - } - -@@ -1010,7 +1009,7 @@ - if (nTmp != 0) - { - msFreeProjection(&newProj); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - } - -@@ -1035,7 +1034,7 @@ - original_srs) != 0) - { - msFreeProjection(&newProj); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - GET_LAYER(map, i)->project = MS_TRUE; - } -@@ -1060,7 +1059,7 @@ - nTmp = msLoadProjectionString(&(map->projection), srsbuffer); - - if (nTmp != 0) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - - iUnits = GetMapserverUnitUsingProj(&(map->projection)); - if (iUnits != -1) -@@ -1125,7 +1124,7 @@ - msFreeCharArray(tokens, n); - msFreeCharArray(layers, numlayers); - -- return msWMSException(map, nVersion, "StyleNotDefined"); -+ return msWMSException(map, nVersion, "StyleNotDefined", wms_exception_format); - } - } - -@@ -1139,7 +1138,7 @@ - msFreeCharArray(tokens, n); - if (layers && numlayers > 0) - msFreeCharArray(layers, numlayers); -- return msWMSException(map, nVersion, "StyleNotDefined"); -+ return msWMSException(map, nVersion, "StyleNotDefined", wms_exception_format); - } - } - } -@@ -1174,31 +1173,31 @@ - else - msSetError(MS_WMSERR, "Missing required parameter SRS", "msWMSLoadGetMapParams()"); - -- return msWMSException(map, nVersion, "MissingParameterValue"); -+ return msWMSException(map, nVersion, "MissingParameterValue", wms_exception_format); - } - - if (bboxfound == 0) - { - msSetError(MS_WMSERR, "Missing required parameter BBOX", "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "MissingParameterValue"); -+ return msWMSException(map, nVersion, "MissingParameterValue", wms_exception_format); - } - - if (formatfound == 0 && (strcasecmp(request, "GetMap") == 0 || strcasecmp(request, "map") == 0)) - { - msSetError(MS_WMSERR, "Missing required parameter FORMAT", "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "MissingParameterValue"); -+ return msWMSException(map, nVersion, "MissingParameterValue", wms_exception_format); - } - - if (widthfound == 0) - { - msSetError(MS_WMSERR, "Missing required parameter WIDTH", "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "MissingParameterValue"); -+ return msWMSException(map, nVersion, "MissingParameterValue", wms_exception_format); - } - - if (heightfound == 0) - { - msSetError(MS_WMSERR, "Missing required parameter HEIGHT", "msWMSLoadGetMapParams()"); -- return msWMSException(map, nVersion, "MissingParameterValue"); -+ return msWMSException(map, nVersion, "MissingParameterValue", wms_exception_format); - } - - } -@@ -1935,7 +1934,8 @@ - /* - ** msWMSGetCapabilities() - */ --int msWMSGetCapabilities(mapObj *map, int nVersion, cgiRequestObj *req, const char *requested_updatesequence) -+int msWMSGetCapabilities(mapObj *map, int nVersion, cgiRequestObj *req, const char *requested_updatesequence, -+ char *wms_exception_format) - { - char *dtd_url = NULL; - char *script_url=NULL, *script_url_encoded=NULL; -@@ -1961,11 +1961,11 @@ - i = msOWSNegotiateUpdateSequence(requested_updatesequence, updatesequence); - if (i == 0) { /* current */ - msSetError(MS_WMSERR, "UPDATESEQUENCE parameter (%s) is equal to server (%s)", "msWMSGetCapabilities()", requested_updatesequence, updatesequence); -- return msWMSException(map, nVersion, "CurrentUpdateSequence"); -+ return msWMSException(map, nVersion, "CurrentUpdateSequence", wms_exception_format); - } - if (i > 0) { /* invalid */ - msSetError(MS_WMSERR, "UPDATESEQUENCE parameter (%s) is higher than server (%s)", "msWMSGetCapabilities()", requested_updatesequence, updatesequence); -- return msWMSException(map, nVersion, "InvalidUpdateSequence"); -+ return msWMSException(map, nVersion, "InvalidUpdateSequence", wms_exception_format); - } - } - -@@ -2009,7 +2009,7 @@ - if ((script_url=msOWSGetOnlineResource(map, "MO", "onlineresource", req)) == NULL || - (script_url_encoded = msEncodeHTMLEntities(script_url)) == NULL) - { -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - - if (nVersion <= OWS_1_0_7 || nVersion >= OWS_1_3_0) /* 1.0.0 to 1.0.7 and >=1.3.0*/ -@@ -2596,7 +2596,8 @@ - /* - ** msWMSGetMap() - */ --int msWMSGetMap(mapObj *map, int nVersion, char **names, char **values, int numentries) -+int msWMSGetMap(mapObj *map, int nVersion, char **names, char **values, int numentries, -+ char *wms_exception_format) - { - imageObj *img; - int i = 0; -@@ -2677,7 +2678,7 @@ - else - img = msDrawMap(map, MS_FALSE); - if (img == NULL) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - - /* Set the HTTP Cache-control headers if they are defined - in the map object */ -@@ -2689,7 +2690,7 @@ - msIO_printf("Content-type: %s%c%c", - MS_IMAGE_MIME_TYPE(map->outputformat), 10,10); - if (msSaveImage(map, img, NULL) != MS_SUCCESS) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - - - msFreeImage(img); -@@ -2697,7 +2698,7 @@ - return(MS_SUCCESS); - } - --int msDumpResult(mapObj *map, int bFormatHtml, int nVersion) -+int msDumpResult(mapObj *map, int bFormatHtml, int nVersion, char *wms_exception_format) - { - int numresults=0; - int i; -@@ -2770,7 +2771,7 @@ - if (msLayerResultsGetShape(lp, &shape, lp->resultcache->results[j].tileindex, lp->resultcache->results[j].shapeindex) != MS_SUCCESS) - { - msFree(itemvisible); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - - msIO_printf(" Feature %ld: \n", lp->resultcache->results[j].shapeindex); -@@ -2797,7 +2798,8 @@ - /* - ** msWMSFeatureInfo() - */ --int msWMSFeatureInfo(mapObj *map, int nVersion, char **names, char **values, int numentries) -+int msWMSFeatureInfo(mapObj *map, int nVersion, char **names, char **values, int numentries, -+ char *wms_exception_format) - { - int i, feature_count=1, numlayers_found=0; - pointObj point = {-1.0, -1.0}; -@@ -2824,7 +2826,7 @@ - layers = msStringSplit(values[i], ',', &numlayers); - if(layers==NULL || numlayers < 1 || strlen(msStringTrimLeft(values[i])) < 1) { - msSetError(MS_WMSERR, "At least one layer name required in QUERY_LAYERS.", "msWMSFeatureInfo()"); -- return msWMSException(map, nVersion, "LayerNotDefined"); -+ return msWMSException(map, nVersion, "LayerNotDefined", wms_exception_format); - } - - for(j=0; jnumlayers; j++) { -@@ -2872,12 +2874,12 @@ - if (query_layer) - { - msSetError(MS_WMSERR, "Layer(s) specified in QUERY_LAYERS parameter is not offered by the service instance.", "msWMSFeatureInfo()"); -- return msWMSException(map, nVersion, "LayerNotDefined"); -+ return msWMSException(map, nVersion, "LayerNotDefined", wms_exception_format); - } - else - { - msSetError(MS_WMSERR, "Required QUERY_LAYERS parameter missing for getFeatureInfo.", "msWMSFeatureInfo()"); -- return msWMSException(map, nVersion, "LayerNotDefined"); -+ return msWMSException(map, nVersion, "LayerNotDefined", wms_exception_format); - } - } - -@@ -2890,7 +2892,7 @@ - if (GET_LAYER(map, i)->status == MS_ON && !msIsLayerQueryable(GET_LAYER(map, i))) - { - msSetError(MS_WMSERR, "Requested layer(s) are not queryable.", "msWMSFeatureInfo()"); -- return msWMSException(map, nVersion, "LayerNotQueryable"); -+ return msWMSException(map, nVersion, "LayerNotQueryable", wms_exception_format); - } - } - if(point.x == -1.0 || point.y == -1.0) { -@@ -2898,7 +2900,7 @@ - msSetError(MS_WMSERR, "Required I/J parameters missing for getFeatureInfo.", "msWMSFeatureInfo()"); - else - msSetError(MS_WMSERR, "Required X/Y parameters missing for getFeatureInfo.", "msWMSFeatureInfo()"); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - - /*wms1.3.0: check if the points are valid*/ -@@ -2907,7 +2909,7 @@ - if (point.x > map->width || point.y > map->height) - { - msSetError(MS_WMSERR, "Invalid I/J values", "msWMSFeatureInfo()"); -- return msWMSException(map, nVersion, "InvalidPoint"); -+ return msWMSException(map, nVersion, "InvalidPoint", wms_exception_format); - } - } - /* Perform the actual query */ -@@ -2930,7 +2932,7 @@ - map->query.maxresults = feature_count; - - if(msQueryByPoint(map) != MS_SUCCESS) -- if((query_status=ms_error->code) != MS_NOTFOUND) return msWMSException(map, nVersion, NULL); -+ if((query_status=ms_error->code) != MS_NOTFOUND) return msWMSException(map, nVersion, NULL, wms_exception_format); - - /* Generate response */ - if (strcasecmp(info_format, "MIME") == 0 || -@@ -2945,7 +2947,7 @@ - msIO_printf("Content-type: text/plain%c%c",10,10); - msIO_printf("GetFeatureInfo results:\n"); - -- numresults = msDumpResult(map, 0, nVersion); -+ numresults = msDumpResult(map, 0, nVersion, wms_exception_format); - - if (numresults == 0) msIO_printf("\n Search returned no results.\n"); - -@@ -2986,10 +2988,10 @@ - if (query_status == MS_NOTFOUND && msObj->map->web.empty) - { - if(msReturnURL(msObj, msObj->map->web.empty, BROWSE) != MS_SUCCESS) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - else if (msReturnTemplateQuery(msObj, (char*)pszMimeType, NULL) != MS_SUCCESS) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - - /* We don't want to free the map, and param names/values since they */ - /* belong to the caller, set them to NULL before freeing the mapservObj */ -@@ -3004,9 +3006,9 @@ - { - msSetError(MS_WMSERR, "Unsupported INFO_FORMAT value (%s).", "msWMSFeatureInfo()", info_format); - if (nVersion >= OWS_1_3_0) -- return msWMSException(map, nVersion, "InvalidFormat"); -+ return msWMSException(map, nVersion, "InvalidFormat", wms_exception_format); - else -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - - return(MS_SUCCESS); -@@ -3016,7 +3018,7 @@ - ** msWMSDescribeLayer() - */ - int msWMSDescribeLayer(mapObj *map, int nVersion, char **names, -- char **values, int numentries) -+ char **values, int numentries, char *wms_exception_format) - { - int i = 0; - char **layers = NULL; -@@ -3048,12 +3050,12 @@ - if (nVersion >= OWS_1_3_0 && sld_version == NULL) - { - msSetError(MS_WMSERR, "Missing required parameter SLD_VERSION", "DescribeLayer()"); -- return msWMSException(map, nVersion, "MissingParameterValue"); -+ return msWMSException(map, nVersion, "MissingParameterValue", wms_exception_format); - } - if (nVersion >= OWS_1_3_0 && strcasecmp(sld_version, "1.1.0") != 0) - { - msSetError(MS_WMSERR, "SLD_VERSION must be 1.1.0", "DescribeLayer()"); -- return msWMSException(map, nVersion, "InvalidParameterValue"); -+ return msWMSException(map, nVersion, "InvalidParameterValue", wms_exception_format); - } - - if (encoding) -@@ -3219,7 +3221,7 @@ - ** msWMSGetLegendGraphic() - */ - int msWMSGetLegendGraphic(mapObj *map, int nVersion, char **names, -- char **values, int numentries) -+ char **values, int numentries, char *wms_exception_format) - { - char *pszLayer = NULL; - char *pszFormat = NULL; -@@ -3281,23 +3283,23 @@ - if (!pszLayer) - { - msSetError(MS_WMSERR, "Mandatory LAYER parameter missing in GetLegendGraphic request.", "msWMSGetLegendGraphic()"); -- return msWMSException(map, nVersion, "LayerNotDefined"); -+ return msWMSException(map, nVersion, "LayerNotDefined", wms_exception_format); - } - if (!pszFormat) - { - msSetError(MS_WMSERR, "Mandatory FORMAT parameter missing in GetLegendGraphic request.", "msWMSGetLegendGraphic()"); -- return msWMSException(map, nVersion, "InvalidFormat"); -+ return msWMSException(map, nVersion, "InvalidFormat", wms_exception_format); - } - - if (nVersion >= OWS_1_3_0 && sld_version == NULL) - { - msSetError(MS_WMSERR, "Missing required parameter SLD_VERSION", "GetLegendGraphic()"); -- return msWMSException(map, nVersion, "MissingParameterValue"); -+ return msWMSException(map, nVersion, "MissingParameterValue", wms_exception_format); - } - if (nVersion >= OWS_1_3_0 && strcasecmp(sld_version, "1.1.0") != 0) - { - msSetError(MS_WMSERR, "SLD_VERSION must be 1.1.0", "GetLegendGraphic()"); -- return msWMSException(map, nVersion, "InvalidParameterValue"); -+ return msWMSException(map, nVersion, "InvalidParameterValue", wms_exception_format); - } - /* check if layer name is valid. We only test the layer name and not */ - /* the group name. */ -@@ -3315,7 +3317,7 @@ - { - msSetError(MS_WMSERR, "Invalid layer given in the LAYER parameter.", - "msWMSGetLegendGraphic()"); -- return msWMSException(map, nVersion, "LayerNotDefined"); -+ return msWMSException(map, nVersion, "LayerNotDefined", wms_exception_format); - } - - /* validate format */ -@@ -3340,7 +3342,7 @@ - "Unsupported output format (%s).", - "msWMSGetLegendGraphic()", - values[i] ); -- return msWMSException(map, nVersion, "InvalidFormat"); -+ return msWMSException(map, nVersion, "InvalidFormat", wms_exception_format); - } - } - else -@@ -3358,7 +3360,7 @@ - "Unsupported output format (%s).", - "msWMSGetLegendGraphic()", - pszFormat); -- return msWMSException(map, nVersion, "InvalidFormat"); -+ return msWMSException(map, nVersion, "InvalidFormat", wms_exception_format); - } - } - msApplyOutputFormat(&(map->outputformat), psFormat, MS_NOOVERRIDE, -@@ -3379,7 +3381,7 @@ - { - msSetError(MS_WMSERR, "style used in the STYLE parameter is not defined on the layer.", - "msWMSGetLegendGraphic()"); -- return msWMSException(map, nVersion, "StyleNotDefined"); -+ return msWMSException(map, nVersion, "StyleNotDefined", wms_exception_format); - } - else - { -@@ -3473,16 +3475,16 @@ - "Unavailable RULE (%s).", - "msWMSGetLegendGraphic()", - psRule); -- return msWMSException(map, nVersion, "InvalidRule"); -+ return msWMSException(map, nVersion, "InvalidRule", wms_exception_format); - } - } - - if (img == NULL) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - - msIO_printf("Content-type: %s%c%c", MS_IMAGE_MIME_TYPE(map->outputformat), 10,10); - if (msSaveImage(map, img, NULL) != MS_SUCCESS) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - - msFreeImage(img); - -@@ -3495,7 +3497,7 @@ - ** have a status set to on or default. - */ - int msWMSGetStyles(mapObj *map, int nVersion, char **names, -- char **values, int numentries) -+ char **values, int numentries, char *wms_exception_format) - - { - int i,j,k; -@@ -3516,7 +3518,7 @@ - if (layers==NULL || numlayers < 1) { - msSetError(MS_WMSERR, "At least one layer name required in LAYERS.", - "msWMSGetStyles()"); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - for(j=0; jnumlayers; j++) - GET_LAYER(map, j)->status = MS_OFF; -@@ -3544,7 +3546,7 @@ - { - msSetError(MS_WMSERR, "Invalid layer(s) given in the LAYERS parameter.", - "msWMSGetStyles()"); -- return msWMSException(map, nVersion, "LayerNotDefined"); -+ return msWMSException(map, nVersion, "LayerNotDefined", wms_exception_format); - } - - if (nVersion <= OWS_1_1_1) -@@ -3620,6 +3622,7 @@ - int i, status, nVersion=OWS_VERSION_NOTSET; - const char *version=NULL, *request=NULL, *service=NULL, *format=NULL, *updatesequence=NULL; - const char * encoding; -+ char *wms_exception_format = NULL; - - encoding = msOWSLookupMetadata(&(map->web.metadata), "MO", "encoding"); - -@@ -3654,7 +3657,7 @@ - /* Invalid version format. msSetError() has been called by - * msOWSParseVersionString() and we return the error as an exception - */ -- return msWMSException(map, OWS_VERSION_NOTSET, NULL); -+ return msWMSException(map, OWS_VERSION_NOTSET, NULL, wms_exception_format); - } - - /* -@@ -3667,7 +3670,7 @@ - (nVersion >= OWS_1_0_7 || nVersion == OWS_VERSION_NOTSET)) - { - msSetError(MS_WMSERR, "Required SERVICE parameter missing.", "msWMSDispatch"); -- return msWMSException(map, nVersion, "ServiceNotDefined"); -+ return msWMSException(map, nVersion, "ServiceNotDefined", wms_exception_format); - } - - /* -@@ -3680,8 +3683,8 @@ - if (nVersion == OWS_VERSION_NOTSET) - nVersion = OWS_1_3_0;/* VERSION is optional with getCapabilities only */ - if ((status = msOWSMakeAllLayersUnique(map)) != MS_SUCCESS) -- return msWMSException(map, nVersion, NULL); -- return msWMSGetCapabilities(map, nVersion, req, updatesequence); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); -+ return msWMSGetCapabilities(map, nVersion, req, updatesequence, wms_exception_format); - } - else if (request && (strcasecmp(request, "context") == 0 || - strcasecmp(request, "GetContext") == 0) ) -@@ -3710,11 +3713,11 @@ - { - msSetError(MS_WMSERR, "GetContext not enabled on this server.", - "msWMSDispatch()"); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - - if ((status = msOWSMakeAllLayersUnique(map)) != MS_SUCCESS) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - - if (encoding) - msIO_printf("Content-type: text/xml; charset=%s%c%c", encoding,10,10); -@@ -3722,7 +3725,7 @@ - msIO_printf("Content-type: text/xml%c%c",10,10); - - if ( msWriteMapContext(map, stdout) != MS_SUCCESS ) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - /* Request completed */ - return MS_SUCCESS; - } -@@ -3765,7 +3768,7 @@ - msSetError(MS_WMSERR, - "Incomplete WMS request: VERSION parameter missing", - "msWMSDispatch()"); -- return msWMSException(map, OWS_VERSION_NOTSET, NULL); -+ return msWMSException(map, OWS_VERSION_NOTSET, NULL, wms_exception_format); - } - - if (request==NULL) -@@ -3773,17 +3776,19 @@ - msSetError(MS_WMSERR, - "Incomplete WMS request: REQUEST parameter missing", - "msWMSDispatch()"); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - - if ((status = msOWSMakeAllLayersUnique(map)) != MS_SUCCESS) -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - - if (strcasecmp(request, "GetLegendGraphic") == 0) -- return msWMSGetLegendGraphic(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams); -+ return msWMSGetLegendGraphic(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams, -+ wms_exception_format); - - if (strcasecmp(request, "GetStyles") == 0) -- return msWMSGetStyles(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams); -+ return msWMSGetStyles(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams, -+ wms_exception_format); - - else if (request && strcasecmp(request, "GetSchemaExtension") == 0) - return msWMSGetSchemaExtension(map); -@@ -3792,25 +3797,29 @@ - if (strcasecmp(request, "map") == 0 || strcasecmp(request, "GetMap") == 0 || - strcasecmp(request, "feature_info") == 0 || strcasecmp(request, "GetFeatureInfo") == 0 || strcasecmp(request, "DescribeLayer") == 0) - { -- status = msWMSLoadGetMapParams(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams); -+ status = msWMSLoadGetMapParams(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams, -+ wms_exception_format); - if (status != MS_SUCCESS) return status; - } - - - if (strcasecmp(request, "map") == 0 || strcasecmp(request, "GetMap") == 0) -- return msWMSGetMap(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams); -+ return msWMSGetMap(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams, -+ wms_exception_format); - else if (strcasecmp(request, "feature_info") == 0 || strcasecmp(request, "GetFeatureInfo") == 0) -- return msWMSFeatureInfo(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams); -+ return msWMSFeatureInfo(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams, -+ wms_exception_format); - else if (strcasecmp(request, "DescribeLayer") == 0) - { -- return msWMSDescribeLayer(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams); -+ return msWMSDescribeLayer(map, nVersion, req->ParamNames, req->ParamValues, req->NumParams, -+ wms_exception_format); - } - - /* Hummmm... incomplete or unsupported WMS request */ - if (service != NULL && strcasecmp(service, "WMS") == 0) - { - msSetError(MS_WMSERR, "Incomplete or unsupported WMS request", "msWMSDispatch()"); -- return msWMSException(map, nVersion, NULL); -+ return msWMSException(map, nVersion, NULL, wms_exception_format); - } - else - return MS_DONE; /* Not a WMS request */ -Index: mapows.h -=================================================================== ---- mapserver/mapows.h (revision 10854) -+++ mapserver/mapows.h (working copy) -@@ -408,8 +408,8 @@ - * mapwms.c - *====================================================================*/ - int msWMSDispatch(mapObj *map, cgiRequestObj *req); --MS_DLL_EXPORT int msWMSLoadGetMapParams(mapObj *map, int nVersion, -- char **names, char **values, int numentries); -+MS_DLL_EXPORT int msWMSLoadGetMapParams(mapObj *map, int nVersion, char **names, -+ char **values, int numentries, char *wms_exception_format); - - - /*==================================================================== -Index: mapobject.c -=================================================================== ---- mapserver/mapobject.c (revision 10854) -+++ mapserver/mapobject.c (working copy) -@@ -774,10 +774,17 @@ - { - #ifdef USE_WMS_SVR - int version; -+ char *wms_exception_format = NULL; -+ int i =0; - - version = msOWSParseVersionString(wmtver); -+ for(i=0; iNumParams; i++) -+ { -+ if (strcasecmp(request->ParamNames[i], "EXCEPTIONS") == 0) -+ wms_exception_format = request->ParamValues[i]; -+ } - return msWMSLoadGetMapParams(map, version, request->ParamNames, -- request->ParamValues, request->NumParams); -+ request->ParamValues, request->NumParams, wms_exception_format); - #else - msSetError(MS_WMSERR, "WMS server support is not available.", - "msMapLoadOWSParameters()"); diff --git a/mapserver-5.6.5.tar.gz b/mapserver-5.6.5.tar.gz deleted file mode 100644 index e56b308..0000000 --- a/mapserver-5.6.5.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:acacafe6102b1f185094effc45b5b0a5d3ba6b21a4dbe209ca84a4b3d85798c5 -size 2314003 diff --git a/mapserver-5.6.6.tar.gz b/mapserver-5.6.6.tar.gz new file mode 100644 index 0000000..f530fcd --- /dev/null +++ b/mapserver-5.6.6.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5d00321456791cebcbf0b0cb3fa1b69c5cd8bfa8d6003ad05480682465684f6 +size 2326652 diff --git a/mapserver.spec b/mapserver.spec index fc8eab3..abfcc79 100644 --- a/mapserver.spec +++ b/mapserver.spec @@ -1,5 +1,5 @@ Name: mapserver -Version: 5.6.5 +Version: 5.6.6 Release: 1 License: BSD Group: Applications/GIS @@ -60,7 +60,6 @@ BuildRequires: libgcj-devel BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Patch0: mapserver-5.4.1_buildchecks.patch Patch1: hidden_layer.patch -Patch2: bug3525_ms5.6.patch #%define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)") %define _cgibindir /srv/www/cgi-bin @@ -112,7 +111,6 @@ within the Java programming language. %setup -q %patch0 -p1 %patch1 -p1 -%patch2 -p1 # fix spurious perm bits chmod -x tests/home.png @@ -289,6 +287,12 @@ rm -rf %{buildroot} %{_javadir}/*.jar %changelog +* Tue Jan 18 2011 Stephan Holl 5.6.6 +- udated to new upstream version of mapserver 5.6.6(see· + http://trac.osgeo.org/mapserver/browser/tags/rel-5-6-6/mapserver/HISTORY.TXT + for a detailed description of the changes. +- removed patch for bug #3525 since this is already included in upstreams + version 5.6.5 * Tue Jan 11 2011 Stephan Holl 5.6.5 - added upstream-patch for mapserver bug #3525 to work reliably with WMS 1.3.0 and FCGI-mode