]> git.draconx.ca Git - upkg.git/blobdiff - src/upkg.c
upkg: Improve error reporting during package load.
[upkg.git] / src / upkg.c
index 1e2c6626df66ec041fd941c62515b59f7b679270..19f1449a3e1aa53ab550438c43886d88909ad433 100644 (file)
@@ -336,13 +336,21 @@ int main(int argc, char **argv)
        }
 
        pkg = u_pkg_open(pkgname);
-       if (!pkg) {
-               fprintf(stderr, "failed to open package!\n");
+       if (!pkg || !g_type_module_use(pkg)) {
+               fprintf(stderr, "%s: %s: failed to open package.\n",
+                               progname, pkgname);
                return EXIT_FAILURE;
        }
 
-       if (!g_type_module_use(pkg) || !U_PKG(pkg)->pkg) {
-               fprintf(stderr, "failed to load package: %s\n", pkg->name);
+       if (!U_PKG(pkg)->pkg) {
+               if (u_pkg_is_native(pkg)) {
+                       fprintf(stderr, "%s: %s: not a UObject package.\n",
+                                       progname, pkgname);
+               } else {
+                       fprintf(stderr, "%s: %s: package not found.\n",
+                                       progname, pkgname);
+               }
+
                return EXIT_FAILURE;
        }