diff options
| author | Mark Lobodzinski <mark@lunarg.com> | 2017-06-28 13:22:03 -0600 |
|---|---|---|
| committer | Mark Lobodzinski <mark@lunarg.com> | 2017-07-03 14:00:45 -0600 |
| commit | 9f65aec9916b7380184f13788c8eb1b90e55bcf5 (patch) | |
| tree | ff6a5ef71df70de8c2e7a8a4a6cba5a3911085a0 /scripts/parameter_validation_generator.py | |
| parent | f0bb42f1165109038b8b352bd0c9dd74a2ff4d95 (diff) | |
| download | usermoji-9f65aec9916b7380184f13788c8eb1b90e55bcf5.tar.xz | |
layers: Output VUIDS for PV required_pointer checks
Change-Id: I5b1a9901fdd75b35455fadd749b6ccb31236d23a
Diffstat (limited to 'scripts/parameter_validation_generator.py')
| -rw-r--r-- | scripts/parameter_validation_generator.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/scripts/parameter_validation_generator.py b/scripts/parameter_validation_generator.py index 8786c3fa..1c5c094b 100644 --- a/scripts/parameter_validation_generator.py +++ b/scripts/parameter_validation_generator.py @@ -802,8 +802,8 @@ class ParamCheckerOutputGenerator(OutputGenerator): # Generate the pointer check string def makePointerCheck(self, prefix, value, lenValue, valueRequired, lenValueRequired, lenPtrRequired, funcPrintName, lenPrintName, valuePrintName, postProcSpec, struct_type_name): checkExpr = [] + vuid_tag_name = struct_type_name if struct_type_name is not None else funcPrintName if lenValue: - vuid_tag_name = struct_type_name if struct_type_name is not None else funcPrintName count_required_vuid = self.GetVuid("VUID-%s-%s-arraylength" % (vuid_tag_name, lenValue.name)) array_required_vuid = self.GetVuid("VUID-%s-%s-parameter" % (vuid_tag_name, value.name)) # This is an array with a pointer to a count value @@ -831,10 +831,11 @@ class ParamCheckerOutputGenerator(OutputGenerator): # This is an individual struct that is not allowed to be NULL elif not value.isoptional: # Function pointers need a reinterpret_cast to void* + ptr_required_vuid = self.GetVuid("VUID-%s-%s-parameter" % (vuid_tag_name, value.name)) if value.type[:4] == 'PFN_': - checkExpr.append('skipCall |= validate_required_pointer(layer_data->report_data, "{}", {ppp}"{}"{pps}, reinterpret_cast<const void*>({}{}));\n'.format(funcPrintName, valuePrintName, prefix, value.name, **postProcSpec)) + checkExpr.append('skipCall |= validate_required_pointer(layer_data->report_data, "{}", {ppp}"{}"{pps}, reinterpret_cast<const void*>({}{}), {});\n'.format(funcPrintName, valuePrintName, prefix, value.name, ptr_required_vuid, **postProcSpec)) else: - checkExpr.append('skipCall |= validate_required_pointer(layer_data->report_data, "{}", {ppp}"{}"{pps}, {}{});\n'.format(funcPrintName, valuePrintName, prefix, value.name, **postProcSpec)) + checkExpr.append('skipCall |= validate_required_pointer(layer_data->report_data, "{}", {ppp}"{}"{pps}, {}{}, {});\n'.format(funcPrintName, valuePrintName, prefix, value.name, ptr_required_vuid, **postProcSpec)) return checkExpr # # Process struct member validation code, performing name suibstitution if required |
