mirror of
https://github.com/MariaDB/server.git
synced 2026-10-23 18:49:29 +03:00
- Fix MDEV-10111 Reconize unsigned integers when creating tables via srcdef
modified: storage/connect/ha_connect.cc modified: storage/connect/myconn.cpp - Fix MDEV-10136 crash on SELECT jsonget_string(NULL, 'a') modified: storage/connect/jsonudf.cpp - Assert longjmp initialized when suballocating modified: storage/connect/plugutil.c - Avoid crash in MakeRecord when table->vcol_set isnull (trace > 1) modified: storage/connect/ha_connect.cc
This commit is contained in:
@@ -1961,7 +1961,7 @@ int ha_connect::MakeRecord(char *buf)
|
||||
if (trace > 1)
|
||||
htrc("Maps: read=%08X write=%08X vcol=%08X defr=%08X defw=%08X\n",
|
||||
*table->read_set->bitmap, *table->write_set->bitmap,
|
||||
*table->vcol_set->bitmap,
|
||||
(table->vcol_set) ? *table->vcol_set->bitmap : 0,
|
||||
*table->def_read_set.bitmap, *table->def_write_set.bitmap);
|
||||
|
||||
// Avoid asserts in field::store() for columns that are not updated
|
||||
@@ -5619,7 +5619,7 @@ static int connect_assisted_discovery(handlerton *, THD* thd,
|
||||
len= crp->Length;
|
||||
dec= crp->Prec;
|
||||
flg= crp->Flag;
|
||||
v= crp->Var;
|
||||
v= (crp->Kdata->IsUnsigned()) ? 'U' : crp->Var;
|
||||
tm= (crp->Kdata->IsNullable()) ? 0 : NOT_NULL_FLAG;
|
||||
|
||||
if (!len && typ == TYPE_STRING)
|
||||
|
||||
@@ -1433,7 +1433,7 @@ static my_bool CheckMemory(PGLOBAL g, UDF_INIT *initid, UDF_ARGS *args, uint n,
|
||||
char *p = args->args[0];
|
||||
|
||||
// Is this a file name?
|
||||
if (!strchr("[{ \t\r\n", *p) && (len = GetFileLength(p)))
|
||||
if (p && !strchr("[{ \t\r\n", *p) && (len = GetFileLength(p)))
|
||||
ml += len * (M + 1);
|
||||
else
|
||||
ml += args->lengths[0] * M;
|
||||
|
||||
@@ -901,8 +901,12 @@ PQRYRES MYSQLC::GetResult(PGLOBAL g, bool pdb)
|
||||
if (fld->flags & NOT_NULL_FLAG)
|
||||
crp->Nulls = NULL;
|
||||
else {
|
||||
crp->Nulls = (char*)PlugSubAlloc(g, NULL, m_Rows);
|
||||
memset(crp->Nulls, ' ', m_Rows);
|
||||
if (m_Rows) {
|
||||
crp->Nulls = (char*)PlugSubAlloc(g, NULL, m_Rows);
|
||||
memset(crp->Nulls, ' ', m_Rows);
|
||||
} // endif m_Rows
|
||||
|
||||
crp->Kdata->SetNullable(true);
|
||||
} // endelse fld->flags
|
||||
|
||||
} // endfor fld
|
||||
|
||||
@@ -516,7 +516,9 @@ void *PlugSubAlloc(PGLOBAL g, void *memp, size_t size)
|
||||
if (trace)
|
||||
htrc("PlugSubAlloc: %s\n", g->Message);
|
||||
|
||||
longjmp(g->jumper[g->jump_level], 1);
|
||||
/* Nothing we can do if longjmp is not initialized. */
|
||||
assert(g->jump_level >= 0);
|
||||
longjmp(g->jumper[g->jump_level], 1);
|
||||
} /* endif size OS32 code */
|
||||
|
||||
/*********************************************************************/
|
||||
|
||||
Reference in New Issue
Block a user