From fdb39122a12686ade08ff71ab1309520d6ee19ad Mon Sep 17 00:00:00 2001 From: Aleksei Efimov Date: Mon, 17 Nov 2014 14:11:08 +0300 Subject: [PATCH] 8064914: tzdb.dat compilation failure when using tzdata2014j Reviewed-by: sherman, coffeys --- .../build/tools/tzdb/TzdbZoneRulesProvider.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/jdk/make/src/classes/build/tools/tzdb/TzdbZoneRulesProvider.java b/jdk/make/src/classes/build/tools/tzdb/TzdbZoneRulesProvider.java index 220de9276c7..a59ce61eff9 100644 --- a/jdk/make/src/classes/build/tools/tzdb/TzdbZoneRulesProvider.java +++ b/jdk/make/src/classes/build/tools/tzdb/TzdbZoneRulesProvider.java @@ -95,7 +95,17 @@ class TzdbZoneRulesProvider { obj = zones.get(zoneId); } if (obj == null) { - throw new ZoneRulesException("Unknown time-zone ID: " + zoneId0); + // Timezone link can be located in 'backward' file and it + // can refer to another link, so we need to check for + // link one more time, before throwing an exception + String zoneIdBack = zoneId; + if (links.containsKey(zoneId)) { + zoneId = links.get(zoneId); + obj = zones.get(zoneId); + } + if (obj == null) { + throw new ZoneRulesException("Unknown time-zone ID: " + zoneIdBack); + } } } if (obj instanceof ZoneRules) {