aboutsummaryrefslogtreecommitdiffstats
path: root/lib/dialyzer/src
diff options
context:
space:
mode:
authorStavros Aronis <[email protected]>2012-09-05 18:25:48 +0200
committerStavros Aronis <[email protected]>2012-09-26 11:06:43 +0200
commit5e766039bb990ac17a9559301ad1599e250bf9e7 (patch)
tree4cb107d4f12ee360332c330d4b0367c757f49ca8 /lib/dialyzer/src
parentfc17b0ed2bc905b51ed4c4ea5f13efd866bc4f80 (diff)
downloadotp-5e766039bb990ac17a9559301ad1599e250bf9e7.tar.gz
otp-5e766039bb990ac17a9559301ad1599e250bf9e7.tar.bz2
otp-5e766039bb990ac17a9559301ad1599e250bf9e7.zip
Fix a crash in race condition detection
Analysis is not always able to find the variable labels and names for any kind of arguments passed to the ets module functions.
Diffstat (limited to 'lib/dialyzer/src')
-rw-r--r--lib/dialyzer/src/dialyzer_races.erl5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/dialyzer/src/dialyzer_races.erl b/lib/dialyzer/src/dialyzer_races.erl
index cdb9f25999..2aa8343bce 100644
--- a/lib/dialyzer/src/dialyzer_races.erl
+++ b/lib/dialyzer/src/dialyzer_races.erl
@@ -1758,7 +1758,10 @@ compare_var_list(Var, VarList, RaceVarMap) ->
ets_list_args(MaybeList) ->
case is_list(MaybeList) of
- true -> [ets_tuple_args(T) || T <- MaybeList];
+ true ->
+ try [ets_tuple_args(T) || T <- MaybeList]
+ catch _:_ -> [?no_label]
+ end;
false -> [ets_tuple_args(MaybeList)]
end.