Welcome! Log In Create A New Profile

Advanced

Re: image_filter enhancement

ivan babrou
December 25, 2012 11:32AM
On 25 December 2012 20:05, Maxim Dounin <mdounin@mdounin.ru> wrote:

> Hello!
>
> On Thu, Dec 20, 2012 at 09:01:38PM +0400, ivan babrou wrote:
>
> > I've send patch for configuration semantics in separate thread.
> >
> > Here's lastest version of my patch that may be applied after. Is there
> > something else that I should fix?
>
> I would like to see clarification on how are you going to handle
> just bare numbers specified. As of now the code seems to don't do
> any special processing and seems to assume all values are correct,
> which might not be true and will result in some mostly arbitray
> crop offset selection. It might make sense to actually support
> percents as in Maxim Bublis's patch[1].
>
> [1] http://mailman.nginx.org/pipermail/nginx-devel/2012-April/002156.html


I assume that ngx_atoi will return NGX_ERROR if it's not number. If number
is ok, (ngx_uint_t) n will be returned. If it's not a number, string checks
will be performed. If even crop offset value is wrong then
NGX_HTTP_IMAGE_OFFSET_CENTER
will be returned which is default behaviour and zero at the same time. So
if you pass incorrect number and expect a number then you'll just get zero.
Just like it was before.

Cropping with offsets that is specified in percents seems more specific
task. I don't think this is required.

[...]
>
> > @@ -1151,7 +1188,24 @@ ngx_http_image_filter_value(ngx_str_t *value)
> >
> > n = ngx_atoi(value->data, value->len);
> >
> > - if (n > 0) {
> > + if (n == NGX_ERROR) {
> > + if (ngx_strncmp(value->data, "left", value->len) == 0) {
> > + return NGX_HTTP_IMAGE_OFFSET_LEFT;
> > +
> > + } else if (ngx_strncmp(value->data, "right", value->len) == 0) {
> > + return NGX_HTTP_IMAGE_OFFSET_RIGHT;
> > +
> > + } else if (ngx_strncmp(value->data, "top", value->len) == 0) {
> > + return NGX_HTTP_IMAGE_OFFSET_TOP;
> > +
> > + } else if (ngx_strncmp(value->data, "bottom", value->len) == 0)
> {
> > + return NGX_HTTP_IMAGE_OFFSET_BOTTOM;
> > +
> > + } else {
> > + return NGX_HTTP_IMAGE_OFFSET_CENTER;
> > + }
> > +
> > + } else if (n > 0) {
> > return (ngx_uint_t) n;
> > }
> >
>
> The ngx_strncmp() checks are incorrect, see here:
> http://mailman.nginx.org/pipermail/nginx-devel/2012-December/003065.html
>
> You may also move them below "if (n > 0)" the check for better
> readability.
>
> > @@ -1175,6 +1229,8 @@ ngx_http_image_filter_create_conf(ngx_conf_t *cf)
> > conf->angle = NGX_CONF_UNSET_UINT;
> > conf->transparency = NGX_CONF_UNSET;
> > conf->buffer_size = NGX_CONF_UNSET_SIZE;
> > + conf->crop_offset_x = NGX_CONF_UNSET_UINT;
> > + conf->crop_offset_y = NGX_CONF_UNSET_UINT;
>
> The "crop_" prefix probably should be dropped here for better
> readability (and to match other names in the code like "oxcv").
>
> [...]
>
> --
> Maxim Dounin
> http://nginx.com/support.html
>
> _______________________________________________
> nginx-devel mailing list
> nginx-devel@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-devel
>



--
Regards, Ian Babrou
http://bobrik.name http://twitter.com/ibobrik skype:i.babrou
_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

image_filter enhancement

ivan babrou 1770 November 06, 2012 01:06PM

Re: image_filter enhancement

Maxim Dounin 894 November 06, 2012 01:18PM

Re: image_filter enhancement Attachments

ivan babrou 972 November 06, 2012 01:24PM

Re: image_filter enhancement

ivan babrou 789 November 12, 2012 12:12PM

Re: image_filter enhancement

Maxim Dounin 972 November 14, 2012 06:48PM

Re: image_filter enhancement

ivan babrou 807 November 26, 2012 03:12PM

Re: image_filter enhancement

Maxim Dounin 790 November 27, 2012 11:04AM

Re: image_filter enhancement

ivan babrou 757 December 03, 2012 12:56PM

Re: image_filter enhancement

ivan babrou 780 December 04, 2012 12:36AM

Re: image_filter enhancement

Maxim Dounin 766 December 04, 2012 08:10AM

Re: image_filter enhancement

Ruslan Khusnullin 762 December 04, 2012 09:42AM

Re: image_filter enhancement

Maxim Dounin 809 December 05, 2012 09:44AM

Re: image_filter enhancement

ivan babrou 710 December 04, 2012 10:00AM

Re: image_filter enhancement

Maxim Dounin 766 December 05, 2012 09:54AM

Re: image_filter enhancement

Eugaia 834 December 05, 2012 11:56AM

Re: image_filter enhancement

ivan babrou 798 December 16, 2012 10:58AM

Re: image_filter enhancement

Maxim Dounin 878 December 18, 2012 05:54AM

Re: image_filter enhancement

ivan babrou 811 December 20, 2012 12:04PM

Re: image_filter enhancement

Maxim Dounin 769 December 25, 2012 11:06AM

Re: image_filter enhancement

ivan babrou 758 December 25, 2012 11:32AM

Re: image_filter enhancement

ivan babrou 754 December 25, 2012 12:04PM

Re: image_filter enhancement

ivan babrou 800 January 07, 2013 08:04AM

Re: image_filter enhancement

ivan babrou 797 February 22, 2013 12:54AM

Re: image_filter enhancement

Maxim Dounin 709 February 25, 2013 07:36AM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 150
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready