aboutsummaryrefslogtreecommitdiff
path: root/Source/Modules/contract.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Modules/contract.cxx')
-rw-r--r--Source/Modules/contract.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/Source/Modules/contract.cxx b/Source/Modules/contract.cxx
index ffd799cfd..7e0eaf9e0 100644
--- a/Source/Modules/contract.cxx
+++ b/Source/Modules/contract.cxx
@@ -342,11 +342,13 @@ int Contracts::namespaceDeclaration(Node *n) {
int Contracts::classDeclaration(Node *n) {
int ret = SWIG_OK;
+ int oldInClass = InClass;
+ Node *oldClass = CurrentClass;
InClass = 1;
CurrentClass = n;
emit_children(n);
- InClass = 0;
- CurrentClass = 0;
+ InClass = oldInClass;
+ CurrentClass = oldClass;
return ret;
}