diff options
author | Andrei Karas <akaras@inbox.ru> | 2012-10-02 20:41:01 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2012-10-02 20:41:01 +0300 |
commit | 1dab21b236d76900f3ddd2be32f9590aef394c2d (patch) | |
tree | 9ff63d2bf544a440c5d8de41faa401e900898012 | |
parent | f4f16b2fd6c455cd38e089a97db374c5ee3ea9fd (diff) | |
download | manaplus-1dab21b236d76900f3ddd2be32f9590aef394c2d.tar.gz manaplus-1dab21b236d76900f3ddd2be32f9590aef394c2d.tar.bz2 manaplus-1dab21b236d76900f3ddd2be32f9590aef394c2d.tar.xz manaplus-1dab21b236d76900f3ddd2be32f9590aef394c2d.zip |
Remove most C casts.
-rw-r--r-- | src/being.cpp | 3 | ||||
-rw-r--r-- | src/configuration.cpp | 17 | ||||
-rw-r--r-- | src/debug/debug_new.cpp | 77 | ||||
-rw-r--r-- | src/resources/emotedb.cpp | 8 | ||||
-rw-r--r-- | src/resources/mapreader.cpp | 2 | ||||
-rw-r--r-- | src/utils/xml.cpp | 14 | ||||
-rw-r--r-- | src/utils/xml.h | 15 |
7 files changed, 78 insertions, 58 deletions
diff --git a/src/being.cpp b/src/being.cpp index b08e95e96..1f637ef06 100644 --- a/src/being.cpp +++ b/src/being.cpp @@ -2271,7 +2271,8 @@ void Being::recalcSpritesOrder() mSpriteHide[remSprite] = repIt->second; if (repIt->second != 1) { - if ((unsigned)remSprite != hairSlot) + if (static_cast<unsigned>(remSprite) + != hairSlot) { setSprite(remSprite, repIt->second, mSpriteColors[remSprite], diff --git a/src/configuration.cpp b/src/configuration.cpp index 9055642a3..3b8aa6a92 100644 --- a/src/configuration.cpp +++ b/src/configuration.cpp @@ -733,12 +733,9 @@ void ConfigurationObject::writeToXML(const XmlTextWriterPtr writer) logger->log("unused configuration option: " + i->first); } #endif - xmlTextWriterStartElement(writer, BAD_CAST "option"); - xmlTextWriterWriteAttribute(writer, - BAD_CAST "name", BAD_CAST i->first.c_str()); - - xmlTextWriterWriteAttribute(writer, - BAD_CAST "value", BAD_CAST i->second.c_str()); + XmlTextWriterStartElement(writer, "option"); + XmlTextWriterWriteAttribute(writer,"name", i->first.c_str()); + XmlTextWriterWriteAttribute(writer,"value", i->second.c_str()); xmlTextWriterEndElement(writer); } @@ -748,14 +745,14 @@ void ConfigurationObject::writeToXML(const XmlTextWriterPtr writer) { const char *const name = it->first.c_str(); - xmlTextWriterStartElement(writer, BAD_CAST "list"); - xmlTextWriterWriteAttribute(writer, BAD_CAST "name", BAD_CAST name); + XmlTextWriterStartElement(writer, "list"); + XmlTextWriterWriteAttribute(writer, "name", name); // recurse on all elements for (ConfigurationList::const_iterator elt_it = it->second.begin(), elt_it_end = it->second.end(); elt_it != elt_it_end; ++elt_it) { - xmlTextWriterStartElement(writer, BAD_CAST name); + XmlTextWriterStartElement(writer, name); if (*elt_it) (*elt_it)->writeToXML(writer); xmlTextWriterEndElement(writer); @@ -794,7 +791,7 @@ void Configuration::write() xmlTextWriterSetIndent(writer, 1); xmlTextWriterStartDocument(writer, nullptr, nullptr, nullptr); // xmlTextWriterStartDocument(writer, nullptr, "utf8", nullptr); - xmlTextWriterStartElement(writer, BAD_CAST "configuration"); + XmlTextWriterStartElement(writer, "configuration"); writeToXML(writer); diff --git a/src/debug/debug_new.cpp b/src/debug/debug_new.cpp index b64fc684b..ee4573132 100644 --- a/src/debug/debug_new.cpp +++ b/src/debug/debug_new.cpp @@ -338,12 +338,12 @@ static bool print_position_from_addr(const void* addr) #else const char ignore_err[] = ""; #endif - char* cmd = (char*)alloca(strlen(new_progname) - + exeext_len - + sizeof addr2line_cmd - 1 - + sizeof ignore_err - 1 - + sizeof(void*) * 2 - + 4 /* SP + "0x" + null */); + char* cmd = static_cast<char*>(alloca(strlen(new_progname) + + exeext_len + + sizeof addr2line_cmd - 1 + + sizeof ignore_err - 1 + + sizeof(void*) * 2 + + 4 /* SP + "0x" + null */)); strcpy(cmd, addr2line_cmd); strcpy(cmd + sizeof addr2line_cmd - 1, new_progname); size_t len = strlen(cmd); @@ -416,7 +416,7 @@ static void print_position(const void* ptr, int line) { if (line != 0) // Is file/line information present? { - fprintf(new_output_fp, "%s:%d", (const char*)ptr, line); + fprintf(new_output_fp, "%s:%d", static_cast<const char*>(ptr), line); } else if (ptr != nullptr) // Is caller address present? { @@ -468,7 +468,7 @@ static void* alloc_mem(size_t size, const char* file, int line, bool is_array) Alignment_must_be_power_of_two); STATIC_ASSERT(M_DEBUG_NEW_TAILCHECK >= 0, Invalid_tail_check_length); size_t s = size + ALIGNED_LIST_ITEM_SIZE + M_DEBUG_NEW_TAILCHECK; - new_ptr_list_t* ptr = (new_ptr_list_t*)malloc(s); + new_ptr_list_t* ptr = static_cast<new_ptr_list_t*>(malloc(s)); if (ptr == nullptr) { #if M_DEBUG_NEW_STD_OPER_NEW @@ -482,7 +482,7 @@ static void* alloc_mem(size_t size, const char* file, int line, bool is_array) M_DEBUG_NEW_ERROR_ACTION; #endif } - void* pointer = (char*)ptr + ALIGNED_LIST_ITEM_SIZE; + void* pointer = reinterpret_cast<char*>(ptr) + ALIGNED_LIST_ITEM_SIZE; #if M_DEBUG_NEW_FILENAME_LEN == 0 ptr->file = file; #else @@ -493,7 +493,7 @@ static void* alloc_mem(size_t size, const char* file, int line, bool is_array) } else { - ptr->addr = (void*)file; + ptr->addr = reinterpret_cast<void*>(const_cast<char*>(file)); } #endif ptr->line = line; @@ -518,7 +518,7 @@ static void* alloc_mem(size_t size, const char* file, int line, bool is_array) fprintf(new_output_fp, "new%s: allocated %p (size %u, ", is_array ? "[]" : "", - pointer, (unsigned)size); + pointer, static_cast<unsigned>(size)); if (line != 0) print_position(ptr->file, ptr->line); else @@ -541,8 +541,8 @@ static void free_pointer(void* pointer, void* addr, bool is_array) { if (pointer == nullptr) return; - new_ptr_list_t* ptr = - (new_ptr_list_t*)((char*)pointer - ALIGNED_LIST_ITEM_SIZE); + new_ptr_list_t* ptr = reinterpret_cast<new_ptr_list_t*>( + static_cast<char*>(pointer) - ALIGNED_LIST_ITEM_SIZE); if (ptr->magic != MAGIC) { { @@ -567,8 +567,8 @@ static void free_pointer(void* pointer, void* addr, bool is_array) fprintf(new_output_fp, "%s: pointer %p (size %u)\n\tat ", msg, - (char*)ptr + ALIGNED_LIST_ITEM_SIZE, - (unsigned)ptr->size); + reinterpret_cast<char*>(ptr) + ALIGNED_LIST_ITEM_SIZE, + static_cast<unsigned>(ptr->size)); print_position(addr, 0); fprintf(new_output_fp, "\n\toriginally allocated at "); if (ptr->line != 0) @@ -598,10 +598,11 @@ static void free_pointer(void* pointer, void* addr, bool is_array) { fast_mutex_autolock lock(new_output_lock); fprintf(new_output_fp, - "delete%s: freed %p (size %u, %u bytes still allocated)\n", - is_array ? "[]" : "", - (char*)ptr + ALIGNED_LIST_ITEM_SIZE, - (unsigned)ptr->size, (unsigned)total_mem_alloc); + "delete%s: freed %p (size %u, %u bytes still allocated)\n", + is_array ? "[]" : "", + reinterpret_cast<char*>(ptr) + ALIGNED_LIST_ITEM_SIZE, + static_cast<unsigned>(ptr->size), + static_cast<unsigned>(total_mem_alloc)); } free(ptr); return; @@ -625,7 +626,8 @@ int check_leaks() while (ptr != &new_ptr_list) { - const char* const pointer = (char*)ptr + ALIGNED_LIST_ITEM_SIZE; + const char* const pointer = reinterpret_cast<const char *const>(ptr) + + ALIGNED_LIST_ITEM_SIZE; if (ptr->magic != MAGIC) { fprintf(new_output_fp, @@ -646,14 +648,14 @@ int check_leaks() { fprintf(new_output_fp, "Leaked object at %p (size %u, dump %u, ", - pointer, (unsigned)ptr->size, ptr->dumped); + pointer, static_cast<unsigned>(ptr->size), ptr->dumped); if (ptr->line != 0) print_position(ptr->file, ptr->line); else print_position(ptr->addr, ptr->line); fprintf(new_output_fp, ")\n"); ++ new_cnt; - new_size += (unsigned long)ptr->size; + new_size += static_cast<unsigned long>(ptr->size); } if (ptr->dumped) ++ dumped_cnt; @@ -687,7 +689,8 @@ int check_mem_corruption() ptr != &new_ptr_list; ptr = ptr->next) { - const char* const pointer = (char*)ptr + ALIGNED_LIST_ITEM_SIZE; + const char* const pointer = reinterpret_cast<char*>(ptr) + + ALIGNED_LIST_ITEM_SIZE; if (ptr->magic == MAGIC #if M_DEBUG_NEW_TAILCHECK && check_tail(ptr) @@ -701,9 +704,9 @@ int check_mem_corruption() { #endif fprintf(new_output_fp, - "Heap data corrupt near %p (size %u, ", - pointer, - (unsigned)ptr->size); + "Heap data corrupt near %p (size %u, ", + pointer, + static_cast<unsigned>(ptr->size)); #if M_DEBUG_NEW_TAILCHECK } else @@ -730,8 +733,8 @@ void __debug_new_recorder::_M_process(void* pointer) { if (pointer == nullptr) return; - new_ptr_list_t* ptr = - (new_ptr_list_t*)((char*)pointer - ALIGNED_LIST_ITEM_SIZE); + new_ptr_list_t* ptr = reinterpret_cast<new_ptr_list_t*>( + static_cast<char*>(pointer) - ALIGNED_LIST_ITEM_SIZE); if (ptr->magic != MAGIC || ptr->line != 0) { fast_mutex_autolock lock(new_output_lock); @@ -777,23 +780,27 @@ void* operator new [](size_t size, const char* file, int line) void* operator new (size_t size) //throw(std::bad_alloc) { - return operator new (size, (char*)M_DEBUG_NEW_CALLER_ADDRESS, 0); + return operator new (size, static_cast<char*>( + M_DEBUG_NEW_CALLER_ADDRESS), 0); } void* operator new [](size_t size) //throw(std::bad_alloc) { - return operator new [](size, (char*)M_DEBUG_NEW_CALLER_ADDRESS, 0); + return operator new [](size, static_cast<char*>( + M_DEBUG_NEW_CALLER_ADDRESS), 0); } #if !defined(__BORLANDC__) || __BORLANDC__ > 0x551 void* operator new (size_t size, const std::nothrow_t&) throw() { - return alloc_mem(size, (char*)M_DEBUG_NEW_CALLER_ADDRESS, 0, false); + return alloc_mem(size, static_cast<char*>( + M_DEBUG_NEW_CALLER_ADDRESS), 0, false); } void* operator new [](size_t size, const std::nothrow_t&) throw() { - return alloc_mem(size, (char*)M_DEBUG_NEW_CALLER_ADDRESS, 0, true); + return alloc_mem(size, static_cast<char*>( + M_DEBUG_NEW_CALLER_ADDRESS), 0, true); } #endif @@ -838,12 +845,14 @@ void operator delete [](void* pointer, const char* file, int line) throw() void operator delete (void* pointer, const std::nothrow_t&) throw() { - operator delete (pointer, (char*)M_DEBUG_NEW_CALLER_ADDRESS, 0); + operator delete (pointer, static_cast<char*>( + M_DEBUG_NEW_CALLER_ADDRESS), 0); } void operator delete [](void* pointer, const std::nothrow_t&) throw() { - operator delete [](pointer, (char*)M_DEBUG_NEW_CALLER_ADDRESS, 0); + operator delete [](pointer, static_cast<char*>( + M_DEBUG_NEW_CALLER_ADDRESS), 0); } #endif // HAVE_PLACEMENT_DELETE diff --git a/src/resources/emotedb.cpp b/src/resources/emotedb.cpp index 14e3a96b5..1098243ac 100644 --- a/src/resources/emotedb.cpp +++ b/src/resources/emotedb.cpp @@ -91,8 +91,8 @@ void EmoteDB::load() { EmoteSprite *const currentSprite = new EmoteSprite; std::string file = paths.getStringValue("sprites") - + (std::string) reinterpret_cast<const char*>( - spriteNode->xmlChildrenNode->content); + + std::string(reinterpret_cast<const char*>( + spriteNode->xmlChildrenNode->content)); currentSprite->sprite = AnimatedSprite::load(file, XML::getProperty(spriteNode, "variant", 0)); currentSprite->name = XML::langProperty( @@ -147,8 +147,8 @@ void EmoteDB::load() { EmoteSprite *const currentSprite = new EmoteSprite; std::string file = paths.getStringValue("sprites") - + (std::string) reinterpret_cast<const char*>( - spriteNode->xmlChildrenNode->content); + + std::string(reinterpret_cast<const char*>( + spriteNode->xmlChildrenNode->content)); currentSprite->sprite = AnimatedSprite::load(file, XML::getProperty(spriteNode, "variant", 0)); currentSprite->name = XML::langProperty( diff --git a/src/resources/mapreader.cpp b/src/resources/mapreader.cpp index ede630d0c..51d762569 100644 --- a/src/resources/mapreader.cpp +++ b/src/resources/mapreader.cpp @@ -705,7 +705,7 @@ Tileset *MapReader::readTileset(XmlNodePtr node, const std::string &path, std::string pathDir(path); std::map<std::string, std::string> props; - if (xmlHasProp(node, BAD_CAST "source")) + if (XmlHasProp(node, "source")) { std::string filename = XML::getProperty(node, "source", ""); filename = resolveRelativePath(path, filename); diff --git a/src/utils/xml.cpp b/src/utils/xml.cpp index f25d867a6..73418cc60 100644 --- a/src/utils/xml.cpp +++ b/src/utils/xml.cpp @@ -110,7 +110,7 @@ namespace XML { int &ret = def; - xmlChar *const prop = xmlGetProp(node, BAD_CAST name); + xmlChar *const prop = XmlGetProp(node, name); if (prop) { ret = atoi(reinterpret_cast<char*>(prop)); @@ -125,7 +125,7 @@ namespace XML { int &ret = def; - xmlChar *const prop = xmlGetProp(node, BAD_CAST name); + xmlChar *const prop = XmlGetProp(node, name); if (prop) { ret = atoi(reinterpret_cast<char*>(prop)); @@ -143,7 +143,7 @@ namespace XML { double &ret = def; - xmlChar *const prop = xmlGetProp(node, BAD_CAST name); + xmlChar *const prop = XmlGetProp(node, name); if (prop) { ret = atof(reinterpret_cast<char*>(prop)); @@ -156,7 +156,7 @@ namespace XML std::string getProperty(const XmlNodePtr node, const char *const name, const std::string &def) { - xmlChar *const prop = xmlGetProp(node, BAD_CAST name); + xmlChar *const prop = XmlGetProp(node, name); if (prop) { std::string val = reinterpret_cast<char*>(prop); @@ -180,11 +180,11 @@ namespace XML bool getBoolProperty(const XmlNodePtr node, const char *const name, const bool def) { - const xmlChar *const prop = xmlGetProp(node, BAD_CAST name); + const xmlChar *const prop = XmlGetProp(node, name); - if (xmlStrEqual(prop, BAD_CAST "true" )) + if (XmlStrEqual(prop, "true")) return true; - if (xmlStrEqual(prop, BAD_CAST "false")) + if (XmlStrEqual(prop, "false")) return false; return def; } diff --git a/src/utils/xml.h b/src/utils/xml.h index e72d72070..ad54f4b28 100644 --- a/src/utils/xml.h +++ b/src/utils/xml.h @@ -32,9 +32,22 @@ #include "localconsts.h" #define XmlNodePtr xmlNodePtr -#define xmlNameEqual(node, str) xmlStrEqual((node)->name, BAD_CAST (str)) +#define XmlStrEqual(str1, str2) xmlStrEqual(str1, \ + reinterpret_cast<const xmlChar*>(str2)) +#define xmlNameEqual(node, str) xmlStrEqual((node)->name, \ + reinterpret_cast<const xmlChar*>(str)) #define XmlTextWriterPtr xmlTextWriterPtr #define xmlTypeEqual(node, typ) ((node)->type == (typ)) +#define XmlHasProp(node, name) xmlHasProp(node, \ + reinterpret_cast<const xmlChar*>(name)) +#define XmlGetProp(node, name) xmlGetProp(node, \ + reinterpret_cast<const xmlChar*>(name)) +#define XmlTextWriterStartElement(writer, name) \ + xmlTextWriterStartElement(writer, reinterpret_cast<const xmlChar*>(name)) +#define XmlTextWriterWriteAttribute(writer, name, content) \ + xmlTextWriterWriteAttribute(writer, \ + reinterpret_cast<const xmlChar*>(name), \ + reinterpret_cast<const xmlChar*>(content)) /** * XML helper functions. |