libadmin: Clear structures according to their size.
authorSimon Wilkinson <sxw@your-file-system.com>
Fri, 30 Mar 2012 18:16:50 +0000 (19:16 +0100)
committerDerrick Brashear <shadow@dementix.org>
Sat, 7 Apr 2012 12:07:00 +0000 (05:07 -0700)
memset(a, 0, sizeof(a)) is rarely correct, unless a is an error. Use the
size of the destination structure, rather than the size of a pointer to it
when deciding how much memory to clear.

Caught by clang's new error messages

Change-Id: Ia6c566534efae2f67f1b9bd22198d352238a987c
Reviewed-on: http://gerrit.openafs.org/7076
Reviewed-by: Derrick Brashear <shadow@dementix.org>
Tested-by: Derrick Brashear <shadow@dementix.org>

src/libadmin/vos/afs_vosAdmin.c

index 934e5eb..80846fd 100644 (file)
@@ -3496,7 +3496,7 @@ copyvolintXInfo(struct volintXInfo *source, vos_volumeEntry_p dest,
      * user from seeing stale data from a previous call
      */
 
-    memset(dest, 0, sizeof(dest));
+    memset(dest, 0, sizeof(*dest));
 
     switch (source->status) {
     case VOK: