Changeset: 421 fdbozzo - 25/08/2014 20:42:05:

- Una propiedad llamada "text" es confundida con la estructura text/endtext (desconocido)
This commit is contained in:
fdbozzo
2014-08-25 21:18:21 +02:00
parent d9faa43be8
commit bc8a531160

View File

@@ -101,6 +101,7 @@
* 17/08/2014 FDBOZZO v1.19.31 Agregada versi<73>n del EXE cuando se genera LOG de depuraci<63>n
* 20/08/2014 FDBOZZO v1.19.31 Mejora vcx/scx: Mejorado el reconocimiento de instrucciones #IF..#ENDIF cuando hay espacios entre # y el nombre de funci<63>n
* 20/08/2014 FDBOZZO v1.19.31 Mejora: Ajuste de capitalizaci<63>n de los archivos origen, as<61> ya no hay que hacerlo manualmente
* 25/08/2014 FDBOZZO v1.19.32 Arreglo bug vcx/vct v1.19.31: Una propiedad llamada "text" es confundida con la estructura text/endtext (desconocido)
* </HISTORIAL DE CAMBIOS Y NOTAS IMPORTANTES>
*
*---------------------------------------------------------------------------------------------------
@@ -2252,7 +2253,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
.RenameFile( FORCEEXT(.c_InputFile,'MNT'), lcEXE_CAPS, loFSO )
ENDCASE
ELSE
*-- Normalizar archivo(s) de salida. El primero siempre se normaliza (??2, ??X, DBF, DBC)
.RenameFile( .c_OutputFile, lcEXE_CAPS, loFSO )
@@ -2754,24 +2755,33 @@ DEFINE CLASS c_conversor_base AS SESSION
IF LEFT(lcLine,1) == '#'
lcLine = CHRTRAN( lcLine, ' ', '' ) && Quito los espacios a lo que comience con #
ENDIF
IF tnIniFin = 1
*-- TOKENS DE INICIO
IF UPPER( LEFT( tcLine, LEN(ta_ID_Bloques(X,1)) ) ) == ta_ID_Bloques(X,1)
IF UPPER( LEFT( lcLine, LEN(ta_ID_Bloques(X,1)) ) ) == ta_ID_Bloques(X,1)
*-- Evaluar casos especiales
lcWord = UPPER( ALLTRIM(GETWORDNUM(tcLine,1) ) )
lcWord = UPPER( ALLTRIM(GETWORDNUM(lcLine,1) ) )
IF ta_ID_Bloques(X,1) == 'TEXT' AND NOT lcWord == 'TEXT'
EXIT
IF ta_ID_Bloques(X,1) == 'TEXT' THEN
lcLine = UPPER( lcLine ) + ' '
DO CASE
CASE NOT lcWord == 'TEXT'
EXIT
CASE UPPER( LEFT( CHRTRAN( lcLine, ' ', '' ), 5 ) ) == 'TEXT='
EXIT
ENDCASE
ENDIF
llEncontrado = .T.
ENDIF
ELSE
*-- TOKENS DE FIN
IF LEFT( UPPER( tcLine ), tnLen_IDFinBQ ) == ta_ID_Bloques(X,2) && Fin de bloque encontrado (#ENDI, ENDTEXT, etc)
IF LEFT( UPPER( lcLine ), tnLen_IDFinBQ ) == ta_ID_Bloques(X,2) && Fin de bloque encontrado (#ENDI, ENDTEXT, etc)
*-- Evaluar casos especiales
lcWord = UPPER( ALLTRIM(GETWORDNUM(tcLine,1) ) )
lcWord = UPPER( ALLTRIM(GETWORDNUM(lcLine,1) ) )
IF ta_ID_Bloques(X,2) == 'ENDT' AND NOT lcWord == LEFT( 'ENDTEXT', LEN(lcWord) )
EXIT
@@ -8862,7 +8872,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
ENDIF
IF NOT EMPTY(m.tcMethod)
DIMENSION laLine(1)
DIMENSION laLine(1)
STORE '' TO laLine
STORE 0 TO lnTextNodes
@@ -8997,7 +9007,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
taCode(tnMethodCount) = taCode(tnMethodCount) + laLine(I) &&+ CR_LF
llProcOpen = .F.
*CASE tnMethodCount = 0 OR NOT llProcOpen AND LEFT( LTRIM(laLine(I)),1 ) = '*'
*CASE tnMethodCount = 0 OR NOT llProcOpen AND LEFT( LTRIM(laLine(I)),1 ) = '*'
CASE tnMethodCount = 0 OR NOT llProcOpen
*-- Skip empty and commented lines before methods begin
*-- Aqu<71> como condici<63>n podr<64>a poner: NOT llProcOpen AND LEFT(laLine(I), 7) # 'ENDPROC', pero abarcar<61>a demasiado.