From: Rafał Miłecki Date: Fri, 16 Feb 2018 11:50:24 +0000 (+0100) Subject: mount: reorder deleting code in the mount_enum_drives() X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=e77dc6d122ea398e319c8cc310077deb4b096362;p=oweals%2Fmountd.git mount: reorder deleting code in the mount_enum_drives() Make it execute required unmount code first and then take care of removing entry from the internal list. This is a small cleanup grouping code by their purpose. Signed-off-by: Rafał Miłecki --- diff --git a/mount.c b/mount.c index f2c15a0..b488ede 100644 --- a/mount.c +++ b/mount.c @@ -757,16 +757,18 @@ static void mount_enum_drives(void) if(!check_block(q->dev)||del) { mount_dev_del(q); - p->prev->next = p->next; - p->next->prev = p->prev; - p = p->next; if (q->status == STATUS_MOUNTED || q->status == STATUS_EXPIRED) { snprintf(tmp, 64, "%s%s", uci_path, q->name); log_printf("unlinking %s\n", tmp); unlink(tmp); system_printf("ACTION=remove DEVICE=%s NAME=%s /sbin/hotplug-call mount", q->dev, q->name); } + + p->prev->next = p->next; + p->next->prev = p->prev; + p = p->next; free(q); + mount_dump_uci_state(); system_printf("/etc/fonstated/ReloadSamba"); } else p = p->next;