From 8ed98ec517ebfcfa6fcb6ad16f8fef5adbed794b Mon Sep 17 00:00:00 2001 From: the_fiddler Date: Thu, 22 Oct 2009 23:01:42 +0000 Subject: [PATCH] Use out flow direction for pointer parameters in Get* or Gen* methods. --- Source/Converter/ESCLParser.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Source/Converter/ESCLParser.cs b/Source/Converter/ESCLParser.cs index c235f5eb..0a54cda7 100644 --- a/Source/Converter/ESCLParser.cs +++ b/Source/Converter/ESCLParser.cs @@ -255,7 +255,10 @@ namespace CHeaderToXML (tokens.Contains("unsigned") && !param_type.StartsWith("byte") ? "u" : "") + // Make sure we don't ignore the unsigned part of unsigned parameters (e.g. unsigned int -> uint) param_type.Replace("*", "") + String.Join("", pointers, 0, indirection_level), // Normalize pointer indirection level (place as many asterisks as in indirection_level variable) Count = has_array_size ? Int32.Parse(array_size.Match(param_name).Value.Trim('[', ']')) : 0, - Flow = param_name.EndsWith("ret") ? "out" : "in" + Flow = + param_name.EndsWith("ret") || + ((funcname.StartsWith("Get") || funcname.StartsWith("Gen")) && indirection_level > 0) ? + "out" : "in" } };