mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
Fix unhandled exception:
Force type int for ENUMs. Replace remaining longjmp. modified: storage/connect/array.cpp modified: storage/connect/colblk.cpp modified: storage/connect/connect.cc modified: storage/connect/filter.cpp modified: storage/connect/jdbconn.cpp modified: storage/connect/plgdbutl.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabvir.cpp modified: storage/connect/tabxml.cpp modified: storage/connect/value.cpp modified: storage/connect/xobject.cpp
This commit is contained in:
@@ -519,7 +519,7 @@ bool ARRAY::FilTest(PGLOBAL g, PVAL valp, OPVAL opc, int opm)
|
||||
|
||||
} else if (opc != OP_EXIST) {
|
||||
sprintf(g->Message, MSG(MISSING_ARG), opc);
|
||||
throw TYPE_ARRAY;
|
||||
throw (int)TYPE_ARRAY;
|
||||
} else // OP_EXIST
|
||||
return Nval > 0;
|
||||
|
||||
@@ -681,14 +681,14 @@ void ARRAY::SetPrecision(PGLOBAL g, int p)
|
||||
{
|
||||
if (Vblp == NULL) {
|
||||
strcpy(g->Message, MSG(PREC_VBLP_NULL));
|
||||
throw TYPE_ARRAY;
|
||||
throw (int)TYPE_ARRAY;
|
||||
} // endif Vblp
|
||||
|
||||
bool was = Vblp->IsCi();
|
||||
|
||||
if (was && !p) {
|
||||
strcpy(g->Message, MSG(BAD_SET_CASE));
|
||||
throw TYPE_ARRAY;
|
||||
throw (int)TYPE_ARRAY;
|
||||
} // endif Vblp
|
||||
|
||||
if (was || !p)
|
||||
@@ -699,7 +699,7 @@ void ARRAY::SetPrecision(PGLOBAL g, int p)
|
||||
if (!was && Type == TYPE_STRING)
|
||||
// Must be resorted to eliminate duplicate strings
|
||||
if (Sort(g))
|
||||
throw TYPE_ARRAY;
|
||||
throw (int)TYPE_ARRAY;
|
||||
|
||||
} // end of SetPrecision
|
||||
|
||||
|
Reference in New Issue
Block a user