X-Git-Url: http://git.draconx.ca/gitweb/upkg.git/blobdiff_plain/9d3cb178db367962f68521985ef9e239e1d03fa9..6637b91cdb7b3d3e923f3d72e36be07e9009e7e8:/src/upkg.c diff --git a/src/upkg.c b/src/upkg.c index a7e96bf..8c26d27 100644 --- a/src/upkg.c +++ b/src/upkg.c @@ -23,9 +23,8 @@ #include "upkg.h" #include "module.h" -#include "serializable.h" +#include "uobject.h" #include "exportable.h" -#include "music.h" void print_upkg_flags(const char *prefix, unsigned long flags) { @@ -88,15 +87,17 @@ int main(int argc, char **argv) printf("Exports: %lu\n", pkg->export_count); printf("Imports: %lu\n", pkg->import_count); - GObject *music = u_music_new(); + GObject *music = g_object_new(module_get_class("Engine", "Music"), NULL); + if (!music) + return EXIT_FAILURE; struct upkg_file *f = upkg_export_open(pkg, 0); - upkg_deserialize(music, f); + u_object_deserialize(music, f); char name[256]; - upkg_export_name(music, name, sizeof name); + u_object_export_name(music, name, sizeof name); FILE *fp = fopen(name, "wb"); if (!fp) return EXIT_FAILURE; - upkg_export(music, fp); + u_object_export(music, fp); fclose(fp); printf("Wrote %s\n", name);