pull-local: Don't call g_hash_table_init() on a NULL hash

Not sure why this wasn't crashing before.
This commit is contained in:
Colin Walters 2013-02-23 11:15:19 -05:00
parent a821420711
commit 99fe7b66b3
1 changed files with 17 additions and 11 deletions

View File

@ -241,22 +241,28 @@ ostree_builtin_pull_local (int argc, char **argv, GFile *repo_path, GError **err
source_objects = ostree_traverse_new_reachable (); source_objects = ostree_traverse_new_reachable ();
g_hash_table_iter_init (&hash_iter, refs_to_clone); if (refs_to_clone)
while (g_hash_table_iter_next (&hash_iter, &key, &value))
{ {
const char *checksum = value; g_hash_table_iter_init (&hash_iter, refs_to_clone);
while (g_hash_table_iter_next (&hash_iter, &key, &value))
if (!ostree_traverse_commit (data->src_repo, checksum, 0, source_objects, cancellable, error)) {
goto out; const char *checksum = value;
if (!ostree_traverse_commit (data->src_repo, checksum, 0, source_objects, cancellable, error))
goto out;
}
} }
g_hash_table_iter_init (&hash_iter, commits_to_clone); if (commits_to_clone)
while (g_hash_table_iter_next (&hash_iter, &key, &value))
{ {
const char *checksum = key; g_hash_table_iter_init (&hash_iter, commits_to_clone);
while (g_hash_table_iter_next (&hash_iter, &key, &value))
{
const char *checksum = key;
if (!ostree_traverse_commit (data->src_repo, checksum, 0, source_objects, cancellable, error)) if (!ostree_traverse_commit (data->src_repo, checksum, 0, source_objects, cancellable, error))
goto out; goto out;
}
} }
if (!ostree_repo_prepare_transaction (data->dest_repo, FALSE, cancellable, error)) if (!ostree_repo_prepare_transaction (data->dest_repo, FALSE, cancellable, error))