[GRASS-dev] v.transform dysfunctional in 6.4.3.svn

Benjamin Ducke benducke at fastmail.fm
Thu Oct 25 03:06:00 PDT 2012


Dear Devs,

it seems that some recent additions to v.transform have broken
the module. There are several places in which read or write
operations to addresses that have not been malloc'd lead to
crashes.

The problems all seem to be related to the new option "table=".
It is unclear to me what this option is intended for. Is it
an input or an output option? Maybe some information should
be added to the HTML manual page.

Anyhow, without the "table=" option set, v.transform crashes
due to this block of code on line 166 of trans_digit.c:

if (field > 0) {
	db_close_database_shutdown_driver(driver);
	G_free((void *)trans_params);
}

The problem here is that "driver" never gets malloc'd,
unless the "table=" option is given (look at lines
53 and following in trans_digit.c).

With the "table=" option given, there are still illegal
write operations. Valgrind points to lines 88, 126 and
136 of trans_digit.c as culprits. These will make 
v.transform crash or not -- depending on your luck.

Cheers,

Ben

-- 
Benjamin Ducke
{*} Geospatial Consultant
{*} GIS Developer
  
  benducke AT fastmail.fm


More information about the grass-dev mailing list