mirror of
https://github.com/VCMP-SqMod/SqMod.git
synced 2024-11-08 00:37:15 +01:00
Fixed a range error in the SQLite plugin when validating column indexes.
Added an extra flush overload to flush all elements in a handled manner. Prefixed the Server table to not clutter the user space.
This commit is contained in:
parent
a00e8c964f
commit
bab8146c89
@ -561,7 +561,7 @@ protected:
|
||||
*/
|
||||
bool CheckIndex(Int32 idx) const
|
||||
{
|
||||
return (idx >= 0) && (idx < mColumns);
|
||||
return (idx >= 0) && (idx <= mColumns);
|
||||
}
|
||||
|
||||
/* --------------------------------------------------------------------------------------------
|
||||
|
@ -526,6 +526,17 @@ public:
|
||||
*/
|
||||
Int32 Flush(Uint32 num);
|
||||
|
||||
/* --------------------------------------------------------------------------------------------
|
||||
* Flush all queries from the queue and handle errors manually.
|
||||
*/
|
||||
Int32 Flush(Object & env, Function & func)
|
||||
{
|
||||
// Validate the handle
|
||||
Validate();
|
||||
// Return the requested information
|
||||
return Flush(m_Handle->mQueue.size(), env, func);
|
||||
}
|
||||
|
||||
/* --------------------------------------------------------------------------------------------
|
||||
* Flush a specific amount of queries from the queue and handle errors manually.
|
||||
*/
|
||||
|
@ -221,6 +221,7 @@ void RegisterAPI(HSQUIRRELVM vm)
|
||||
.Func(_SC("PopQueue"), &Connection::PopQueue)
|
||||
.Overload< Int32 (Connection::*)(void) >(_SC("Flush"), &Connection::Flush)
|
||||
.Overload< Int32 (Connection::*)(Uint32) >(_SC("Flush"), &Connection::Flush)
|
||||
.Overload< Int32 (Connection::*)(Object &, Function &) >(_SC("Flush"), &Connection::Flush)
|
||||
.Overload< Int32 (Connection::*)(Uint32, Object &, Function &) >(_SC("Flush"), &Connection::Flush)
|
||||
.SquirrelFunc(_SC("ExecF"), &Connection::ExecF)
|
||||
.SquirrelFunc(_SC("QueueF"), &Connection::QueueF)
|
||||
|
@ -654,7 +654,7 @@ Array Statement::FetchArray() const
|
||||
// Validate the handle
|
||||
Validate();
|
||||
// Return the requested information
|
||||
return FetchArray(0, m_Handle->mColumns-1);
|
||||
return FetchArray(0, m_Handle->mColumns);
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------------------------------
|
||||
@ -663,7 +663,7 @@ Array Statement::FetchArray(Int32 min) const
|
||||
// Validate the handle
|
||||
Validate();
|
||||
// Return the requested information
|
||||
return FetchArray(min, m_Handle->mColumns-1);
|
||||
return FetchArray(min, m_Handle->mColumns);
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------------------------------
|
||||
@ -756,7 +756,7 @@ Table Statement::FetchTable() const
|
||||
// Validate the handle
|
||||
Validate();
|
||||
// Return the requested information
|
||||
return FetchTable(0, m_Handle->mColumns-1);
|
||||
return FetchTable(0, m_Handle->mColumns);
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------------------------------
|
||||
@ -765,7 +765,7 @@ Table Statement::FetchTable(Int32 min) const
|
||||
// Validate the handle
|
||||
Validate();
|
||||
// Return the requested information
|
||||
return FetchTable(min, m_Handle->mColumns-1);
|
||||
return FetchTable(min, m_Handle->mColumns);
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------------------------------------
|
||||
|
@ -110,7 +110,7 @@ void Register_Misc(HSQUIRRELVM vm)
|
||||
.Func(_SC("AddRadioStream"), &AddRadioStream)
|
||||
.Func(_SC("RemoveRadioStream"), &RemoveRadioStream);
|
||||
|
||||
RootTable(vm).Bind(_SC("Server"), srvns);
|
||||
RootTable(vm).Bind(_SC("SqServer"), srvns);
|
||||
|
||||
RootTable(vm)
|
||||
.Func(_SC("GetModelName"), &GetModelName)
|
||||
|
Loading…
Reference in New Issue
Block a user