Re: [PATCH v1 3/5] list-objects-filter: implement composite filters
- From
Jeff King <peff@peff.net>
- Date
- Jun 3, 2019, 12:34 UTC
- Message-ID
- <20190603123435.GA18953@sigill.intra.peff.net>
- In-Reply-To
- <20190601001231.GF4641@comcast.net>
On Fri, May 31, 2019 at 05:12:31PM -0700, Matthew DeVore wrote:
Show 21 quoted lines
> On Fri, May 31, 2019 at 05:10:42PM -0400, Jeff King wrote:
> > On Fri, May 31, 2019 at 01:48:21PM -0700, Matthew DeVore wrote:
> >
> > > > > +static int digit_value(int c, struct strbuf *errbuf) {
> > > > > + if (c >= '0' && c <= '9')
> > > > > + return c - '0';
> > > > > + if (c >= 'a' && c <= 'f')
> > > > > + return c - 'a' + 10;
> > > > > + if (c >= 'A' && c <= 'F')
> > > > > + return c - 'A' + 10;
> > > >
> > > > I'm sure there's something I'm missing here. But why are you manually
> > > > decoding hex instead of using strtol or sscanf or something?
> > > >
> > >
> > > I'll have to give this a try. Thank you for the suggestion.
> >
> > Try our hex_to_bytes() helper (or if you really want to go low-level,
> > your conditionals can be replaced by lookups in the hexval table).
>
> Using hex_to_bytes worked out quite nicely, thanks!Great. We might want to stop there, but it's possible could reuse even more code. I didn't look closely before, but it seems this code is decoding a URL. We already have a url_decode() routine in url.c. Could it be reused?
-Peff