]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
valadoc: Create and register current Vala.CodeContext properly
authorRico Tzschichholz <ricotz@ubuntu.com>
Fri, 13 Mar 2020 18:30:32 +0000 (19:30 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Tue, 24 Mar 2020 08:50:25 +0000 (09:50 +0100)
valadoc/tests/drivers/generic-api-test.vala
valadoc/treebuilder.vala
valadoc/valadoc.vala

index 5a81fb845ddb02ada1641aa4c2d6b892ca17ad19..ebfd543f2ce473f98a2109e8a3fac0f23e07e0a5 100644 (file)
@@ -2926,6 +2926,8 @@ public static void test_driver () {
        settings.pkg_name = "out";
        settings.path = "out";
 
+       var context = new Vala.CodeContext ();
+       Vala.CodeContext.push (context);
 
        TreeBuilder builder = new TreeBuilder ();
        Api.Tree? doctree = builder.build (settings, reporter);
@@ -2971,6 +2973,8 @@ public static void test_driver () {
        assert (glib == true);
        assert (gobj == true);
        assert (test == true);
+
+       Vala.CodeContext.pop ();
 }
 
 
index 257c8031c9bec53ea5a6c8ae4d74017cce4e77b3..ed89016d4e4911d72d32d9763921bc62b60baa02 100644 (file)
@@ -984,8 +984,7 @@ public class Valadoc.TreeBuilder : Vala.CodeVisitor {
                this.settings = settings;
                this.reporter = reporter;
 
-               var context = new Vala.CodeContext ();
-               Vala.CodeContext.push (context);
+               var context = Vala.CodeContext.get ();
 
                this.tree = new Api.Tree (reporter, settings, context);
                create_valac_tree (context, settings);
@@ -1007,8 +1006,6 @@ public class Valadoc.TreeBuilder : Vala.CodeVisitor {
 
                context.accept(this);
 
-               Vala.CodeContext.pop ();
-
                return (reporter.errors == 0)? tree : null;
        }
 }
index 2bb6558f942a74bbf97fa5571c1f23d2a1bdb7d4..87695b1e69cb0c9a3ec0a3dc6878317007e4f00e 100644 (file)
@@ -131,9 +131,11 @@ public class ValaDoc : Object {
        private static int quit (ErrorReporter reporter) {
                if (reporter.errors == 0 && (!fatal_warnings || reporter.warnings == 0)) {
                        stdout.printf ("Succeeded - %d warning(s)\n", reporter.warnings);
+                       Vala.CodeContext.pop ();
                        return 0;
                } else {
                        stdout.printf ("Failed: %d error(s), %d warning(s)\n", reporter.errors, reporter.warnings);
+                       Vala.CodeContext.pop ();
                        return 1;
                }
        }
@@ -231,6 +233,8 @@ public class ValaDoc : Object {
 
                settings.alternative_resource_dirs = alternative_resource_dirs;
 
+               var context = new Vala.CodeContext ();
+               Vala.CodeContext.push (context);
 
                // load plugins:
                Doclet? doclet = null;