> +Image *ffopen(char *filename)
>  {
> -     FILE *f;
> -     unsigned char buf[8];
> +     unsigned char hdr[16];
> +     char *bin;
> +     regex_t regex;
>       Image *img;
> +     size_t i;
> +     int tmpfd, fd;
> +
> +     for (bin = NULL, i = 0; i < LEN(filters); i++) {
> +             if (regcomp(&regex, filters[i].regex,
> +                         REG_NOSUB | REG_EXTENDED | REG_ICASE))
> +                     continue;
> +             if (!regexec(&regex, filename, 0, NULL, 0)) {
> +                     bin = filters[i].bin;
> +                     break;
> +             }
> +     }

I forgot an if (!bin) return NULL sort of thing here.

Reply via email to