diff options
author | nick black | 2012-07-07 17:42:17 +0200 |
---|---|---|
committer | nick black | 2012-07-07 17:42:17 +0200 |
commit | 330ff7edc480b4e897f946c30a2afa38c916b9d0 (patch) | |
tree | 8900a3a7169bbb81e9d486a4c4c501d1e6c06b1d /libblkid | |
parent | properly check for ansi c99 vsnprint truncation (diff) | |
download | kernel-qcow2-util-linux-330ff7edc480b4e897f946c30a2afa38c916b9d0.tar.gz kernel-qcow2-util-linux-330ff7edc480b4e897f946c30a2afa38c916b9d0.tar.xz kernel-qcow2-util-linux-330ff7edc480b4e897f946c30a2afa38c916b9d0.zip |
use memcpy() to cope with possible misalignment
Diffstat (limited to 'libblkid')
-rw-r--r-- | libblkid/src/topology/topology.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/libblkid/src/topology/topology.c b/libblkid/src/topology/topology.c index 5cde18767..02476e502 100644 --- a/libblkid/src/topology/topology.c +++ b/libblkid/src/topology/topology.c @@ -222,14 +222,13 @@ static int topology_set_value(blkid_probe pr, const char *name, return 0; /* ignore zeros */ if (chn->binary) { - unsigned long *v = - (unsigned long *) (chn->data + structoff); - *v = data; + memcpy(chn->data + structoff, &data, sizeof(data)); return 0; } return blkid_probe_sprintf_value(pr, name, "%llu", data); } + /* the topology info is complete when we have at least "minimum_io_size" which * is provided by all blkid topology drivers */ static int topology_is_complete(blkid_probe pr) |