[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 2/9] xen/pciback: Return proper error code from sscanf.
>>> On 29.09.11 at 21:52, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> wrote: > . instead of just hardcoding it to be -EINVAL. > > Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> > --- > drivers/xen/xen-pciback/pci_stub.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/xen/xen-pciback/pci_stub.c > b/drivers/xen/xen-pciback/pci_stub.c > index 32d6891..d985b65 100644 > --- a/drivers/xen/xen-pciback/pci_stub.c > +++ b/drivers/xen/xen-pciback/pci_stub.c > @@ -868,7 +868,7 @@ static inline int str_to_slot(const char *buf, int > *domain, int *bus, > if (err == 4) > return 0; > else if (err < 0) > - return -EINVAL; > + return err; > > /* try again without domain */ > *domain = 0; This should then also be done for the final return from the function: return err < 0 ? err : -EINVAL; But: Where did you read that {v,}sscanf() would return -E... values in hypothetical error cases? The C standard says it would return EOF when reaching the end of the input string before doing the first conversion; lib/vsprintf.c doesn't do so, and also doesn't say it might return -E... codes. Bottom line is that I think the code is more correct the way it is without this change. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |