2010/12/14 Eric Blake <[email protected]>: > On 12/06/2010 01:42 PM, Matthias Bolte wrote: >> --- >> src/esx/esx_storage_driver.c | 198 >> +++++++++++++++++++++++++++++++++++++++- >> src/esx/esx_vi_generator.input | 11 ++ >> 2 files changed, 208 insertions(+), 1 deletions(-) > > ACK. Looks clean; but maybe one suggestion if you want: > >> + char *key = NULL; > >> + if (priv->primary->hasQueryVirtualDiskUuid) { >> + if (VIR_ALLOC_N(key, VIR_UUID_STRING_BUFLEN) < 0) { >> + virReportOOMError(); >> + goto cleanup; >> + } > > VIR_UUID_STRING_BUFLEN is small enough that you can stack-allocate key, > and avoid one place of malloc() failure: > > char key[VIR_UUID_STRING_BUFLEN]; > > Up to you if you want to make that change, or check in as-is. >
Yes, if you only look at the if branch then stack allocating the key makes sense, but when you look at the else branch you'll see that the key can also be a copy of the datastore path. In that case a stack allocated key might be a bad idea if the path is longer than VIR_UUID_STRING_BUFLEN - 1. Pushing it unchanged. Thanks. Matthias -- libvir-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/libvir-list
