From bbf931d3ee63e9ca96992a156cdd58be0a62bd10 Mon Sep 17 00:00:00 2001 From: FellippeHeitor Date: Tue, 12 Oct 2021 01:07:23 -0300 Subject: [PATCH] Fix UDT internal arrays retaining values after loading files --- source/qb64.bas | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/source/qb64.bas b/source/qb64.bas index b76f49233..daea42c8e 100644 --- a/source/qb64.bas +++ b/source/qb64.bas @@ -640,22 +640,7 @@ REDIM SHARED constdefined(constmax) AS LONG 'UDT 'names DIM SHARED lasttype AS LONG -REDIM SHARED udtxname(1000) AS STRING * 256 -REDIM SHARED udtxcname(1000) AS STRING * 256 -REDIM SHARED udtxsize(1000) AS LONG -REDIM SHARED udtxbytealign(1000) AS INTEGER 'first element MUST be on a byte alignment & size is a multiple of 8 -REDIM SHARED udtxnext(1000) AS LONG -REDIM SHARED udtxvariable(1000) AS INTEGER 'true if the udt contains variable length elements -'elements -REDIM SHARED lasttypeelement AS LONG -REDIM SHARED udtename(1000) AS STRING * 256 -REDIM SHARED udtecname(1000) AS STRING * 256 -REDIM SHARED udtebytealign(1000) AS INTEGER -REDIM SHARED udtesize(1000) AS LONG -REDIM SHARED udtetype(1000) AS LONG -REDIM SHARED udtetypesize(1000) AS LONG -REDIM SHARED udtearrayelements(1000) AS LONG -REDIM SHARED udtenext(1000) AS LONG +DIM SHARED lasttypeelement AS LONG TYPE idstruct @@ -1427,6 +1412,21 @@ addmetainclude$ = "" nextrunlineindex = 1 lasttype = 0 lasttypeelement = 0 +REDIM SHARED udtxname(1000) AS STRING * 256 +REDIM SHARED udtxcname(1000) AS STRING * 256 +REDIM SHARED udtxsize(1000) AS LONG +REDIM SHARED udtxbytealign(1000) AS INTEGER 'first element MUST be on a byte alignment & size is a multiple of 8 +REDIM SHARED udtxnext(1000) AS LONG +REDIM SHARED udtxvariable(1000) AS INTEGER 'true if the udt contains variable length elements +'elements +REDIM SHARED udtename(1000) AS STRING * 256 +REDIM SHARED udtecname(1000) AS STRING * 256 +REDIM SHARED udtebytealign(1000) AS INTEGER +REDIM SHARED udtesize(1000) AS LONG +REDIM SHARED udtetype(1000) AS LONG +REDIM SHARED udtetypesize(1000) AS LONG +REDIM SHARED udtearrayelements(1000) AS LONG +REDIM SHARED udtenext(1000) AS LONG definingtype = 0 definingtypeerror = 0 constlast = -1