[GRASS-dev] Principle G3D library question
Maris Nartiss
maris.gis at gmail.com
Tue Jun 21 07:45:18 EDT 2011
(Still haven't looked at code) - I hope GRASS7 files will have a
version number in header to be future-proof.
Maris.
2011/6/21 Soeren Gebbert <soerengebbert at googlemail.com>:
> Hi Maris,
>
> 2011/6/21 Maris Nartiss <maris.gis at gmail.com>:
>> Hello,
>> It's not an backporting of header it's about GRASS6 being able to
>> distinguish GRASS7 format g3d files. I have not peaked into code if
>> there such feature exists. If not, it should be implemented to prevent
>> GRASS6 failures (or worse - data corruption) on GRASS7 files.
>
> I see, good point!
>
> The grass6 implementation checks for valid header:
>
> static void readHeaderString(FILE * fp, char *valueString, double *value)
> {
> static char format[100];
>
> /* to avoid buffer overflows we use snprintf */
> G_snprintf(format, 100, "%s %%lf", valueString);
> if (fscanf(fp, format, value) != 1) {
> G_debug(0, "bad value for [%s]", valueString);
> fatalError("readHeaderString: header value invalid");
> }
> while (fgetc(fp) != '\n') ;
> }
>
> I think this should prevent the import of new grass7 volume ascii
> files in grass6. The grass6 import will break in when the new lines of
> the grass7 header are parsed.
>
> Best regards
> Soeren
>
More information about the grass-dev
mailing list