From 036a45152e66349ecd118dcc2e51c6346e8f0452 Mon Sep 17 00:00:00 2001 From: Wolfgang Thaller Date: Mon, 20 Jul 2015 03:27:26 +0200 Subject: [PATCH] Rez: don't get confused about ID -1 vs ID 65535 --- ResourceFiles/ResType.h | 10 +++++----- ResourceFiles/ResourceFork.cc | 2 +- ResourceFiles/ResourceFork.h | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ResourceFiles/ResType.h b/ResourceFiles/ResType.h index 0b44d48e75..1134fbc40f 100644 --- a/ResourceFiles/ResType.h +++ b/ResourceFiles/ResType.h @@ -21,15 +21,15 @@ public: std::ostream& operator<<(std::ostream& out, ResType t); -struct ResRef : public std::pair +struct ResRef : public std::pair { - ResRef() : std::pair(ResType(), 0) {} - ResRef(ResType t, int id) : std::pair(t,id) {} + ResRef() : std::pair(ResType(), 0) {} + ResRef(ResType t, int id) : std::pair(t,id) {} ResType& type() { return first; } ResType type() const { return first; } - int& id() { return second; } - int id() const { return second; } + short& id() { return second; } + short id() const { return second; } }; #endif // RESTYPE_H diff --git a/ResourceFiles/ResourceFork.cc b/ResourceFiles/ResourceFork.cc index 7d9ab80f1f..bcaf77a722 100644 --- a/ResourceFiles/ResourceFork.cc +++ b/ResourceFiles/ResourceFork.cc @@ -133,7 +133,7 @@ Resources::Resources(std::istream &in) for(int j = 0; j < nRes; j++) { in.seekg(start + std::streampos(resmapOffset + typeListOffset + refListOffset + j * 12)); - int id = word(in); + int id = (short) word(in); int nameOffset = word(in); int attr = byte(in); int off1 = byte(in); diff --git a/ResourceFiles/ResourceFork.h b/ResourceFiles/ResourceFork.h index 0caebd1891..ece133d6ac 100644 --- a/ResourceFiles/ResourceFork.h +++ b/ResourceFiles/ResourceFork.h @@ -8,7 +8,7 @@ class Resource { ResType type; - int id; + short id; std::string name; std::string data; int attr;