From a20e095b1fffb6d690609c924d03cafedbbce8f3 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Wed, 25 Nov 2009 14:31:34 +0100 Subject: pidl:Samba3/ClientNDR: $size can be 'foo / 2' so we need to add '(' and ')' foo / 5 * sizeof(bar)' isn't the same as '(foo / 2) * sizeof(bar)'. metze --- pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm') diff --git a/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm b/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm index 3fc63a4999..b26a08e029 100644 --- a/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm +++ b/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm @@ -105,9 +105,9 @@ sub ParseOutputArgument($$$;$$) } else { my $size_is = ParseExpr($l->{SIZE_IS}, $env, $e->{ORIGINAL}); if (has_property($e, "charset")) { - $self->pidl("memcpy(CONST_DISCARD(char *, $o$e->{NAME}), ${r}out.$e->{NAME}, $size_is * sizeof(*$o$e->{NAME}));"); + $self->pidl("memcpy(discard_const_p(uint8_t, $o$e->{NAME}), ${r}out.$e->{NAME}, ($size_is) * sizeof(*$o$e->{NAME}));"); } else { - $self->pidl("memcpy($o$e->{NAME}, ${r}out.$e->{NAME}, $size_is * sizeof(*$o$e->{NAME}));"); + $self->pidl("memcpy($o$e->{NAME}, ${r}out.$e->{NAME}, ($size_is) * sizeof(*$o$e->{NAME}));"); } } } else { -- cgit