summaryrefslogtreecommitdiff
path: root/ext/repo_content.c
diff options
context:
space:
mode:
authorMichael Schroeder <mls@suse.de>2009-07-10 13:03:51 +0200
committerMichael Schroeder <mls@suse.de>2009-07-10 13:03:51 +0200
commit9bbaf91bc428daef376f80a030909546e237b64d (patch)
treeac21a8baa69ff3d0a05b90d6a5276956c71ecc3d /ext/repo_content.c
parentedc78f6bfeef9f9c9984741a94d500ad3d5db9bf (diff)
downloadlibsolv-9bbaf91bc428daef376f80a030909546e237b64d.tar.gz
libsolv-9bbaf91bc428daef376f80a030909546e237b64d.tar.bz2
libsolv-9bbaf91bc428daef376f80a030909546e237b64d.zip
- add repodata_join function to join a solvable block
- make repo_add_repodata smarter - add repodata_create - fix bug in repo_free_solvable block, the repodata was not shrunk - add repodata_shrink function
Diffstat (limited to 'ext/repo_content.c')
-rw-r--r--ext/repo_content.c13
1 files changed, 2 insertions, 11 deletions
diff --git a/ext/repo_content.c b/ext/repo_content.c
index 5d88ca4..5fe8b9b 100644
--- a/ext/repo_content.c
+++ b/ext/repo_content.c
@@ -219,25 +219,16 @@ repo_add_content(Repo *repo, FILE *fp, int flags)
unsigned int numotherarchs = 0;
Id *otherarchs = 0;
- if (!(flags & REPO_REUSE_REPODATA))
- data = repo_add_repodata(repo, 0);
- else
- data = repo_last_repodata(repo);
-
memset(&pd, 0, sizeof(pd));
line = sat_malloc(1024);
aline = 1024;
- if (repo->nrepodata)
- /* use last repodata */
- data = repo->repodata + repo->nrepodata - 1;
- else
- data = repo_add_repodata(repo, 0);
-
pd.repo = repo;
linep = line;
s = 0;
+ data = repo_add_repodata(repo, flags);
+
for (;;)
{
char *key, *value;