]> git.draconx.ca Git - upkg.git/commitdiff
upkg: Don't crash if the specified package does not exist.
authorNick Bowler <nbowler@draconx.ca>
Wed, 3 Feb 2010 02:50:39 +0000 (21:50 -0500)
committerNick Bowler <nbowler@draconx.ca>
Wed, 3 Feb 2010 02:50:39 +0000 (21:50 -0500)
Currently, g_type_module_use(pkg) will succeed even if the package does
not exist, due to the existence of shared-object-only packages.  So the
caller must look inside the UPkg structure to see if anything was
actually opened.  In the future, pending tools to create the things,
such packages probably won't exist and this hack can be removed.

src/upkg.c

index 191444ecd58755f43b3fca74bebc1a534fd96ed1..1e2c6626df66ec041fd941c62515b59f7b679270 100644 (file)
@@ -341,7 +341,7 @@ int main(int argc, char **argv)
                return EXIT_FAILURE;
        }
 
-       if (!g_type_module_use(pkg)) {
+       if (!g_type_module_use(pkg) || !U_PKG(pkg)->pkg) {
                fprintf(stderr, "failed to load package: %s\n", pkg->name);
                return EXIT_FAILURE;
        }