| Index: gpu/command_buffer/service/texture_manager.h
|
| diff --git a/gpu/command_buffer/service/texture_manager.h b/gpu/command_buffer/service/texture_manager.h
|
| index 976213b72cc993bd934506cbaec7e8e42bae5f27..8c1d2dbc03151d4420d6fd67f0eb88cbc73720b4 100644
|
| --- a/gpu/command_buffer/service/texture_manager.h
|
| +++ b/gpu/command_buffer/service/texture_manager.h
|
| @@ -14,6 +14,7 @@
|
| #include "base/containers/hash_tables.h"
|
| #include "base/memory/ref_counted.h"
|
| #include "gpu/command_buffer/service/async_pixel_transfer_delegate.h"
|
| +#include "gpu/command_buffer/service/feature_info.h"
|
| #include "gpu/command_buffer/service/gl_utils.h"
|
| #include "gpu/command_buffer/service/memory_tracking.h"
|
| #include "gpu/gpu_export.h"
|
| @@ -536,10 +537,14 @@ class GPU_EXPORT TextureRef : public base::RefCounted<TextureRef> {
|
| struct DecoderTextureState {
|
| // total_texture_upload_time automatically initialized to 0 in default
|
| // constructor.
|
| - explicit DecoderTextureState(bool texsubimage_faster_than_teximage)
|
| + explicit DecoderTextureState(const FeatureInfo::Workarounds& workarounds)
|
| : tex_image_failed(false),
|
| texture_upload_count(0),
|
| - texsubimage_faster_than_teximage(texsubimage_faster_than_teximage) {}
|
| + texsubimage_faster_than_teximage(
|
| + workarounds.texsubimage_faster_than_teximage),
|
| + force_cube_map_positive_x_allocation(
|
| + workarounds.force_cube_map_positive_x_allocation),
|
| + force_cube_complete(workarounds.force_cube_complete) {}
|
|
|
| // This indicates all the following texSubImage*D calls that are part of the
|
| // failed texImage*D call should be ignored. The client calls have a lock
|
| @@ -552,6 +557,8 @@ struct DecoderTextureState {
|
| base::TimeDelta total_texture_upload_time;
|
|
|
| bool texsubimage_faster_than_teximage;
|
| + bool force_cube_map_positive_x_allocation;
|
| + bool force_cube_complete;
|
| };
|
|
|
| // This class keeps track of the textures and their sizes so we can do NPOT and
|
|
|