diff options
author | Luis Soares <luis.soares@oracle.com> | 2011-05-24 00:33:55 +0100 |
---|---|---|
committer | Luis Soares <luis.soares@oracle.com> | 2011-05-24 00:33:55 +0100 |
commit | 79f8d024b8fc73f310b255862d2797004b99871d (patch) | |
tree | 786bf19ddff57c089f3cfe1ce156bf8ee542b99e /sql/table.cc | |
parent | ef8b4f22f665b5c7f087651530072cf7342bd321 (diff) | |
parent | 1e495b270f7cbcfee346115666c9bc0ff5c16aea (diff) | |
download | mariadb-git-79f8d024b8fc73f310b255862d2797004b99871d.tar.gz |
BUG#12558519
Automerged bzr bundle from bug report into latest mysql-5.5.
Diffstat (limited to 'sql/table.cc')
-rw-r--r-- | sql/table.cc | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/sql/table.cc b/sql/table.cc index 351e80627eb..c62d84743bc 100644 --- a/sql/table.cc +++ b/sql/table.cc @@ -2189,7 +2189,15 @@ void free_blobs(register TABLE *table) for (ptr= table->s->blob_field, end=ptr + table->s->blob_fields ; ptr != end ; ptr++) - ((Field_blob*) table->field[*ptr])->free(); + { + /* + Reduced TABLE objects which are used by row-based replication for + type conversion might have some fields missing. Skip freeing BLOB + buffers for such missing fields. + */ + if (table->field[*ptr]) + ((Field_blob*) table->field[*ptr])->free(); + } } |