Is it a bug in V2_open_old()?
Yu-Mei Shaw
madeline at iis.sinica.edu.tw
Sun May 15 23:20:06 EDT 1994
We're currently developing an application on Grass, and we ran into a
problem with the limitation of the number of raster files opened,
which limitation was imposed in the G__open_cell_new() library call.
Then, we traced into the V2_open_old() from Vect_open_old(), and found
out that V2_open_old() returned to G__open_cell_new() without closing
the file pointer map->dig_fp after it. Thus, the number of opened
file pointer would keep accumulating, and reach the limitation of
MAXFILES in G__open_cell_new() soon. We tried to fix the problem by
adding two lines in V2_open_old() as followed:
if ((plusfp = fopen (file, RW_str)) != NULL)
{
fclose (plusfp);
have_plus = 1;
}
else
{
fclose(map->dig_fp); <<- newly added
map->dig_fp=NULL; <<- newly added
return ("Cannot open dig_plus file");
}
We don't know if it's been ignored on purpose or not. Is there
anyone who has the same doubt, or anyone who could tell us the reason
not to modify V2_open_old() as we did? Thanks!
Best regards
Yu-Mei Shaw
Institute of Information
Academia Sinica
Email: madeline at iis.sinica.edu.tw
More information about the grass-dev
mailing list