tex->ptv2 = ptv;
// FIXME: works on lowest size 4 pixel high buffers. must also be multiple of 2
- if (tex->gc->shared->info.unpack_row_length)
+ if ((tex->gc->shared->info.unpack_row_length) && (rows[0] && rows[h]))
{
glPixelStorei(GL_UNPACK_ROW_LENGTH, rows[1] - rows[0]);
glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
return;
_tex_sub_2d(tex->gc, 0, 0, w / 2, h / 2, tex->ptv->format, tex->ptv->dataformat, rows[h + (h / 2)]);
}
- else
+ else if (rows[0] && rows[h])
{
unsigned int y;
im->cs.data = image_data;
}
evas_gl_common_image_dirty(im, 0, 0, 0, 0);
+ evas_gl_common_image_update(im->gc, im);
break;
default:
ERR("colorspace %d is not supported here", im->cs.space);