| Index: gpu/command_buffer/build_gles2_cmd_buffer.py
|
| diff --git a/gpu/command_buffer/build_gles2_cmd_buffer.py b/gpu/command_buffer/build_gles2_cmd_buffer.py
|
| index 103431c5b834b6e03db243b7ecd9f8a4b0a46db6..d2b1fba1e949db6c9a1ed207714bc339913a7c8d 100755
|
| --- a/gpu/command_buffer/build_gles2_cmd_buffer.py
|
| +++ b/gpu/command_buffer/build_gles2_cmd_buffer.py
|
| @@ -1714,6 +1714,21 @@ _FUNCTION_INFO = {
|
| 'needs_size': True,
|
| 'gl_test_func': 'DoBindUniformLocationCHROMIUM',
|
| },
|
| + 'InsertEventMarkerEXT': {
|
| + 'type': 'GLcharN',
|
| + 'decoder_func': 'DoInsertEventMarkerEXT',
|
| + 'expectation': False,
|
| + },
|
| + 'PushGroupMarkerEXT': {
|
| + 'type': 'GLcharN',
|
| + 'decoder_func': 'DoPushGroupMarkerEXT',
|
| + 'expectation': False,
|
| + },
|
| + 'PopGroupMarkerEXT': {
|
| + 'decoder_func': 'DoPopGroupMarkerEXT',
|
| + 'expectation': False,
|
| + 'impl_func': False,
|
| + },
|
| }
|
|
|
|
|
| @@ -2227,7 +2242,7 @@ TEST_F(%(test_name)s, %(name)sInvalidArgs%(arg_index)d_%(value_index)d) {
|
| if len(func.GetOriginalArgs()):
|
| comma = " << "
|
| file.Write(
|
| - ' GPU_CLIENT_LOG("[" << this << "] gl%s("%s%s << ")");\n' %
|
| + ' GPU_CLIENT_LOG("[" << GetLogPrefix() << "] gl%s("%s%s << ")");\n' %
|
| (func.original_name, comma, func.MakeLogArgString()))
|
|
|
| def WriteClientGLReturnLog(self, func, file):
|
| @@ -4276,6 +4291,49 @@ TEST_F(GLES2FormatTest, %(func_name)s) {
|
| })
|
|
|
|
|
| +class GLcharNHandler(CustomHandler):
|
| + """Handler for functions that pass a single string with an optional len."""
|
| +
|
| + def __init__(self):
|
| + CustomHandler.__init__(self)
|
| +
|
| + def InitFunction(self, func):
|
| + """Overrriden from TypeHandler."""
|
| + func.cmd_args = []
|
| + func.AddCmdArg(Argument('bucket_id', 'GLuint'))
|
| +
|
| + def AddImmediateFunction(self, generator, func):
|
| + """Overrriden from TypeHandler."""
|
| + pass
|
| +
|
| + def AddBucketFunction(self, generator, func):
|
| + """Overrriden from TypeHandler."""
|
| + pass
|
| +
|
| + def WriteServiceImplementation(self, func, file):
|
| + """Overrriden from TypeHandler."""
|
| + file.Write("""error::Error GLES2DecoderImpl::Handle%(name)s(
|
| + uint32 immediate_data_size, const gles2::%(name)s& c) {
|
| + GLuint bucket_id = static_cast<GLuint>(c.%(bucket_id)s);
|
| + Bucket* bucket = GetBucket(bucket_id);
|
| + if (!bucket || bucket->size() == 0) {
|
| + return error::kInvalidArguments;
|
| + }
|
| + std::string str;
|
| + if (!bucket->GetAsString(&str)) {
|
| + return error::kInvalidArguments;
|
| + }
|
| + %(gl_func_name)s(0, str.c_str());
|
| + return error::kNoError;
|
| +}
|
| +
|
| +""" % {
|
| + 'name': func.name,
|
| + 'gl_func_name': func.GetGLFunctionName(),
|
| + 'bucket_id': func.cmd_args[0].name,
|
| + })
|
| +
|
| +
|
| class IsHandler(TypeHandler):
|
| """Handler for glIs____ type and glGetError functions."""
|
|
|
| @@ -4444,7 +4502,8 @@ class STRnHandler(TypeHandler):
|
| code_1 = """%(return_type)s %(func_name)s(%(args)s) {
|
| GPU_CLIENT_SINGLE_THREAD_CHECK();
|
| """
|
| - code_2 = """ GPU_CLIENT_LOG("[" << this << "] gl%(func_name)s" << "("
|
| + code_2 = """ GPU_CLIENT_LOG("[" << GetLogPrefix()
|
| + << "] gl%(func_name)s" << "("
|
| << %(arg0)s << ", "
|
| << %(arg1)s << ", "
|
| << static_cast<void*>(%(arg2)s) << ", "
|
| @@ -5622,6 +5681,7 @@ class GLGenerator(object):
|
| 'GENn': GENnHandler(),
|
| 'GETn': GETnHandler(),
|
| 'GLchar': GLcharHandler(),
|
| + 'GLcharN': GLcharNHandler(),
|
| 'HandWritten': HandWrittenHandler(),
|
| 'Is': IsHandler(),
|
| 'Manual': ManualHandler(),
|
|
|