+ gl_format texFormat = MESA_FORMAT_NONE;
+
+ if (!error) {
+ /* No parameter errors. Choose a texture format and see if we
+ * can really allocate the texture.
+ */
+ struct gl_texture_object *texObj =
+ _mesa_get_current_tex_object(ctx, target);
+ texFormat = _mesa_choose_texture_format(ctx, texObj, target, level,
+ internalFormat, format, type);
+ if (!legal_texture_size(ctx, texFormat, width, height, depth)) {
+ error = PROXY_ERROR;
+ }
+ }
+
+ texImage = get_proxy_tex_image(ctx, target, level);