1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-28 01:58:17 +03:00

Make some fatal errors non-fatal. This means we generate invalid code in

some cases, but we do print errors. We don't use all generated code yet at the
moment, so this isn't much of a problem.
This commit is contained in:
Jelmer Vernooij 2008-12-16 18:02:14 +01:00
parent 327218f1cf
commit 9692c71aa1
2 changed files with 8 additions and 4 deletions

View File

@ -12,7 +12,7 @@ use Exporter;
@EXPORT_OK = qw(ParseFunction $res $res_hdr ParseOutputArgument);
use strict;
use Parse::Pidl qw(fatal warning);
use Parse::Pidl qw(fatal warning error);
use Parse::Pidl::Util qw(has_property ParseExpr);
use Parse::Pidl::Samba4 qw(DeclLong);
use Parse::Pidl::Samba4::Header qw(GenerateFunctionInEnv);
@ -76,7 +76,11 @@ sub ParseOutputArgument($$$)
my ($self, $fn, $e) = @_;
my $level = 0;
fatal($e->{ORIGINAL}, "[out] argument is not a pointer or array") if ($e->{LEVELS}[0]->{TYPE} ne "POINTER" and $e->{LEVELS}[0]->{TYPE} ne "ARRAY");
if ($e->{LEVELS}[0]->{TYPE} ne "POINTER" and $e->{LEVELS}[0]->{TYPE} ne "ARRAY") {
$self->pidl("return NT_STATUS_NOT_SUPPORTED;");
error($e->{ORIGINAL}, "[out] argument is not a pointer or array");
return;
}
if ($e->{LEVELS}[0]->{TYPE} eq "POINTER") {
$level = 1;

View File

@ -12,7 +12,7 @@ require Exporter;
use Parse::Pidl::Util qw(has_property is_constant);
use Parse::Pidl::NDR qw(GetNextLevel);
use Parse::Pidl::Typelist qw(mapTypeName scalar_is_reference);
use Parse::Pidl qw(fatal);
use Parse::Pidl qw(fatal error);
use strict;
use vars qw($VERSION);
@ -69,7 +69,7 @@ sub NumStars($;$)
$n++;
}
fatal($e->{ORIGINAL}, "Too few pointers $n < $d") if ($n < $d);
error($e->{ORIGINAL}, "Too few pointers $n < $d") if ($n < $d);
$n -= $d;