}
}
- pixels += yagl_pixel_format_get_info(pf, &ctx->unpack,
- width, height, 1, &size);
+ if (pixels || using_pbo) {
+ pixels += yagl_pixel_format_get_info(pf, &ctx->unpack,
+ width, height, 1, &size);
+ } else {
+ yagl_pixel_format_get_info(pf, &ctx->unpack,
+ width, height, 1, &size);
+ }
if (using_pbo) {
yagl_host_glTexImage2DOffset(target,
goto out;
}
- pixels += yagl_pixel_format_get_info(pf, &ctx->base.unpack,
- width, height, depth, &size);
+ if (pixels || using_pbo) {
+ pixels += yagl_pixel_format_get_info(pf, &ctx->base.unpack,
+ width, height, depth, &size);
+ } else {
+ yagl_pixel_format_get_info(pf, &ctx->base.unpack,
+ width, height, depth, &size);
+ }
if (using_pbo) {
yagl_host_glTexImage3DOffset(target,