summaryrefslogtreecommitdiff
path: root/src/libvdpau/nal.c
diff options
context:
space:
mode:
authorJulian Scheel <julian@jusst.de>2008-12-15 15:03:14 +0000
committerJulian Scheel <julian@jusst.de>2008-12-15 15:03:14 +0000
commitdd0712cc351add6f93b07a122e40ce4c842591a2 (patch)
tree716419301dd84508252603774bbfe48c02612f1b /src/libvdpau/nal.c
parentc3c01b015a95a367b2bc975132f97038e5e1b71c (diff)
downloadxine-lib-dd0712cc351add6f93b07a122e40ce4c842591a2.tar.gz
xine-lib-dd0712cc351add6f93b07a122e40ce4c842591a2.tar.bz2
Fix reordering.
Diffstat (limited to 'src/libvdpau/nal.c')
-rw-r--r--src/libvdpau/nal.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/libvdpau/nal.c b/src/libvdpau/nal.c
index 0964c446e..366aefd4e 100644
--- a/src/libvdpau/nal.c
+++ b/src/libvdpau/nal.c
@@ -43,9 +43,14 @@ void copy_nal_unit(struct nal_unit *dest, struct nal_unit *src)
xine_fast_memcpy(dest, src, size);
- dest->sps = malloc(sizeof(struct seq_parameter_set_rbsp));
- dest->pps = malloc(sizeof(struct pic_parameter_set_rbsp));
- dest->slc = malloc(sizeof(struct slice_header));
+ if(!dest->sps)
+ dest->sps = malloc(sizeof(struct seq_parameter_set_rbsp));
+
+ if(!dest->pps)
+ dest->pps = malloc(sizeof(struct pic_parameter_set_rbsp));
+
+ if(!dest->slc)
+ dest->slc = malloc(sizeof(struct slice_header));
xine_fast_memcpy(dest->sps, src->sps, sizeof(struct seq_parameter_set_rbsp));
xine_fast_memcpy(dest->pps, src->pps, sizeof(struct pic_parameter_set_rbsp));