summaryrefslogtreecommitdiffstats
path: root/src/server/utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/utils.c')
-rw-r--r--src/server/utils.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/server/utils.c b/src/server/utils.c
index 8acb8cc..c91142e 100644
--- a/src/server/utils.c
+++ b/src/server/utils.c
@@ -154,15 +154,18 @@ int dnbd3_add_image(dnbd3_image_t *image, char *file)
fclose (f);
dnbd3_image_t* tmp = dnbd3_get_image(image->vid, image->rid);
- if (tmp && image->rid != 0)
+ if (image->rid == 0)
+ {
+ if(tmp)
+ image->rid = tmp->rid +1;
+ else
+ image->rid = 1;
+ } else if (tmp)
{
printf("ERROR: Image already exists (%d,%d)\n", image->vid, image->rid);
return ERROR_IMAGE_ALREADY_EXISTS;
}
- if (tmp && image->rid == 0)
- image->rid = tmp->rid +1;
-
GKeyFile* gkf;
gkf = g_key_file_new();
if (!g_key_file_load_from_file(gkf, file, G_KEY_FILE_NONE, NULL))