Repair buggy error-handling in makeclass/getclass
This commit is contained in:
@@ -229,6 +229,10 @@ LuaDefine(deque_create, "", "create a deque") {
|
||||
LuaVar classobj;
|
||||
LuaStack LS(L, rdeque, classobj);
|
||||
const int imax = 4;
|
||||
std::string err = LS.getclass(classobj, "deque");
|
||||
if (err != "") {
|
||||
luaL_error(L, "Class deque has been corrupted");
|
||||
}
|
||||
LS.createtable(rdeque, DEQUE_BASE + imax - 1, 0);
|
||||
LS.rawset(rdeque, DEQUE_LEFT, 0);
|
||||
LS.rawset(rdeque, DEQUE_FILL, 0);
|
||||
@@ -236,7 +240,6 @@ LuaDefine(deque_create, "", "create a deque") {
|
||||
for (int i = 0; i < imax; i++) {
|
||||
LS.rawset(rdeque, DEQUE_BASE + i, 0);
|
||||
}
|
||||
LS.makeclass(classobj, "deque");
|
||||
LS.setmetatable(rdeque, classobj);
|
||||
return LS.result();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user