Changeset 49570 in spip-zone for _plugins_/gis/trunk/gis_pipelines.php


Ignore:
Timestamp:
Jul 13, 2011, 8:20:50 AM (10 years ago)
Author:
kent1@…
Message:

Eviter des divisions par 0 potentielles

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/gis/trunk/gis_pipelines.php

    r48996 r49570  
    114114                               
    115115                                $LatDeg = explode("/",$exifs["GPSLatitude"][0]);
    116                                 $intLatDeg = $LatDeg[0]/$LatDeg[1];
     116                                if(intval($LatDeg[1]) > 0)
     117                                        $intLatDeg = $LatDeg[0]/$LatDeg[1];
    117118
    118119                                $LatMin = explode("/",$exifs["GPSLatitude"][1]);
    119                                 $intLatMin = $LatMin[0]/$LatMin[1];
     120                                if(intval($LatMin[1]) > 0)
     121                                        $intLatMin = $LatMin[0]/$LatMin[1];
    120122
    121123                                $LatSec = explode("/",$exifs["GPSLatitude"][2]);
    122                                 $intLatSec = $LatSec[0]/$LatSec[1];
     124                                if(intval($LatSec[1]) > 0)
     125                                        $intLatSec = $LatSec[0]/$LatSec[1];
    123126
    124127                                $LongDeg = explode("/",$exifs["GPSLongitude"][0]);
    125                                 $intLongDeg = $LongDeg[0]/$LongDeg[1];
     128                                if(intval($LongDeg[1]) > 0)
     129                                        $intLongDeg = $LongDeg[0]/$LongDeg[1];
    126130
    127131                                $LongMin = explode("/",$exifs["GPSLongitude"][1]);
    128                                 $intLongMin = $LongMin[0]/$LongMin[1];
     132                                if(intval($LongMin[1]) > 0)
     133                                        $intLongMin = $LongMin[0]/$LongMin[1];
    129134
    130135                                $LongSec = explode("/",$exifs["GPSLongitude"][2]);
    131                                 $intLongSec = $LongSec[0]/$LongSec[1];
     136                                if(intval($LongSec[1]) > 0)
     137                                        $intLongSec = $LongSec[0]/$LongSec[1];
    132138
    133139                                // round to 5 = approximately 1 meter accuracy
    134                                 $latitude = round(dms_to_dec($exifs["GPSLatitudeRef"],
    135                                 $intLatDeg,$intLatMin,$intLatSec),5);
    136 
    137                                 $longitude =  round(dms_to_dec($exifs["GPSLongitudeRef"],
    138                                 $intLongDeg,$intLongMin,$intLongSec), 5);
     140                                if(intval($intLatDeg) && intval($intLatMin) && intval($intLatSec))
     141                                        $latitude = round(dms_to_dec($exifs["GPSLatitudeRef"],
     142                                                $intLatDeg,$intLatMin,$intLatSec),5);
     143
     144                                if(intval($intLongDeg) && intval($intLongMin) && intval($intLongSec))
     145                                        $longitude =  round(dms_to_dec($exifs["GPSLongitudeRef"],
     146                                                $intLongDeg,$intLongMin,$intLongSec), 5);
    139147                                if($config['adresse'] == 'on'){
    140148                                        include_spip('inc/xml');
Note: See TracChangeset for help on using the changeset viewer.