aboutsummaryrefslogtreecommitdiffstats
path: root/lib/compiler/src
diff options
context:
space:
mode:
authorGustav Simonsson <[email protected]>2012-02-21 17:31:03 +0100
committerGustav Simonsson <[email protected]>2012-02-21 17:33:48 +0100
commitc53915f5c4e45c84aadfda2cfb7aae56709f1522 (patch)
treebc972f9d525ba6f8c457489f9d336a1d64641a43 /lib/compiler/src
parent520ddbc83ec87bcec262680bd915184182e3998e (diff)
parent34f76104e4ce731f6b2e0969ade5e92e2bfddeae (diff)
downloadotp-c53915f5c4e45c84aadfda2cfb7aae56709f1522.tar.gz
otp-c53915f5c4e45c84aadfda2cfb7aae56709f1522.tar.bz2
otp-c53915f5c4e45c84aadfda2cfb7aae56709f1522.zip
Merge branch 'ks/compile_info-fix' into maint
* ks/compile_info-fix: compiler: Fix discrepancy in compile_info OTP-9917
Diffstat (limited to 'lib/compiler/src')
-rw-r--r--lib/compiler/src/beam_disasm.erl12
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/compiler/src/beam_disasm.erl b/lib/compiler/src/beam_disasm.erl
index 7103d2390f..62bdc74cc8 100644
--- a/lib/compiler/src/beam_disasm.erl
+++ b/lib/compiler/src/beam_disasm.erl
@@ -1,7 +1,7 @@
%%
%% %CopyrightBegin%
%%
-%% Copyright Ericsson AB 2000-2011. All Rights Reserved.
+%% Copyright Ericsson AB 2000-2012. All Rights Reserved.
%%
%% The contents of this file are subject to the Erlang Public License,
%% Version 1.1, (the "License"); you may not use this file except in
@@ -182,10 +182,14 @@ process_chunks(F) ->
Literals = beam_disasm_literals(LiteralBin),
Code = beam_disasm_code(CodeBin, Atoms, mk_imports(ImportsList),
StrBin, Lambdas, Literals, Module),
- Attributes = optional_chunk(F, attributes),
+ Attributes =
+ case optional_chunk(F, attributes) of
+ none -> [];
+ Atts when is_list(Atts) -> Atts
+ end,
CompInfo =
case optional_chunk(F, "CInf") of
- none -> none;
+ none -> [];
CompInfoBin when is_binary(CompInfoBin) ->
binary_to_term(CompInfoBin)
end,
@@ -198,7 +202,7 @@ process_chunks(F) ->
end.
%%-----------------------------------------------------------------------
-%% Retrieve an optional chunk or none if the chunk doesn't exist.
+%% Retrieve an optional chunk or return 'none' if the chunk doesn't exist.
%%-----------------------------------------------------------------------
optional_chunk(F, ChunkTag) ->