
On 10/19/2009 05:28 PM, Dave Allan wrote:
Cole Robinson wrote:
Certain error paths won't unlock the node device object.
Signed-off-by: Cole Robinson <crobinso@redhat.com> --- src/node_device/node_device_driver.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/src/node_device/node_device_driver.c b/src/node_device/node_device_driver.c index 14b3098..21a4c8d 100644 --- a/src/node_device/node_device_driver.c +++ b/src/node_device/node_device_driver.c @@ -720,6 +720,8 @@ nodeDeviceDestroy(virNodeDevicePtr dev) }
out: + if (obj) + virNodeDeviceObjUnlock(obj); VIR_FREE(parent_name); VIR_FREE(wwnn); VIR_FREE(wwpn);
ACK to this patch. I think this way to do the unlock in the error case is correct. (I don't agree with Matthias' comment. As the code stands now, either way will work, but this way protects against problems in code that is added in the future.)
I agree, more future proof, and follows the same conventions of the other code in node_device_driver.c I've pushed this change now. Thanks, Cole