Blob Blame History Raw
 WHATS_NEW                  | 4 ++++
 lib/activate/dev_manager.c | 6 +++---
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/WHATS_NEW b/WHATS_NEW
index bf2972f..9027139 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,3 +1,7 @@
+Version 2.02.151 -
+=================================
+  Fix error path after reusing of _setup_task (2.02.150).
+
 Version 2.02.150 - 9th April 2016
 =================================
   Avoid using flushing dm status ioctl when checking for usable DM device.
diff --git a/lib/activate/dev_manager.c b/lib/activate/dev_manager.c
index 3f91654..2a5dbcc 100644
--- a/lib/activate/dev_manager.c
+++ b/lib/activate/dev_manager.c
@@ -381,7 +381,7 @@ static int _device_is_suspended(int major, int minor)
 
 	if (!(dmt = _setup_task(NULL, NULL, NULL, DM_DEVICE_INFO,
 				major, minor, 0)))
-		goto_out;
+		return_0;
 
 	if (!dm_task_run(dmt) ||
 	    !dm_task_get_info(dmt, &info)) {
@@ -406,7 +406,7 @@ static int _ignore_suspended_snapshot_component(struct device *dev)
 
 	if (!(dmt = _setup_task(NULL, NULL, NULL, DM_DEVICE_TABLE,
 				MAJOR(dev->dev), MINOR(dev->dev), 0)))
-		goto_out;
+		return_0;
 
 	if (!dm_task_run(dmt)) {
 		log_error("Failed to get state of snapshot or snapshot origin device");
@@ -529,7 +529,7 @@ int device_is_usable(struct device *dev, struct dev_usable_check_params check)
 
 	if (!(dmt = _setup_task(NULL, NULL, NULL, DM_DEVICE_STATUS,
 				MAJOR(dev->dev), MINOR(dev->dev), 0)))
-		goto_out;
+		return_0;
 
 	/* Non-blocking status read */
 	if (!dm_task_no_flush(dmt))