[GRASS-dev] [grass-code I][431] g.copy segmentation fault
Volker Wichmann
wichmann at laserdata.at
Tue Jul 24 08:54:00 EDT 2007
Glynn Clements wrote:
> Volker Wichmann wrote:
>
>
>> Digging a little deeper, I found that the return values of the two
>> 'open' commands (variables fd and fd2) are reasonable - but what about
>> the return value of the read command (line 146, do_copy.c):
>> len = read(fd, buf, 1024)
>> Why is a 0 returned at the first call - my dataset is a valid raster, so
>> why an EOF before reading anything?
>>
>
> Some of the files comprising the map may be empty, e.g. FP maps have
> an empty "cell" file (the actual data is in the "fcell" file).
>
>
ok, thanks for that hint. I was indeed using a FP map ...
trying to copy a map of type CELL reads and writes the map until EOF but
the segmentation fault on return remains. Capturing the return value I
sometimes get a corrupted output (e.g. ��
��������
��������
��u����Č
����
��u����Č) in other cases I get none before the seg fault.
I get these results on Fedora 6 and 7 installs from scratch. I know of
others having the same problem (using Fedora 6) that they use a g.copy
version from 6.2 as a workaround. I had a look at the diffs but didn't
find anything I would put the blame on.
Any help is appreciated,
thanks,
Volker
By the way, trying to display the copied/corrupted map I get the
following errors:
WARNING: Can't open header file for [test at PERMANENT in PERMANENT]
WARNING: category support for [test at PERMANENT] in mapset [PERMANENT]
missing
WARNING: can't get history information for [test at PERMANENT] in mapset
[PERMANENT]
WARNING: can't read range file for [test at PERMANENT in PERMANENT]
ERROR: Unable to read range file
... but I have to remove the map before each new debug attempt as g.copy
states the map is already in existence
>> Maybe this is an issue of file permission?
>>
>
> If you don't have the necessary permissions, the open() call will
> fail; read() and write() can't fail due to permissions.
>
>
More information about the grass-dev
mailing list