Some fixes
authorTomas Mlcoch <tmlcoch@redhat.com>
Wed, 15 Feb 2012 10:01:49 +0000 (11:01 +0100)
committerTomas Mlcoch <tmlcoch@redhat.com>
Wed, 15 Feb 2012 10:01:49 +0000 (11:01 +0100)
Makefile
main.c
repomd.c

index 632dad7..89eedb0 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -144,8 +144,8 @@ repomd_test_01: repomd.o
 
 # Main
 
-main: parsepkg.o parsehdr.o package.o xml_dump.o xml_dump_primary.o xml_dump_filelists.o xml_dump_other.o misc.o load_metadata_2.o
-       gcc $(LINKFLAGS) $(CFLAGS) parsepkg.o parsehdr.o package.o xml_dump.o xml_dump_primary.o xml_dump_filelists.o xml_dump_other.o misc.o load_metadata_2.o main.c -o main
+main: parsepkg.o parsehdr.o package.o xml_dump.o xml_dump_primary.o xml_dump_filelists.o xml_dump_other.o misc.o load_metadata_2.o repomd.o
+       gcc $(LINKFLAGS) $(CFLAGS) parsepkg.o parsehdr.o package.o xml_dump.o xml_dump_primary.o xml_dump_filelists.o xml_dump_other.o misc.o repomd.o load_metadata_2.o main.c -o main
 
 
 clean:
diff --git a/main.c b/main.c
index 81770ea..5ec24bf 100644 (file)
--- a/main.c
+++ b/main.c
@@ -556,7 +556,7 @@ int main(int argc, char **argv) {
             out_dir[i+1] = '/';
         }
 
-        out_repo = g_strconcat(cmd_options.outputdir, "repodata/", NULL);
+        out_repo = g_strconcat(out_dir, "repodata/", NULL);
     } else {
         out_dir  = g_strdup(in_dir);
         out_repo = g_strdup(in_repo);
index d664c28..a01c660 100644 (file)
--- a/repomd.c
+++ b/repomd.c
@@ -13,6 +13,9 @@
 #define GZ_BUFFER_SIZE   131072  // 1024*128
 
 
+#define RPM_NS          "http://linux.duke.edu/metadata/rpm"
+#define XMLNS_NS        "http://linux.duke.edu/metadata/repo"
+
 
 typedef struct _contentStat {
     char *checksum;
@@ -249,7 +252,7 @@ char *repomd_xml_dump(long revision, repomdData *pri_xml, repomdData *fil_xml, r
 
     int rc;
 
-    rc = xmlTextWriterStartDocument(writer, NULL, NULL, NULL);
+    rc = xmlTextWriterStartDocument(writer, NULL, "UTF-8", NULL);
     if (rc < 0) {
         g_critical("Error at xmlTextWriterStartDocument\n");
         return NULL;
@@ -260,6 +263,8 @@ char *repomd_xml_dump(long revision, repomdData *pri_xml, repomdData *fil_xml, r
         g_critical("Error at xmlTextWriterStartElement repomd\n");
         return NULL;
     }
+    xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns:rpm", RPM_NS);
+    xmlTextWriterWriteAttribute(writer, BAD_CAST "xmlns", XMLNS_NS);
 
     rc = xmlTextWriterStartElement(writer, BAD_CAST "revision");
     if (rc < 0) {