aboutsummaryrefslogtreecommitdiff
path: root/gui/debugger.cpp
diff options
context:
space:
mode:
authorTorbjörn Andersson2014-09-07 18:50:51 +0200
committerTorbjörn Andersson2014-09-07 18:50:51 +0200
commit14ce84da9aec30aa89505f40d16e06df0b6725e4 (patch)
tree9eec270aa90bdbb2c69bfb25241b7b67bb36dec6 /gui/debugger.cpp
parent37aa4c2d5955f7558bb06e89e50f017d6a87eac6 (diff)
downloadscummvm-rg350-14ce84da9aec30aa89505f40d16e06df0b6725e4.tar.gz
scummvm-rg350-14ce84da9aec30aa89505f40d16e06df0b6725e4.tar.bz2
scummvm-rg350-14ce84da9aec30aa89505f40d16e06df0b6725e4.zip
DEBUGGER: Let "md5mac" print the MD5 sum of both resource and data
Diffstat (limited to 'gui/debugger.cpp')
-rw-r--r--gui/debugger.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/gui/debugger.cpp b/gui/debugger.cpp
index 48acda17ad..560e516a94 100644
--- a/gui/debugger.cpp
+++ b/gui/debugger.cpp
@@ -559,11 +559,19 @@ bool Debugger::cmdMd5Mac(int argc, const char **argv) {
if (!macResMan.open(filename)) {
debugPrintf("Resource file '%s' not found\n", filename.c_str());
} else {
- Common::String md5 = macResMan.computeResForkMD5AsString(0);
- if (md5.empty()) {
- debugPrintf("'%s' has no resource fork\n", filename.c_str());
+ if (!macResMan.hasResFork() && !macResMan.hasDataFork()) {
+ debugPrintf("'%s' has neither data not resource fork\n", macResMan.getBaseFileName().c_str());
} else {
- debugPrintf("%s %s\n", md5.c_str(), macResMan.getBaseFileName().c_str());
+ // The resource fork is probably the most relevant one.
+ if (macResMan.hasResFork()) {
+ Common::String md5 = macResMan.computeResForkMD5AsString(0);
+ debugPrintf("%s %s (resource)\n", md5.c_str(), macResMan.getBaseFileName().c_str());
+ }
+ if (macResMan.hasDataFork()) {
+ Common::ReadStream *stream = macResMan.getDataFork();
+ Common::String md5 = Common::computeStreamMD5AsString(*stream, 0);
+ debugPrintf("%s %s (data)\n", md5.c_str(), macResMan.getBaseFileName().c_str());
+ }
}
macResMan.close();
}