[Scummvm-git-logs] scummvm master -> 76c6bcef2be788d01478d520bebc0c501d31e6d2
sev-
sev at scummvm.org
Tue Jun 29 20:12:36 UTC 2021
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
76c6bcef2b Revert "COMMON: Add an optional parameter to tag2str() for printing non-printables"
Commit: 76c6bcef2be788d01478d520bebc0c501d31e6d2
https://github.com/scummvm/scummvm/commit/76c6bcef2be788d01478d520bebc0c501d31e6d2
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2021-06-29T22:12:25+02:00
Commit Message:
Revert "COMMON: Add an optional parameter to tag2str() for printing non-printables"
This reverts commit c11fedb47e82da56b193a24222816addae13df1c.
It is a C++11 feature...
Changed paths:
common/str.cpp
common/str.h
diff --git a/common/str.cpp b/common/str.cpp
index 06876598de..fbd9a03744 100644
--- a/common/str.cpp
+++ b/common/str.cpp
@@ -689,24 +689,19 @@ void replace(Common::String &source, const Common::String &what, const Common::S
}
}
-String tag2string(uint32 tag, bool nonPrintable) {
- Common::String res;
-
- for (int i = 3; i >= 0; i--) {
- byte b = (tag >> (8 * i)) & 0xff;
-
- if (!Common::isPrint(b)) {
- if (nonPrintable) {
- res += Common::String::format("\\%03o", b);
- } else {
- res += '.';
- }
- } else {
- res += b;
- }
+String tag2string(uint32 tag) {
+ char str[5];
+ str[0] = (char)(tag >> 24);
+ str[1] = (char)(tag >> 16);
+ str[2] = (char)(tag >> 8);
+ str[3] = (char)tag;
+ str[4] = '\0';
+ // Replace non-printable chars by dot
+ for (int i = 0; i < 4; ++i) {
+ if (!Common::isPrint(str[i]))
+ str[i] = '.';
}
-
- return res;
+ return String(str);
}
#endif
diff --git a/common/str.h b/common/str.h
index b354919f86..8ad41d92e1 100644
--- a/common/str.h
+++ b/common/str.h
@@ -349,11 +349,8 @@ void replace(Common::String &source, const Common::String &what, const Common::S
* Take a 32 bit value and turn it into a four character string, where each of
* the four bytes is turned into one character. Most significant byte is printed
* first.
- *
- * @param tag tag value to convert
- * @param nonPrintable indicate if non-printable characters need to be printed as octals
*/
-String tag2string(uint32 tag, bool nonPrintable = false);
+String tag2string(uint32 tag);
/**
* Copy up to size - 1 characters from src to dst and also zero terminate the
@@ -408,7 +405,7 @@ size_t strnlen(const char *src, size_t maxSize);
* Note: It is *NOT* safe to do anything with the return value other than directly
* copying or printing it.
*/
-#define tag2str(...) Common::tag2string(__VA_ARGS__).c_str()
+#define tag2str(x) Common::tag2string(x).c_str()
/**
* Converts string with all non-printable characters properly escaped
More information about the Scummvm-git-logs
mailing list