func (pr *MultiProcessor) Process(buffer []byte, geo btcdn.GeoBox) (img btcdn.Image, err error) { matches := ExtensionExp.FindAllStringSubmatch(geo.Src(), -1) if matches != nil { ext := strings.ToLower(matches[0][1]) if ext == "gif" { img, err = pr.magick.Process(buffer, geo) } else { img, err = pr.bimg.Process(buffer, geo) } } else { img, err = pr.bimg.Process(buffer, geo) } return }