summaryrefslogtreecommitdiff
path: root/storage/connect/tabxcl.h
diff options
context:
space:
mode:
authorOlivier Bertrand <bertrandop@gmail.com>2014-09-27 12:09:37 +0200
committerOlivier Bertrand <bertrandop@gmail.com>2014-09-27 12:09:37 +0200
commit8585a6b58654610839139653e7793d7e6e485199 (patch)
tree8db21e0240c90a6f2da1f72e2e5f7b7824b46373 /storage/connect/tabxcl.h
parent6a00401a6090b58c2141da86b19fcc17e7102072 (diff)
downloadmariadb-git-8585a6b58654610839139653e7793d7e6e485199.tar.gz
- Fix: Crash of an XCOL table when the Colname column size is too small.
Was because of buffer overrun in XCLCOL::ReadColumn. The Cbuf buffer was unconditionally filled Now it is limited to its size. This happened because this buffer was allocated according to the XCOL column size. It is now allocated according to the source column size. modified: storage/connect/plgdbsem.h storage/connect/tabutil.h storage/connect/tabxcl.cpp storage/connect/tabxcl.h
Diffstat (limited to 'storage/connect/tabxcl.h')
-rw-r--r--storage/connect/tabxcl.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/storage/connect/tabxcl.h b/storage/connect/tabxcl.h
index 24122573100..05118c5dd25 100644
--- a/storage/connect/tabxcl.h
+++ b/storage/connect/tabxcl.h
@@ -90,6 +90,7 @@ class XCLCOL : public PRXCOL {
// Methods
virtual void Reset(void) {Colp->Reset();} // Evaluated only by TDBXCL
virtual void ReadColumn(PGLOBAL g);
+ virtual bool Init(PGLOBAL g, PTDBASE tp = NULL);
protected:
// Default constructor not to be used