aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChia-I Wu <olv@lunarg.com>2015-01-05 12:55:13 +0800
committerCourtney Goeltzenleuchter <courtney@LunarG.com>2015-02-04 17:58:04 -0700
commit1f3f8a061a1da872b066c84841b552eee33e2ea2 (patch)
tree0ad261395126e2b1f93004d214d6195aa3614b33
parentee023efe211756e1ab0a09f319633e914f30d733 (diff)
downloadusermoji-1f3f8a061a1da872b066c84841b552eee33e2ea2.tar.xz
xgl-generate.py: add generate_get_proc_addr_check()
Generate if (!pName || pName[0] != 'x' || pName[1] != 'g' || pName[2] != 'l') return NULL; for use in xglGetProcAddr().
-rwxr-xr-xxgl-generate.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/xgl-generate.py b/xgl-generate.py
index e8d461c2..eecf71b5 100755
--- a/xgl-generate.py
+++ b/xgl-generate.py
@@ -29,6 +29,10 @@ import sys
import xgl
+def generate_get_proc_addr_check(name):
+ return " if (!%s || %s[0] != 'x' || %s[1] != 'g' || %s[2] != 'l')\n" \
+ " return NULL;" % ((name,) * 4)
+
class Subcommand(object):
def __init__(self, argv):
self.argv = argv
@@ -236,8 +240,7 @@ class DispatchTableOpsSubcommand(Subcommand):
func.append("%s const char *name)"
% (" " * len(self.prefix)))
func.append("{")
- func.append(" if (!name || name[0] != 'x' || name[1] != 'g' || name[2] != 'l')")
- func.append(" return NULL;")
+ func.append(generate_get_proc_addr_check("name"))
func.append("")
func.append(" name += 3;")
func.append(" %s" % "\n ".join(lookups))
@@ -308,9 +311,7 @@ class IcdGetProcAddrSubcommand(IcdDummyEntrypointsSubcommand):
body = []
body.append("%s %s" % (self.qual, gpa_decl))
body.append("{")
- body.append(" if (!%s || %s[0] != 'x' || %s[1] != 'g' || %s[2] != 'l')" %
- (gpa_pname, gpa_pname, gpa_pname, gpa_pname))
- body.append(" return NULL;")
+ body.append(generate_get_proc_addr_check(gpa_pname))
body.append("")
body.append(" %s += 3;" % gpa_pname)
body.append(" %s" % "\n ".join(lookups))