From: Alexander Nozdrin Date: March 3 2011 7:51am Subject: bzr commit into mysql-5.5 branch (alexander.nozdrin:3367) Bug#11763413 List-Archive: http://lists.mysql.com/commits/132339 X-Bug: 11763413 Message-Id: <201103030752.p237bvRN008930@acsinet15.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============4934671193817379063==" --===============4934671193817379063== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///home/alik/MySQL/bzr/00/bug56115/mysql-5.5-bug56115/ based on revid:anitha.gopi@stripped 3367 Alexander Nozdrin 2011-03-03 A patch for Bug#11763413 (invalid memory reads when PS selecting from information_schema tables). The problem was in some corner cases TABLE instance might have NULL 's' attribute (a pointer to TABLE_SHARE). The fix is to check if TABLE::s is not NULL. modified: mysql-test/r/ps.result mysql-test/t/ps.test sql/field.cc === modified file 'mysql-test/r/ps.result' --- a/mysql-test/r/ps.result 2010-11-13 15:05:02 +0000 +++ b/mysql-test/r/ps.result 2011-03-03 07:51:42 +0000 @@ -3731,5 +3731,17 @@ CREATE TABLE t1 (a INT); BEGIN; PREPARE stmt1 FROM "SELECT * FROM t1"; DROP TABLE t1; + # -# End of 6.0 tests. +# Bug#56115: invalid memory reads when PS selecting from +# information_schema tables +# Bug#58701: crash in Field::make_field, cursor-protocol +# + +SELECT * +FROM (SELECT 1 UNION SELECT 2) t; +1 +1 +2 +# +# End of 5.5 tests. === modified file 'mysql-test/t/ps.test' --- a/mysql-test/t/ps.test 2010-11-13 15:05:02 +0000 +++ b/mysql-test/t/ps.test 2011-03-03 07:51:42 +0000 @@ -3344,7 +3344,19 @@ connection default; DROP TABLE t1; disconnect con1; +--echo --echo # ---echo # End of 6.0 tests. +--echo # Bug#56115: invalid memory reads when PS selecting from +--echo # information_schema tables +--echo # Bug#58701: crash in Field::make_field, cursor-protocol +--echo # +--echo + +SELECT * +FROM (SELECT 1 UNION SELECT 2) t; + + +--echo # +--echo # End of 5.5 tests. ########################################################################### === modified file 'sql/field.cc' --- a/sql/field.cc 2011-02-08 15:47:33 +0000 +++ b/sql/field.cc 2011-03-03 07:51:42 +0000 @@ -1552,7 +1552,8 @@ void Field_num::add_zerofill_and_unsigne void Field::make_field(Send_field *field) { - if (orig_table && orig_table->s->db.str && *orig_table->s->db.str) + if (orig_table && orig_table->s && + orig_table->s->db.str && *orig_table->s->db.str) { field->db_name= orig_table->s->db.str; if (orig_table->pos_in_table_list && --===============4934671193817379063== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/alexander.nozdrin@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: alexander.nozdrin@stripped\ # rlm6hankbh4nzs65 # target_branch: file:///home/alik/MySQL/bzr/00/bug56115/mysql-5.5-\ # bug56115/ # testament_sha1: c2d911cc6adebc6792c5f8adb8e99de1a27fd295 # timestamp: 2011-03-03 10:51:46 +0300 # base_revision_id: anitha.gopi@stripped\ # fmqnbng844qkseq1 # # Begin bundle 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 --===============4934671193817379063==--