Changeset: 425 v1.19.32

- Una propiedad llamada "text" es confundida con la estructura text/endtext (ph42)
This commit is contained in:
fdbozzo
2014-08-26 22:33:43 +02:00
7 changed files with 72 additions and 13 deletions

View File

@@ -2,8 +2,8 @@ Lparameters toUpdateInfo
Local lcNote Local lcNote
With toUpdateInfo With toUpdateInfo
.VersionNumber = 'v1.19.31' .VersionNumber = 'v1.19.32'
.VersionDate = Date(2014,08,22) .VersionDate = Date(2014,08,26)
.SourceFileUrl = 'http://vfpxrepository.com/dl/thorupdate/Projects/FoxBin2Prg/FoxBin2Prg.Zip' .SourceFileUrl = 'http://vfpxrepository.com/dl/thorupdate/Projects/FoxBin2Prg/FoxBin2Prg.Zip'
.Link = 'http://vfpx.codeplex.com/wikipage?title=FoxBin2PRG' .Link = 'http://vfpx.codeplex.com/wikipage?title=FoxBin2PRG'
@@ -17,6 +17,9 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
Change History ------------------------------------------------------------- Change History -------------------------------------------------------------
2014/08/26 v1.19.32
- If exists a property called "text" it is confused with a text/endtext structure (ph42)
2014/08/22 v1.19.31 2014/08/22 v1.19.31
- Trash cleanup code on binary methods, normally added by tools like ReFox and others - Trash cleanup code on binary methods, normally added by tools like ReFox and others
- Added EXE version number when generating a debug LOG file - Added EXE version number when generating a debug LOG file

View File

@@ -343,6 +343,51 @@ DEFINE CLASS ut__foxbin2prg__c_conversor_base__IdentificarBloquesDeExclusion as
ENDFUNC ENDFUNC
*******************************************************************************************************************************************
FUNCTION Deberia_NoEncontrarBloque_TEXT_ENDTEXT_CuandoExisteUnaPropiedadLlamada_Text
LOCAL lcMethod, laLineas(1), lnLineas, laPos(1,2), lnPos_Count, laExpected_Pos(1,2) ;
, laLineasExclusion(19), laLineasExclusion_Esperadas(19)
LOCAL loObj AS c_conversor_prg_a_bin OF "FOXBIN2PRG.PRG"
loObj = THIS.icObj
*-- Input and expected params
STORE '' TO lcMethod
laExpected_Pos(1,1) = 0
laExpected_Pos(1,2) = 0
TEXT TO lcMethod NOSHOW TEXTMERGE FLAGS 1 PRETEXT 1+2
DEFINE CLASS test AS custom
*< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" />
*<DefinedPropArrayMethod>
*m: text_access
*m: text_assign
*p: text && Returns all of the text in a text-entry area of a control.
*</DefinedPropArrayMethod>
text = PRETEXT
PROCEDURE text_access
RETURN THIS.text
ENDPROC
PROCEDURE text_assign
LPARAMETERS vNewVal
THIS.text = m.vNewVal
ENDPROC
ENDDEFINE
ENDTEXT
lnLineas = ALINES( laLineas, lcMethod )
*-- Test
loObj.identificarBloquesDeExclusion( @laLineas, lnLineas, , @laLineasExclusion, @lnPos_Count, @laPos )
*-- Evaluaci<63>n de resultados
THIS.Evaluate_results( @laExpected_Pos, @laPos, lnPos_Count, @laLineasExclusion_Esperadas, @laLineasExclusion )
ENDFUNC
******************************************************************************************************************************************* *******************************************************************************************************************************************
FUNCTION Deberia_EncontrarBloque_TEXT_ENDTEXT_CuandoEvaluaUnaLineaQueTerminaConUn_EndText_YLineaAnteriorTerminaEn_Coma FUNCTION Deberia_EncontrarBloque_TEXT_ENDTEXT_CuandoEvaluaUnaLineaQueTerminaConUn_EndText_YLineaAnteriorTerminaEn_Coma
LOCAL lcMethod, laLineas(1), lnLineas, laPos(1,2), lnPos_Count, laExpected_Pos(1,2) ; LOCAL lcMethod, laLineas(1), lnLineas, laPos(1,2), lnPos_Count, laExpected_Pos(1,2) ;

Binary file not shown.

View File

@@ -26,7 +26,7 @@ _LegalTrademark = "Creative Commons 4: Reconocimiento - CompartirIgual (by-sa):
_ProductName = " FOXBIN2PRG v1.19.31" _ProductName = " FOXBIN2PRG v1.19.31"
_MajorVer = "1" _MajorVer = "1"
_MinorVer = "19" _MinorVer = "19"
_Revision = "31" _Revision = "32"
_LanguageID = "1034" _LanguageID = "1034"
_AutoIncrement = "0" _AutoIncrement = "0"
*</DevInfo> *</DevInfo>

Binary file not shown.

Binary file not shown.

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 * 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 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 * 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 (ph42)
* </HISTORIAL DE CAMBIOS Y NOTAS IMPORTANTES> * </HISTORIAL DE CAMBIOS Y NOTAS IMPORTANTES>
* *
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
@@ -142,6 +143,7 @@
* 29/07/2014 M_N_M REPORTE BUG vcx/scx v1.19.28: Los campos de tabla con nombre "text" a veces provocan corrupci<63>n del binario generado (Arreglado en v1.19.29) * 29/07/2014 M_N_M REPORTE BUG vcx/scx v1.19.28: Los campos de tabla con nombre "text" a veces provocan corrupci<63>n del binario generado (Arreglado en v1.19.29)
* 07/08/2014 Jim Nelson REPORTE BUG vcx/scx v1.19.29: Cuando la l<>nea anterior a un ENDTEXT termina en ";" o "," no se reconoce como ENDTEXT sino como continuaci<63>n (Arreglado en v1.19.30) * 07/08/2014 Jim Nelson REPORTE BUG vcx/scx v1.19.29: Cuando la l<>nea anterior a un ENDTEXT termina en ";" o "," no se reconoce como ENDTEXT sino como continuaci<63>n (Arreglado en v1.19.30)
* 08/08/2014 Ryan Harris REPORTE BUG vcx/vct v1.19.29: En ciertos casos de herencia no se mantiene el orden alfabetico de algunos metodos (solucionado en v1.19.30) * 08/08/2014 Ryan Harris REPORTE BUG vcx/vct v1.19.29: En ciertos casos de herencia no se mantiene el orden alfabetico de algunos metodos (solucionado en v1.19.30)
* 25/08/2014 ph42 REPORTE BUG bug vcx/vct v1.19.31: Una propiedad llamada "text" es confundida con la estructura text/endtext (solucionado en v1.19.32)
* </TESTEO Y REPORTE DE BUGS (AGRADECIMIENTOS)> * </TESTEO Y REPORTE DE BUGS (AGRADECIMIENTOS)>
* *
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
@@ -2757,21 +2759,30 @@ DEFINE CLASS c_conversor_base AS SESSION
IF tnIniFin = 1 IF tnIniFin = 1
*-- TOKENS DE INICIO *-- 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 *-- 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' IF ta_ID_Bloques(X,1) == 'TEXT' THEN
EXIT lcLine = UPPER( lcLine ) + ' '
DO CASE
CASE NOT lcWord == 'TEXT'
EXIT
CASE UPPER( LEFT( CHRTRAN( lcLine, ' ', '' ), 5 ) ) == 'TEXT='
EXIT
ENDCASE
ENDIF ENDIF
llEncontrado = .T. llEncontrado = .T.
ENDIF ENDIF
ELSE ELSE
*-- TOKENS DE FIN *-- 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 *-- 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) ) IF ta_ID_Bloques(X,2) == 'ENDT' AND NOT lcWord == LEFT( 'ENDTEXT', LEN(lcWord) )
EXIT EXIT
@@ -8862,7 +8873,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
ENDIF ENDIF
IF NOT EMPTY(m.tcMethod) IF NOT EMPTY(m.tcMethod)
DIMENSION laLine(1) DIMENSION laLine(1)
STORE '' TO laLine STORE '' TO laLine
STORE 0 TO lnTextNodes STORE 0 TO lnTextNodes
@@ -8997,7 +9008,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
taCode(tnMethodCount) = taCode(tnMethodCount) + laLine(I) &&+ CR_LF taCode(tnMethodCount) = taCode(tnMethodCount) + laLine(I) &&+ CR_LF
llProcOpen = .F. 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 CASE tnMethodCount = 0 OR NOT llProcOpen
*-- Skip empty and commented lines before methods begin *-- 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. *-- Aqu<71> como condici<63>n podr<64>a poner: NOT llProcOpen AND LEFT(laLine(I), 7) # 'ENDPROC', pero abarcar<61>a demasiado.