2007/12/12, Gert Gremmen <[EMAIL PROTECTED]>: > Some investigations (debug=1) have led to the conclusion > > that a rename operation of the tilesxxxx.dir to tilesxxxx.upload > > is in error. > > When manually trying to rename the dir, Windows says that > > the directory is in use by a process….. > > > > Now let's find out what process….. > Hi,
the problem is line 1446 in tilesGen.pl:
my $Image = newFromPng GD::Image($File);
After this call, $File can't be unlinked (closed) anymore by the perl
process (the undef doesn't help, neither).
I've done some researching that lead to the conclusion, that this is a
problem with the GD perl implementation within ActivePerl for windows
(under linux files can be deleted even when still in use). So even
after finishing one tile, the [EMAIL PROTECTED] can't delete the
"process_nr"-tempdir because of many ghost files...
So i've reimplementet tilesGen.pl to use Perlmagick instead of libGD.
It's working now (i've no perl experience), but my problem is, that i
can't figure out the compare-function of perlmagick. So detecting
black tiles, empty sea tiles and empty land tiles does not work now...
I am attaching the diff, perhaps some perl guru can figure out a
working solution ;)
Bye, Tino
PS:
Comparing e.g. the $EmptySeaImage with $EmptyLandImage gives me an
error value >0, but comparing one of the 3 reference images with our
temporary $SubImage gives always an undefined value or 0.0.
perlmagick_patch.diff
Description: Binary data
_______________________________________________ Tilesathome mailing list [email protected] http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/tilesathome
