summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/hash.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/hash.cpp')
-rw-r--r--src/emu/hash.cpp40
1 files changed, 19 insertions, 21 deletions
diff --git a/src/emu/hash.cpp b/src/emu/hash.cpp
index 20894f4fa3e..20fd59ecab6 100644
--- a/src/emu/hash.cpp
+++ b/src/emu/hash.cpp
@@ -115,14 +115,14 @@ bool hash_collection::operator==(const hash_collection &rhs) const
// a string
//-------------------------------------------------
-const char *hash_collection::hash_types(std::string &buffer) const
+std::string hash_collection::hash_types() const
{
- buffer.clear();
+ std::string buffer;
if (m_has_crc32)
buffer.push_back(HASH_CRC);
if (m_has_sha1)
buffer.push_back(HASH_SHA1);
- return buffer.c_str();
+ return buffer;
}
@@ -190,24 +190,24 @@ bool hash_collection::remove(char type)
// format
//-------------------------------------------------
-const char *hash_collection::internal_string(std::string &buffer) const
+std::string hash_collection::internal_string() const
{
- buffer.clear();
+ std::string buffer;
// handle CRCs
- std::string temp;
if (m_has_crc32) {
buffer.push_back(HASH_CRC);
- buffer.append(m_crc32.as_string(temp));
+ buffer.append(m_crc32.as_string());
}
// handle SHA1s
if (m_has_sha1) {
buffer.push_back(HASH_SHA1);
- buffer.append(m_sha1.as_string(temp));
+ buffer.append(m_sha1.as_string());
}
// append flags
- return buffer.append(m_flags).c_str();
+ buffer.append(m_flags);
+ return buffer;
}
@@ -216,18 +216,17 @@ const char *hash_collection::internal_string(std::string &buffer) const
// flags to a string in the macroized format
//-------------------------------------------------
-const char *hash_collection::macro_string(std::string &buffer) const
+std::string hash_collection::macro_string() const
{
- buffer.clear();
+ std::string buffer;
// handle CRCs
- std::string temp;
if (m_has_crc32)
- buffer.append("CRC(").append(m_crc32.as_string(temp)).append(") ");
+ buffer.append("CRC(").append(m_crc32.as_string()).append(") ");
// handle SHA1s
if (m_has_sha1)
- buffer.append("SHA1(").append(m_sha1.as_string(temp)).append(") ");
+ buffer.append("SHA1(").append(m_sha1.as_string()).append(") ");
// append flags
if (flag(FLAG_NO_DUMP))
@@ -235,7 +234,7 @@ const char *hash_collection::macro_string(std::string &buffer) const
if (flag(FLAG_BAD_DUMP))
buffer.append("BAD_DUMP ");
strtrimspace(buffer);
- return buffer.c_str();
+ return buffer;
}
@@ -244,18 +243,17 @@ const char *hash_collection::macro_string(std::string &buffer) const
// flags to a string in XML attribute format
//-------------------------------------------------
-const char *hash_collection::attribute_string(std::string &buffer) const
+std::string hash_collection::attribute_string() const
{
- buffer.clear();
+ std::string buffer;
// handle CRCs
- std::string temp;
if (m_has_crc32)
- buffer.append("crc=\"").append(m_crc32.as_string(temp)).append("\" ");
+ buffer.append("crc=\"").append(m_crc32.as_string()).append("\" ");
// handle SHA1s
if (m_has_sha1)
- buffer.append("sha1=\"").append(m_sha1.as_string(temp)).append("\" ");
+ buffer.append("sha1=\"").append(m_sha1.as_string()).append("\" ");
// append flags
if (flag(FLAG_NO_DUMP))
@@ -263,7 +261,7 @@ const char *hash_collection::attribute_string(std::string &buffer) const
if (flag(FLAG_BAD_DUMP))
buffer.append("status=\"baddump\"");
strtrimspace(buffer);
- return buffer.c_str();
+ return buffer;
}