Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'extraplugins')
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.codegen/src/org/eclipse/papyrus/cpp/codegen/utils/CppGenUtils.java12
1 files changed, 6 insertions, 6 deletions
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.codegen/src/org/eclipse/papyrus/cpp/codegen/utils/CppGenUtils.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.codegen/src/org/eclipse/papyrus/cpp/codegen/utils/CppGenUtils.java
index 42d87d5fd4d..807effc4dc1 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.codegen/src/org/eclipse/papyrus/cpp/codegen/utils/CppGenUtils.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.codegen/src/org/eclipse/papyrus/cpp/codegen/utils/CppGenUtils.java
@@ -296,7 +296,6 @@ public class CppGenUtils {
private static Namespace currentNS;
- private static boolean visibilityStale = false;
private static VisibilityKind currVisibility = null;
private static final Pattern EmptySectionRegex = Pattern.compile("^\\s*$"); //$NON-NLS-1$
@@ -306,7 +305,6 @@ public class CppGenUtils {
*/
public static void resetVisibility(VisibilityKind v) {
currVisibility = v;
- visibilityStale = false;
}
/**
@@ -314,9 +312,11 @@ public class CppGenUtils {
* the previously declared visibility (if appropriate). Ignore empty content.
*/
public static String getSection(VisibilityKind visibility, String content) {
+ // Bug 425208: Don't update the visibility until we know for sure that it
+ // will be written to the output.
+ VisibilityKind newVisibility = null;
if (!visibility.equals(currVisibility)) {
- currVisibility = visibility;
- visibilityStale = true;
+ newVisibility = visibility;
}
// Filter out empty sections.
@@ -326,11 +326,11 @@ public class CppGenUtils {
}
// Don't write duplicate visibility modifiers.
- if (!visibilityStale) {
+ if (newVisibility == null) {
return content;
}
- visibilityStale = false;
+ currVisibility = newVisibility;
return currVisibility.toString() + ":\n" + content; //$NON-NLS-1$
}
}

Back to the top