admin-switch: Don't segfault if there's no remote

Switching between local branches should be supported too.

Signed-off-by: Anton Gerasimov <anton@advancedtelematic.com>

Closes: #683
Approved by: cgwalters
This commit is contained in:
Anton Gerasimov 2017-02-13 17:34:18 +01:00 committed by Atomic Bot
parent e6a8979e05
commit b8f4465b50

View File

@ -53,6 +53,7 @@ ot_admin_builtin_switch (int argc, char **argv, GCancellable *cancellable, GErro
g_autofree char *new_remote = NULL;
g_autofree char *new_ref = NULL;
g_autofree char *new_refspec = NULL;
const char* remote;
glnx_unref_object OstreeSysrootUpgrader *upgrader = NULL;
glnx_unref_object OstreeAsyncProgress *progress = NULL;
gboolean changed;
@ -103,9 +104,14 @@ ot_admin_builtin_switch (int argc, char **argv, GCancellable *cancellable, GErro
}
if (!new_remote)
new_refspec = g_strconcat (origin_remote, ":", new_ref, NULL);
remote = origin_remote;
else
new_refspec = g_strconcat (new_remote, ":", new_ref, NULL);
remote = new_remote;
if (remote)
new_refspec = g_strconcat (remote, ":", new_ref, NULL);
else
new_refspec = g_strdup (new_ref);
if (strcmp (origin_refspec, new_refspec) == 0)
{