Index: gpu/command_buffer/common/gles2_cmd_utils.cc |
diff --git a/gpu/command_buffer/common/gles2_cmd_utils.cc b/gpu/command_buffer/common/gles2_cmd_utils.cc |
index f310d474d79c2469929d8bd82d86e969b879e0f6..97bc081a1857fd490ec6a2b29da063fc510ddbaa 100644 |
--- a/gpu/command_buffer/common/gles2_cmd_utils.cc |
+++ b/gpu/command_buffer/common/gles2_cmd_utils.cc |
@@ -774,23 +774,24 @@ const int32 kBufferDestroyed = 0x3095; // EGL_BUFFER_DESTROYED |
const int32 kShareResources = 0x10000; |
const int32 kBindGeneratesResource = 0x10001; |
const int32 kFailIfMajorPerfCaveat = 0x10002; |
+const int32 kLoseContextWhenOutOfMemory = 0x10003; |
} // namespace |
ContextCreationAttribHelper::ContextCreationAttribHelper() |
- : alpha_size_(-1), |
- blue_size_(-1), |
- green_size_(-1), |
- red_size_(-1), |
- depth_size_(-1), |
- stencil_size_(-1), |
- samples_(-1), |
- sample_buffers_(-1), |
- buffer_preserved_(true), |
- share_resources_(false), |
- bind_generates_resource_(true), |
- fail_if_major_perf_caveat_(false) { |
-} |
+ : alpha_size_(-1), |
+ blue_size_(-1), |
+ green_size_(-1), |
+ red_size_(-1), |
+ depth_size_(-1), |
+ stencil_size_(-1), |
+ samples_(-1), |
+ sample_buffers_(-1), |
+ buffer_preserved_(true), |
+ share_resources_(false), |
+ bind_generates_resource_(true), |
+ fail_if_major_perf_caveat_(false), |
+ lose_context_when_out_of_memory_(false) {} |
void ContextCreationAttribHelper::Serialize(std::vector<int32>* attribs) { |
if (alpha_size_ != -1) { |
@@ -833,6 +834,8 @@ void ContextCreationAttribHelper::Serialize(std::vector<int32>* attribs) { |
attribs->push_back(bind_generates_resource_ ? 1 : 0); |
attribs->push_back(kFailIfMajorPerfCaveat); |
attribs->push_back(fail_if_major_perf_caveat_ ? 1 : 0); |
+ attribs->push_back(kLoseContextWhenOutOfMemory); |
+ attribs->push_back(lose_context_when_out_of_memory_ ? 1 : 0); |
attribs->push_back(kNone); |
} |
@@ -887,6 +890,9 @@ bool ContextCreationAttribHelper::Parse(const std::vector<int32>& attribs) { |
case kFailIfMajorPerfCaveat: |
fail_if_major_perf_caveat_ = value != 0; |
break; |
+ case kLoseContextWhenOutOfMemory: |
+ lose_context_when_out_of_memory_ = value != 0; |
+ break; |
case kNone: |
// Terminate list, even if more attributes. |
return true; |