diff options
author | Marcel Telka <[email protected]> | 2013-08-15 22:33:42 -0400 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2013-11-05 12:24:10 -0800 |
commit | 8ce0af07bb3227c152d32e74683d1fdc1869246c (patch) | |
tree | b9bdb797fa75c7c9e3473135bca94e696a4a46c3 | |
parent | b663a23d36d805dd5e9d1b4663dbf5966944002d (diff) |
Illumos #4061
4061 libzfs: memory leak in iter_dependents_cb()
Reviewed by: Jeffry Molanus <[email protected]>
Reviewed by: Boris Protopopov <[email protected]>
Reviewed by: Andy Stormont <[email protected]>
Reviewed by: Matthew Ahrens <[email protected]>
Approved by: Dan McDonald <[email protected]>
References:
https://www.illumos.org/issues/4061
illumos/illumos-gate@2fbdf8dbf01ec1c85fcd3827cdf9e9f5f46c4c8a
Ported-by: Richard Yao <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Issue #1775
-rw-r--r-- | lib/libzfs/libzfs_iter.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/libzfs/libzfs_iter.c b/lib/libzfs/libzfs_iter.c index 3d8bc5e14..e527bdcc5 100644 --- a/lib/libzfs/libzfs_iter.c +++ b/lib/libzfs/libzfs_iter.c @@ -21,8 +21,8 @@ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright 2010 Nexenta Systems, Inc. All rights reserved. * Copyright (c) 2012 by Delphix. All rights reserved. + * Copyright 2013 Nexenta Systems, Inc. All rights reserved. */ #include <stdio.h> @@ -449,8 +449,12 @@ iter_dependents_cb(zfs_handle_t *zhp, void *arg) iter_dependents_cb, ida); ida->stack = isf.next; } + if (!first && err == 0) err = ida->func(zhp, ida->data); + else + zfs_close(zhp); + return (err); } |