svn commit: samba r6964 - in branches/tmp/pidl2/source/build/pidl: .
jelmer at samba.org
jelmer at samba.org
Tue May 24 23:53:56 GMT 2005
Author: jelmer
Date: 2005-05-24 23:53:56 +0000 (Tue, 24 May 2005)
New Revision: 6964
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=6964
Log:
Handle unions with deferred data embedded in other things correctly.
Modified:
branches/tmp/pidl2/source/build/pidl/ndr_parser.pm
Changeset:
Modified: branches/tmp/pidl2/source/build/pidl/ndr_parser.pm
===================================================================
--- branches/tmp/pidl2/source/build/pidl/ndr_parser.pm 2005-05-24 22:48:49 UTC (rev 6963)
+++ branches/tmp/pidl2/source/build/pidl/ndr_parser.pm 2005-05-24 23:53:56 UTC (rev 6964)
@@ -631,7 +631,6 @@
}
} elsif ($l->{TYPE} eq "SWITCH") {
ParseSwitchPush($e, $l, $ndr, $var_name, $ndr_flags, $env);
- ParseElementPushLevel($e, GetNextLevel($e, $l), $ndr, $var_name, $env, $primitives, $deferred);
} elsif ($l->{TYPE} eq "DATA") {
ParseDataPush($e, $l, $ndr, $var_name, $ndr_flags);
}
@@ -677,6 +676,8 @@
deindent;
pidl "}";
}
+ } elsif ($l->{TYPE} eq "SWITCH") {
+ ParseElementPushLevel($e, GetNextLevel($e, $l), $ndr, $var_name, $env, $primitives, $deferred);
}
}
@@ -996,7 +997,6 @@
ParsePtrPull($e, $l, $ndr, $var_name);
} elsif ($l->{TYPE} eq "SWITCH") {
ParseSwitchPull($e, $l, $ndr, $var_name, $ndr_flags, $env);
- ParseElementPullLevel($e,GetNextLevel($e,$l), $ndr, $var_name, $env, $primitives, $deferred);
} elsif ($l->{TYPE} eq "DATA") {
ParseDataPull($e, $l, $ndr, $var_name, $ndr_flags);
}
@@ -1049,6 +1049,8 @@
deindent;
pidl "}";
}
+ } elsif ($l->{TYPE} eq "SWITCH") {
+ ParseElementPullLevel($e,GetNextLevel($e,$l), $ndr, $var_name, $env, $primitives, $deferred);
}
}
More information about the samba-cvs
mailing list