From d9050f29b4b43bc98dc390d99a412114863c2109 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Thu, 31 Jan 2013 18:02:05 +0100 Subject: [PATCH] fix restoring expanded state for custom folding regions (WEB-6246 or maybe not) --- .../codeInsight/folding/impl/DocumentFoldingInfo.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/DocumentFoldingInfo.java b/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/DocumentFoldingInfo.java index 6f4f7d5c70ac..e209838afb33 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/DocumentFoldingInfo.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/DocumentFoldingInfo.java @@ -134,16 +134,17 @@ class DocumentFoldingInfo implements JDOMExternalizable, CodeFoldingState { continue; } FoldRegion region = FoldingUtil.findFoldRegion(editor, marker.getStartOffset(), marker.getEndOffset()); + FoldingInfo info = marker.getUserData(FOLDING_INFO_KEY); if (region == null) { - FoldingInfo info = marker.getUserData(FOLDING_INFO_KEY); - region = editor.getFoldingModel().addFoldRegion(marker.getStartOffset(), marker.getEndOffset(), info.placeHolder); + if (info != null) { + region = editor.getFoldingModel().addFoldRegion(marker.getStartOffset(), marker.getEndOffset(), info.placeHolder); + } if (region == null) { return; } } - FoldingInfo fi = region.getUserData(FOLDING_INFO_KEY); - boolean state = fi != null && fi.expanded; + boolean state = info != null && info.expanded; region.setExpanded(state); } }