diff options
author | Alexey Botchkov <holyfoot@askmonty.org> | 2015-03-12 17:50:23 +0400 |
---|---|---|
committer | Alexey Botchkov <holyfoot@askmonty.org> | 2015-03-12 17:50:23 +0400 |
commit | 129c82bb5916d05ece4efad55e8dede3005559b4 (patch) | |
tree | 358d9a6d1521c9f298542ce87a22e7fd5ac61ef2 | |
parent | 8249dcaaebf8cd1944bd4ab7ccaa8b199e76d6f9 (diff) | |
download | mariadb-git-129c82bb5916d05ece4efad55e8dede3005559b4.tar.gz |
MDEV-7334 valgrind warning "unitialized bytes" in 10.1.
The 'srid' field's copying was missing in the copying Create_field::Create_field() constructor.
-rw-r--r-- | mysql-test/r/gis.result | 27 | ||||
-rw-r--r-- | mysql-test/t/gis.test | 21 | ||||
-rw-r--r-- | sql/field.cc | 1 |
3 files changed, 47 insertions, 2 deletions
diff --git a/mysql-test/r/gis.result b/mysql-test/r/gis.result index 40e6c4e014c..4f65aa2e500 100644 --- a/mysql-test/r/gis.result +++ b/mysql-test/r/gis.result @@ -1,4 +1,4 @@ -DROP TABLE IF EXISTS t1, gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry; +DROP TABLE IF EXISTS t1, t2, t3, gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry; CREATE TABLE gis_point (fid INTEGER NOT NULL PRIMARY KEY, g POINT); CREATE TABLE gis_line (fid INTEGER NOT NULL PRIMARY KEY, g LINESTRING); CREATE TABLE gis_polygon (fid INTEGER NOT NULL PRIMARY KEY, g POLYGON); @@ -1740,3 +1740,28 @@ t1 CREATE TABLE `t1` ( `CONTAINS(NULL, NULL)` int(1) DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DROP TABLE t1; +# +# MDEV-7334 valgrind warning "unitialized bytes" in 10.1. +# +CREATE TABLE t1 ( +gp point, +ln linestring, +pg polygon, +mp multipoint, +mln multilinestring, +mpg multipolygon, +gc geometrycollection, +gm geometry +); +ALTER TABLE t1 ADD fid INT NOT NULL; +select SRID from information_schema.geometry_columns where F_TABLE_NAME='t1'; +SRID +0 +0 +0 +0 +0 +0 +0 +0 +drop table t1; diff --git a/mysql-test/t/gis.test b/mysql-test/t/gis.test index 292ded8c4a0..a4e95b7549e 100644 --- a/mysql-test/t/gis.test +++ b/mysql-test/t/gis.test @@ -6,7 +6,7 @@ # --disable_warnings -DROP TABLE IF EXISTS t1, gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry; +DROP TABLE IF EXISTS t1, t2, t3, gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry; --enable_warnings CREATE TABLE gis_point (fid INTEGER NOT NULL PRIMARY KEY, g POINT); @@ -1467,3 +1467,22 @@ drop table t1; CREATE TABLE t1 AS SELECT CONTAINS(NULL, NULL); SHOW CREATE TABLE t1; DROP TABLE t1; + + +--echo # +--echo # MDEV-7334 valgrind warning "unitialized bytes" in 10.1. +--echo # +CREATE TABLE t1 ( + gp point, + ln linestring, + pg polygon, + mp multipoint, + mln multilinestring, + mpg multipolygon, + gc geometrycollection, + gm geometry +); +ALTER TABLE t1 ADD fid INT NOT NULL; +select SRID from information_schema.geometry_columns where F_TABLE_NAME='t1'; +drop table t1; + diff --git a/sql/field.cc b/sql/field.cc index 0f062c38ca1..83560003128 100644 --- a/sql/field.cc +++ b/sql/field.cc @@ -9902,6 +9902,7 @@ Create_field::Create_field(Field *old_field,Field *orig_field) #ifdef HAVE_SPATIAL case MYSQL_TYPE_GEOMETRY: geom_type= ((Field_geom*)old_field)->geom_type; + srid= ((Field_geom*)old_field)->srid; break; #endif case MYSQL_TYPE_YEAR: |