Revert "Revert "Merge pull request #77 from j883376/cleanups""

This reverts commit d25205d9d3.
This commit is contained in:
j883376
2013-06-28 04:25:44 -04:00
parent d25205d9d3
commit 0578f45490
29 changed files with 151 additions and 181 deletions
+1 -1
View File
@@ -318,4 +318,4 @@ IF(UNIX)
SET_SOURCE_FILES_PROPERTIES("patches/SoD.cpp" "patches/SoF.cpp" "patches/RoF.cpp" "patches/Underfoot.cpp" PROPERTIES COMPILE_FLAGS -O0)
ENDIF(UNIX)
SET(LIBRARY_OUTPUT_PATH ../Bin)
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin)
+13 -60
View File
@@ -95,8 +95,6 @@ bool Database::Connect(const char* host, const char* user, const char* passwd, c
void Database::DBInitVars() {
max_zonename = 0;
zonename_array = 0;
varcache_array = 0;
varcache_max = 0;
varcache_lastupdate = 0;
@@ -135,13 +133,6 @@ Close the connection to the database
Database::~Database()
{
unsigned int x;
if (zonename_array) {
for (x=0; x<=max_zonename; x++) {
if (zonename_array[x])
safe_delete_array(zonename_array[x]);
}
safe_delete_array(zonename_array);
}
if (varcache_array) {
for (x=0; x<varcache_max; x++) {
safe_delete_array(varcache_array[x]);
@@ -1316,39 +1307,13 @@ bool Database::LoadZoneNames() {
char *query = 0;
MYSQL_RES *result;
MYSQL_ROW row;
query = new char[256];
strcpy(query, "SELECT MAX(zoneidnumber) FROM zone");
if (RunQuery(query, strlen(query), errbuf, &result)) {
if (RunQuery(query, MakeAnyLenString(&query, "SELECT zoneidnumber, short_name FROM zone"), errbuf, &result)) {
safe_delete_array(query);
row = mysql_fetch_row(result);
if (row && row[0])
{
max_zonename = atoi(row[0]);
zonename_array = new char*[max_zonename+1];
for(unsigned int i=0; i<max_zonename; i++) {
zonename_array[i] = 0;
}
mysql_free_result(result);
MakeAnyLenString(&query, "SELECT zoneidnumber, short_name FROM zone");
if (RunQuery(query, strlen(query), errbuf, &result)) {
safe_delete_array(query);
while((row = mysql_fetch_row(result))) {
zonename_array[atoi(row[0])] = new char[strlen(row[1]) + 1];
strcpy(zonename_array[atoi(row[0])], row[1]);
Sleep(0);
}
mysql_free_result(result);
}
else {
std::cerr << "Error in LoadZoneNames query '" << query << "' " << errbuf << std::endl;
safe_delete_array(query);
return false;
}
}
else {
mysql_free_result(result);
while ((row = mysql_fetch_row(result))) {
uint32 zoneid = atoi(row[0]);
std::string zonename = row[1];
zonename_array.insert(std::pair<uint32,std::string>(zoneid,zonename));
}
}
else {
@@ -1356,39 +1321,27 @@ bool Database::LoadZoneNames() {
safe_delete_array(query);
return false;
}
mysql_free_result(result);
return true;
}
uint32 Database::GetZoneID(const char* zonename) {
if (zonename_array == 0)
return 0;
if (zonename == 0)
return 0;
for (unsigned int i=0; i<=max_zonename; i++) {
if (zonename_array[i] != 0 && strcasecmp(zonename_array[i], zonename) == 0) {
return i;
for (auto iter = zonename_array.begin(); iter != zonename_array.end(); ++iter) {
if (iter->second.compare(zonename) == 0) {
return iter->first;
}
}
return 0;
}
const char* Database::GetZoneName(uint32 zoneID, bool ErrorUnknown) {
if (zonename_array == 0) {
if (ErrorUnknown)
return "UNKNOWN";
else
return 0;
}
auto iter = zonename_array.find(zoneID);
if (zoneID <= max_zonename) {
if (zonename_array[zoneID])
return zonename_array[zoneID];
else {
if (ErrorUnknown)
return "UNKNOWN";
else
return 0;
}
if (iter != zonename_array.end()) {
return iter->second.c_str();
}
else {
if (ErrorUnknown)
+1 -2
View File
@@ -255,8 +255,7 @@ protected:
private:
void DBInitVars();
uint32 max_zonename;
char** zonename_array;
std::map<uint32,std::string> zonename_array;
Mutex Mvarcache;
uint32 varcache_max;
+2 -1
View File
@@ -2415,7 +2415,8 @@ struct BookRequest_Struct {
*/
struct Object_Struct {
/*00*/ uint32 linked_list_addr[2];// <Zaphod> They are, get this, prev and next, ala linked list
/*08*/ uint16 unknown008[2]; //
/*08*/ uint16 unknown008; //
/*10*/ uint16 unknown010; //
/*12*/ uint32 drop_id; // Unique object id for zone
/*16*/ uint16 zone_id; // Redudant, but: Zone the object appears in
/*18*/ uint16 zone_instance; //
-2
View File
@@ -3037,7 +3037,6 @@ ENCODE(OP_ZonePlayerToBind)
ZonePlayerToBind_Struct *zps = (ZonePlayerToBind_Struct*)(*p)->pBuffer;
std::stringstream ss(std::stringstream::in | std::stringstream::out | std::stringstream::binary);
ss.clear();
unsigned char *buffer1 = new unsigned char[sizeof(structs::ZonePlayerToBindHeader_Struct) + strlen(zps->zone_name)];
structs::ZonePlayerToBindHeader_Struct *zph = (structs::ZonePlayerToBindHeader_Struct*)buffer1;
@@ -4839,7 +4838,6 @@ char* SerializeItem(const ItemInst *inst, int16 slot_id_in, uint32 *length, uint
charges = 0xFFFFFFFF;
std::stringstream ss(std::stringstream::in | std::stringstream::out | std::stringstream::binary);
ss.clear();
const Item_Struct *item = inst->GetItem();
//_log(NET__ERROR, "Serialize called for: %s", item->Name);
-2
View File
@@ -1984,7 +1984,6 @@ ENCODE(OP_ZonePlayerToBind)
ZonePlayerToBind_Struct *zps = (ZonePlayerToBind_Struct*)(*p)->pBuffer;
std::stringstream ss(std::stringstream::in | std::stringstream::out | std::stringstream::binary);
ss.clear();
unsigned char *buffer1 = new unsigned char[sizeof(structs::ZonePlayerToBindHeader_Struct) + strlen(zps->zone_name)];
structs::ZonePlayerToBindHeader_Struct *zph = (structs::ZonePlayerToBindHeader_Struct*)buffer1;
@@ -3057,7 +3056,6 @@ char* SerializeItem(const ItemInst *inst, int16 slot_id_in, uint32 *length, uint
charges = 0xFFFFFFFF;
std::stringstream ss(std::stringstream::in | std::stringstream::out | std::stringstream::binary);
ss.clear();
const Item_Struct *item = inst->GetItem();
//_log(NET__ERROR, "Serialize called for: %s", item->Name);
-2
View File
@@ -1621,7 +1621,6 @@ ENCODE(OP_ZonePlayerToBind)
ZonePlayerToBind_Struct *zps = (ZonePlayerToBind_Struct*)(*p)->pBuffer;
std::stringstream ss(std::stringstream::in | std::stringstream::out | std::stringstream::binary);
ss.clear();
unsigned char *buffer1 = new unsigned char[sizeof(structs::ZonePlayerToBindHeader_Struct) + strlen(zps->zone_name)];
structs::ZonePlayerToBindHeader_Struct *zph = (structs::ZonePlayerToBindHeader_Struct*)buffer1;
@@ -2376,7 +2375,6 @@ char* SerializeItem(const ItemInst *inst, int16 slot_id_in, uint32 *length, uint
charges = 0xFFFFFFFF;
std::stringstream ss(std::stringstream::in | std::stringstream::out | std::stringstream::binary);
ss.clear();
const Item_Struct *item = inst->GetItem();
//_log(NET__ERROR, "Serialize called for: %s", item->Name);
-2
View File
@@ -2044,7 +2044,6 @@ ENCODE(OP_ZonePlayerToBind)
ZonePlayerToBind_Struct *zps = (ZonePlayerToBind_Struct*)(*p)->pBuffer;
std::stringstream ss(std::stringstream::in | std::stringstream::out | std::stringstream::binary);
ss.clear();
unsigned char *buffer1 = new unsigned char[sizeof(structs::ZonePlayerToBindHeader_Struct) + strlen(zps->zone_name)];
structs::ZonePlayerToBindHeader_Struct *zph = (structs::ZonePlayerToBindHeader_Struct*)buffer1;
@@ -3462,7 +3461,6 @@ char* SerializeItem(const ItemInst *inst, int16 slot_id_in, uint32 *length, uint
charges = 0xFFFFFFFF;
std::stringstream ss(std::stringstream::in | std::stringstream::out | std::stringstream::binary);
ss.clear();
const Item_Struct *item = inst->GetItem();
//_log(NET__ERROR, "Serialize called for: %s", item->Name);