Commit 3b9a8fefc5a03f321b83b1afa0676d3b5f7e6c3c
1 parent
b58e197a
Exists in
master
and in
7 other branches
Contorno de erro do Mapserver na versão 6.0.3 ao criar imagens via save()
Showing
2 changed files
with
51 additions
and
7 deletions
Show diff stats
classesphp/mapa_googlemaps.php
@@ -76,6 +76,24 @@ if(@$_SESSION["fingerprint"]){ | @@ -76,6 +76,24 @@ if(@$_SESSION["fingerprint"]){ | ||
76 | $f = explode(",",$_SESSION["fingerprint"]); | 76 | $f = explode(",",$_SESSION["fingerprint"]); |
77 | if (md5('I3GEOSEC' . $_SERVER['HTTP_USER_AGENT'] . session_id()) != $f[0] && !in_array($_GET["telaR"],$f) ){ | 77 | if (md5('I3GEOSEC' . $_SERVER['HTTP_USER_AGENT'] . session_id()) != $f[0] && !in_array($_GET["telaR"],$f) ){ |
78 | ilegal(); | 78 | ilegal(); |
79 | + } else{ | ||
80 | + if($img->imagepath == "") | ||
81 | + {echo "Erro IMAGEPATH vazio";exit;} | ||
82 | + if(ms_GetVersionInt() != 60003 ){ | ||
83 | + header('Content-Type: image/png'); | ||
84 | + $img->saveImage(); | ||
85 | + } | ||
86 | + else{ | ||
87 | + $nomer = ($img->imagepath)."temp".nomeRand().".png"; | ||
88 | + $img->saveImage($nomer); | ||
89 | + $img = imagecreatefrompng($nomer); | ||
90 | + imagealphablending($img, false); | ||
91 | + imagesavealpha($img, true); | ||
92 | + ob_clean(); | ||
93 | + echo header("Content-type: image/png \n\n"); | ||
94 | + imagepng($img); | ||
95 | + imagedestroy($img); | ||
96 | + } | ||
79 | } | 97 | } |
80 | } | 98 | } |
81 | else{ | 99 | else{ |
@@ -296,11 +314,24 @@ else{ | @@ -296,11 +314,24 @@ else{ | ||
296 | header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime($nomer)).' GMT', true, 200); | 314 | header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime($nomer)).' GMT', true, 200); |
297 | fpassthru(fopen($nomer, 'rb')); | 315 | fpassthru(fopen($nomer, 'rb')); |
298 | } | 316 | } |
299 | - else{ | 317 | + else{ |
300 | if($img->imagepath == "") | 318 | if($img->imagepath == "") |
301 | {echo "Erro IMAGEPATH vazio";exit;} | 319 | {echo "Erro IMAGEPATH vazio";exit;} |
302 | - header('Content-Type: image/png'); | ||
303 | - $img->saveImage(); | 320 | + if(ms_GetVersionInt() != 60003 ){ |
321 | + header('Content-Type: image/png'); | ||
322 | + $img->saveImage(); | ||
323 | + } | ||
324 | + else{ | ||
325 | + $nomer = ($img->imagepath)."temp".nomeRand().".png"; | ||
326 | + $img->saveImage($nomer); | ||
327 | + $img = imagecreatefrompng($nomer); | ||
328 | + imagealphablending($img, false); | ||
329 | + imagesavealpha($img, true); | ||
330 | + ob_clean(); | ||
331 | + echo header("Content-type: image/png \n\n"); | ||
332 | + imagepng($img); | ||
333 | + imagedestroy($img); | ||
334 | + } | ||
304 | } | 335 | } |
305 | exit; | 336 | exit; |
306 | } | 337 | } |
classesphp/mapa_openlayers.php
@@ -288,10 +288,23 @@ else{ | @@ -288,10 +288,23 @@ else{ | ||
288 | fpassthru(fopen($nomer, 'rb')); | 288 | fpassthru(fopen($nomer, 'rb')); |
289 | } | 289 | } |
290 | else{ | 290 | else{ |
291 | - if($img->imagepath == "") | ||
292 | - {echo "Erro IMAGEPATH vazio";exit;} | ||
293 | - header('Content-Type: image/png'); | ||
294 | - $img->saveImage(); | 291 | + if($img->imagepath == "") |
292 | + {echo "Erro IMAGEPATH vazio";exit;} | ||
293 | + if(ms_GetVersionInt() != 60003 ){ | ||
294 | + header('Content-Type: image/png'); | ||
295 | + $img->saveImage(); | ||
296 | + } | ||
297 | + else{ | ||
298 | + $nomer = ($img->imagepath)."temp".nomeRand().".png"; | ||
299 | + $img->saveImage($nomer); | ||
300 | + $img = imagecreatefrompng($nomer); | ||
301 | + imagealphablending($img, false); | ||
302 | + imagesavealpha($img, true); | ||
303 | + ob_clean(); | ||
304 | + echo header("Content-type: image/png \n\n"); | ||
305 | + imagepng($img); | ||
306 | + imagedestroy($img); | ||
307 | + } | ||
295 | } | 308 | } |
296 | } | 309 | } |
297 | function salvaCacheImagem($cachedir,$map,$tms){ | 310 | function salvaCacheImagem($cachedir,$map,$tms){ |