{
        struct i2c_client *client = v4l2_get_subdevdata(sd);
        struct ov6650 *priv = to_ov6650(client);
-       struct v4l2_rect rect = sel->r;
        int ret;
 
        if (sel->which != V4L2_SUBDEV_FORMAT_ACTIVE ||
            sel->target != V4L2_SEL_TGT_CROP)
                return -EINVAL;
 
-       v4l_bound_align_image(&rect.width, 2, W_CIF, 1,
-                             &rect.height, 2, H_CIF, 1, 0);
-       v4l_bound_align_image(&rect.left, DEF_HSTRT << 1,
-                             (DEF_HSTRT << 1) + W_CIF - (__s32)rect.width, 1,
-                             &rect.top, DEF_VSTRT << 1,
-                             (DEF_VSTRT << 1) + H_CIF - (__s32)rect.height, 1,
-                             0);
+       v4l_bound_align_image(&sel->r.width, 2, W_CIF, 1,
+                             &sel->r.height, 2, H_CIF, 1, 0);
+       v4l_bound_align_image(&sel->r.left, DEF_HSTRT << 1,
+                             (DEF_HSTRT << 1) + W_CIF - (__s32)sel->r.width, 1,
+                             &sel->r.top, DEF_VSTRT << 1,
+                             (DEF_VSTRT << 1) + H_CIF - (__s32)sel->r.height,
+                             1, 0);
 
-       ret = ov6650_reg_write(client, REG_HSTRT, rect.left >> 1);
+       ret = ov6650_reg_write(client, REG_HSTRT, sel->r.left >> 1);
        if (!ret) {
-               priv->rect.left = rect.left;
+               priv->rect.left = sel->r.left;
                ret = ov6650_reg_write(client, REG_HSTOP,
-                               (rect.left + rect.width) >> 1);
+                                      (sel->r.left + sel->r.width) >> 1);
        }
        if (!ret) {
-               priv->rect.width = rect.width;
-               ret = ov6650_reg_write(client, REG_VSTRT, rect.top >> 1);
+               priv->rect.width = sel->r.width;
+               ret = ov6650_reg_write(client, REG_VSTRT, sel->r.top >> 1);
        }
        if (!ret) {
-               priv->rect.top = rect.top;
+               priv->rect.top = sel->r.top;
                ret = ov6650_reg_write(client, REG_VSTOP,
-                               (rect.top + rect.height) >> 1);
+                                      (sel->r.top + sel->r.height) >> 1);
        }
        if (!ret)
-               priv->rect.height = rect.height;
+               priv->rect.height = sel->r.height;
 
        return ret;
 }