~ubuntu-branches/ubuntu/jaunty/mapserver/jaunty-updates

« back to all changes in this revision

Viewing changes to mapraster.c

  • Committer: Bazaar Package Importer
  • Author(s): Fabio Tranchitella
  • Date: 2006-11-02 11:44:17 UTC
  • mfrom: (1.1.3 upstream)
  • Revision ID: james.westby@ubuntu.com-20061102114417-pnutjb20kqzl23ua
Tags: 4.10.0-3
debian/control: build-depends on libpq-dev. (Closes: #396565)

Show diffs side-by-side

added added

removed removed

Lines of Context:
29
29
 ******************************************************************************
30
30
 *
31
31
 * $Log: mapraster.c,v $
 
32
 * Revision 1.137  2006/09/24 02:42:12  frank
 
33
 * handle upsidedown images through resample logic. (bug 1904)
 
34
 *
 
35
 * Revision 1.136  2006/04/18 17:20:37  frank
 
36
 * Support large (>2GB) raster files relative to SHAPEPATH. (bug 1748)
 
37
 *
 
38
 * Revision 1.135  2006/02/18 21:14:55  frank
 
39
 * Fixed regex test.
 
40
 *
32
41
 * Revision 1.134  2005/12/15 16:37:06  frank
33
42
 * Last fix was for bug 1562
34
43
 *
111
120
#include "mapresample.h"
112
121
#include "mapthread.h"
113
122
 
114
 
MS_CVSID("$Id: mapraster.c,v 1.134 2005/12/15 16:37:06 frank Exp $")
 
123
MS_CVSID("$Id: mapraster.c,v 1.137 2006/09/24 02:42:12 frank Exp $")
115
124
 
116
125
extern int msyyparse(void);
117
126
extern int msyylex(void);
1372
1381
              free(pszTmp);
1373
1382
          }
1374
1383
          else if (layer->filter.type == MS_REGEX || 
1375
 
                   layer->filter.type == MS_REGEX == MS_IREGEX)
 
1384
                   layer->filter.type == MS_IREGEX)
1376
1385
          {
1377
1386
              pszTmp = 
1378
1387
                (char *)malloc(sizeof(char)*(strlen(layer->filter.string)+3));
1475
1484
 
1476
1485
    msBuildPath3(szPath, map->mappath, map->shapepath, filename);
1477
1486
 
 
1487
    /*
 
1488
    ** Try to open the file, and read the first 8 bytes as a signature. 
 
1489
    ** If the open fails for a reason other than "bigness" then we use
 
1490
    ** the filename unaltered by path logic since it might be something
 
1491
    ** very virtual.
 
1492
    */
1478
1493
    f = fopen( szPath, "rb");
1479
1494
    if(!f) {
1480
1495
      memset( dd, 0, 8 );
 
1496
#ifdef EFBIG
 
1497
      if( errno != EFBIG )
 
1498
          strcpy( szPath, filename );
 
1499
#else
1481
1500
      strcpy( szPath, filename );
 
1501
#endif
1482
1502
    } else {
1483
1503
      fread(dd,8,1,f); /* read some bytes to try and identify the file */
1484
1504
      fclose(f);
1565
1585
            /* 
1566
1586
            ** We want to resample if the source image is rotated, if
1567
1587
            ** the projections differ or if resampling has been explicitly
1568
 
            ** requested.
 
1588
            ** requested, or if the image has north-down instead of north-up.
1569
1589
            */
1570
1590
#ifdef USE_PROJ
1571
 
            if( ((adfGeoTransform[2] != 0.0 || adfGeoTransform[4] != 0.0)
 
1591
            if( ((adfGeoTransform[2] != 0.0 || adfGeoTransform[4] != 0.0
 
1592
                  || adfGeoTransform[5] > 0.0 || adfGeoTransform[1] < 0.0 )
1572
1593
                 && layer->transform )
1573
1594
                || msProjectionsDiffer( &(map->projection), 
1574
1595
                                        &(layer->projection) )