From e37f5a2465c71ccb99d5a7f4c33c2f54e23e9f39 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Mon, 5 Nov 2018 14:47:06 +0100 Subject: [PATCH] Update libretro-common --- libretro-common/glsym/glgen.py | 21 ++++++++++++++++++++- libretro-common/glsym/rglgen.py | 21 ++++++++++++++++++++- libretro-common/glsym/xglgen.py | 21 ++++++++++++++++++++- libretro-common/streams/file_stream.c | 3 +-- 4 files changed, 61 insertions(+), 5 deletions(-) diff --git a/libretro-common/glsym/glgen.py b/libretro-common/glsym/glgen.py index 898dcb3a10..a599e5574d 100755 --- a/libretro-common/glsym/glgen.py +++ b/libretro-common/glsym/glgen.py @@ -33,6 +33,25 @@ def noext(sym): return False return True +def fix_multiline_functions(lines): + fixed_lines = [] + temp_lines = [] + for line in lines: + if line.count('(') > line.count(')'): + temp_lines.append(line) + else: + if len(temp_lines) > 0: + if line.count(')') > line.count('('): + temp_lines.append(line) + fixed_line = re.sub(' +',' ', ''.join(temp_lines).replace('\n','').replace('\t','')) + fixed_lines.append(fixed_line) + temp_lines = [] + else: + temp_lines.append(line) + else: + fixed_lines.append(line) + return fixed_lines + def find_gl_symbols(lines): typedefs = [] syms = [] @@ -68,7 +87,7 @@ if __name__ == '__main__': banned_ext.append(banned) with open(sys.argv[1], 'r') as f: - lines = f.readlines() + lines = fix_multiline_functions(f.readlines()) typedefs, syms = find_gl_symbols(lines) overrides = generate_defines(syms) diff --git a/libretro-common/glsym/rglgen.py b/libretro-common/glsym/rglgen.py index 897d8cbeae..8d35e0bdf7 100755 --- a/libretro-common/glsym/rglgen.py +++ b/libretro-common/glsym/rglgen.py @@ -33,6 +33,25 @@ def noext(sym): return False return True +def fix_multiline_functions(lines): + fixed_lines = [] + temp_lines = [] + for line in lines: + if line.count('(') > line.count(')'): + temp_lines.append(line) + else: + if len(temp_lines) > 0: + if line.count(')') > line.count('('): + temp_lines.append(line) + fixed_line = re.sub(' +',' ', ''.join(temp_lines).replace('\n','').replace('\t','')) + fixed_lines.append(fixed_line) + temp_lines = [] + else: + temp_lines.append(line) + else: + fixed_lines.append(line) + return fixed_lines + def find_gl_symbols(lines): typedefs = [] syms = [] @@ -68,7 +87,7 @@ if __name__ == '__main__': banned_ext.append(banned) with open(sys.argv[1], 'r') as f: - lines = f.readlines() + lines = fix_multiline_functions(f.readlines()) typedefs, syms = find_gl_symbols(lines) overrides = generate_defines(syms) diff --git a/libretro-common/glsym/xglgen.py b/libretro-common/glsym/xglgen.py index 9fae01b119..6539b4f6db 100644 --- a/libretro-common/glsym/xglgen.py +++ b/libretro-common/glsym/xglgen.py @@ -33,6 +33,25 @@ def noext(sym): return False return True +def fix_multiline_functions(lines): + fixed_lines = [] + temp_lines = [] + for line in lines: + if line.count('(') > line.count(')'): + temp_lines.append(line) + else: + if len(temp_lines) > 0: + if line.count(')') > line.count('('): + temp_lines.append(line) + fixed_line = re.sub(' +',' ', ''.join(temp_lines).replace('\n','').replace('\t','')) + fixed_lines.append(fixed_line) + temp_lines = [] + else: + temp_lines.append(line) + else: + fixed_lines.append(line) + return fixed_lines + def find_gl_symbols(lines): typedefs = [] syms = [] @@ -69,7 +88,7 @@ if __name__ == '__main__': banned_ext.append(banned) with open(sys.argv[1], 'r') as f: - lines = f.readlines() + lines = fix_multiline_functions(f.readlines()) typedefs, syms = find_gl_symbols(lines) overrides = generate_defines(syms) diff --git a/libretro-common/streams/file_stream.c b/libretro-common/streams/file_stream.c index b24102ff3b..680a809ec5 100644 --- a/libretro-common/streams/file_stream.c +++ b/libretro-common/streams/file_stream.c @@ -482,8 +482,7 @@ int filestream_close(RFILE *stream) * * Read the contents of a file into @buf. * - * Returns: 1 on success, 0 on failure - * In the error case, the dereferenced buf is set to NULL and the len is set to -1. + * Returns: number of items read, -1 on error. */ int64_t filestream_read_file(const char *path, void **buf, int64_t *len) {