Skip to content
Commits on Source (5)
grass (7.6.1-1~bionic1) bionic; urgency=medium
* Rebuild for bionic.
-- Martin Landa <landa.martin@gmail.com> Thu, 21 Mar 2019 16:55:01 +0100
grass (7.6.1-1~exp1) experimental; urgency=medium
* New upstream release.
-- Bas Couwenberg <sebastic@debian.org> Wed, 20 Mar 2019 06:58:25 +0100
grass (7.6.1~rc1-1~exp1~bionic1) bionic; urgency=medium
* Rebuild for bionic.
......
......@@ -37,4 +37,4 @@ Alpha values extracted from:
Yann Chemin, GRASS Development Team, 2007-08
<p><i>Last changed: $Date: 2019-01-30 12:02:35 +0100 (Mi, 30. Jan 2019) $</i>
<p><i>Last changed: $Date: 2019-01-30 12:02:35 +0100 (Wed, 30 Jan 2019) $</i>
......@@ -285,4 +285,4 @@ E. Jorge Tizado (ej.tizado unileon es), Dept. Biodiversity and Environmental Ma
University of Le&oacute;n, Spain
<p>
<i>Last changed: $Date: 2019-01-30 12:02:35 +0100 (Mi, 30. Jan 2019) $</i>
<i>Last changed: $Date: 2019-01-30 12:02:35 +0100 (Wed, 30 Jan 2019) $</i>
......@@ -57,6 +57,35 @@ struct dblinks *Vect_new_dblinks_struct(void)
return p;
}
static int name2sql(char *name)
{
char *s = name;
int ret;
if (!s)
return 0;
/* sql-compliant name must start with letter */
if (!((*s >= 'A' && *s <= 'Z') || (*s >= 'a' && *s <= 'z'))) {
G_warning(_("Name <%s> is not SQL compliant. Must start with a letter."),
name);
return 0;
}
ret = 1;
/* convert illegal characters to underscore */
for (s++; *s; s++) {
if (!((*s >= 'A' && *s <= 'Z') || (*s >= 'a' && *s <= 'z') ||
(*s >= '0' && *s <= '9') || *s == '_')) {
G_debug(2, "Character '%c' not allowed.", *s);
*s = '_';
ret++;
}
}
return ret;
}
/*!
\brief Reset dblinks structure (number of fields)
......@@ -275,7 +304,11 @@ int Vect_add_dblink(struct dblinks *p, int number, const char *name,
if (name != NULL) {
p->field[p->n_fields].name = G_store(name);
/* replace all spaces with underscore, otherwise dbln can't be read */
G_strchg(p->field[p->n_fields].name, ' ', '_');
/* G_strchg(p->field[p->n_fields].name, ' ', '_'); */
if (!name2sql(p->field[p->n_fields].name)) {
G_free(p->field[p->n_fields].name);
p->field[p->n_fields].name = NULL;
}
}
else
p->field[p->n_fields].name = NULL;
......@@ -359,13 +392,27 @@ struct field_info *Vect_default_field_info(struct Map_info *Map,
fi->number = field;
/* Field name */
fi->name = NULL;
if (field_name && *field_name) {
fi->name = G_store(field_name);
if (!name2sql(fi->name)) {
G_free(fi->name);
fi->name = NULL;
}
}
/* Table name */
if (type == GV_1TABLE) {
sprintf(buf, "%s", Map->name);
}
else {
if (field_name != NULL && strlen(field_name) > 0)
sprintf(buf, "%s_%s", Map->name, field_name);
if (fi->name != NULL && strlen(fi->name) > 0) {
sprintf(buf, "%s_%s", Map->name, fi->name);
if (!name2sql(buf)) {
sprintf(buf, "%s_%d", Map->name, field);
}
}
else
sprintf(buf, "%s_%d", Map->name, field);
}
......@@ -378,10 +425,8 @@ struct field_info *Vect_default_field_info(struct Map_info *Map,
fi->table = G_store(buf);
}
/* Field name */
if (field_name)
fi->name = G_store(field_name);
else
/* Field name still empty */
if (!fi->name)
fi->name = G_store(buf);
fi->key = G_store(GV_KEY_COLUMN); /* Should be: id/fid/gfid/... ? */
......
......@@ -197,7 +197,7 @@ int main(int argc, char **argv)
{
compose_line(out, " Rows: %d", cellhd.rows);
compose_line(out, " Columns: %d", cellhd.cols);
compose_line(out, " Total Cells: %ju",
compose_line(out, " Total Cells: %jd",
(grass_int64)cellhd.rows * cellhd.cols);
/* This is printed as a guide to what the following eastings and
......
......@@ -235,4 +235,4 @@ Chris Thaxton<br>
North Carolina State University<br>
<i><a href="mailto:csthaxto@unity.ncsu.edu">csthaxto@unity.ncsu.edu</a></i>
<p><i>Last changed: $Date: 2019-01-30 12:02:35 +0100 (Mi, 30. Jan 2019) $</i>
<p><i>Last changed: $Date: 2019-01-30 12:02:35 +0100 (Wed, 30 Jan 2019) $</i>
......@@ -183,7 +183,8 @@ int main(int argc, char *argv[])
flag.x = G_define_flag();
flag.x->key = 'x';
flag.x->description = _("Print x and y (column and row)");
flag.x->label = _("Print x and y (column and row)");
flag.x->description = _("Indexing starts with 1: first column and row are 1");
flag.x->guisection = _("Coordinates");
flag.A = G_define_flag();
......
......@@ -168,4 +168,4 @@ Update for GRASS 6.X:
Roberto Antolin and Gonzalo Moreno
<p>
<i>Last changed: $Date: 2019-01-30 12:02:35 +0100 (Mi, 30. Jan 2019) $</i>
<i>Last changed: $Date: 2019-01-30 12:02:35 +0100 (Wed, 30 Jan 2019) $</i>