diff options
-rw-r--r-- | polyp/tagstruct.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/polyp/tagstruct.c b/polyp/tagstruct.c index 1e44f8ef..1ff09cd1 100644 --- a/polyp/tagstruct.c +++ b/polyp/tagstruct.c @@ -149,14 +149,15 @@ void pa_tagstruct_put_sample_spec(struct pa_tagstruct *t, const struct pa_sample } void pa_tagstruct_put_arbitrary(struct pa_tagstruct *t, const void *p, size_t length) { + uint32_t tmp; assert(t && p); extend(t, 5+length); t->data[t->length] = TAG_ARBITRARY; + tmp = htonl(length); + memcpy(t->data+t->length+1, &tmp, 4); if (length) memcpy(t->data+t->length+5, p, length); - length = htonl(length); - memcpy(t->data+t->length+1, &length, 4); t->length += 5+length; } |