summaryrefslogtreecommitdiffstats
path: root/courgette/ensemble.cc
diff options
context:
space:
mode:
authorlaforge@chromium.org <laforge@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-15 17:33:46 +0000
committerlaforge@chromium.org <laforge@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-15 17:33:46 +0000
commit7e6b9261d9c928e09c7445f880f2ce10efee8a20 (patch)
tree95190aa9ee4e9e3a7bfa7ae719b991ebeed8a366 /courgette/ensemble.cc
parent910d7302e8e6e8225cb2590bb27b4aa040758e6a (diff)
downloadchromium_src-7e6b9261d9c928e09c7445f880f2ce10efee8a20.zip
chromium_src-7e6b9261d9c928e09c7445f880f2ce10efee8a20.tar.gz
chromium_src-7e6b9261d9c928e09c7445f880f2ce10efee8a20.tar.bz2
Fix for bug where 64-bit executables were processed as 32-bit executables.
Added some more logging. TBR=sra Review URL: http://codereview.chromium.org/988002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41598 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'courgette/ensemble.cc')
-rw-r--r--courgette/ensemble.cc15
1 files changed, 9 insertions, 6 deletions
diff --git a/courgette/ensemble.cc b/courgette/ensemble.cc
index 15bfb3e..a9b7f38 100644
--- a/courgette/ensemble.cc
+++ b/courgette/ensemble.cc
@@ -63,12 +63,15 @@ Status Ensemble::FindEmbeddedElements() {
Region region(start + position, info->length());
if (info->has_text_section()) {
- Element* element = new ElementWinPE(Element::WIN32_X86_WITH_CODE,
- this, region, info);
- owned_elements_.push_back(element);
- elements_.push_back(element);
- position += region.length();
- continue;
+ if (info->is_32bit()) {
+ Element* element = new ElementWinPE(Element::WIN32_X86_WITH_CODE,
+ this, region, info);
+ owned_elements_.push_back(element);
+ elements_.push_back(element);
+ position += region.length();
+ continue;
+ }
+ // TODO(sra): Extend to 64-bit executables.
}
// If we had a clever transformation for resource-only executables we