diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 7f1c1601f2..f9f11c23f5 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -1,3 +1,7 @@ +2000-06-04 09:40 UTC-0800 Ron Pinkas + * source/pp/ppcore.c + * Changed case of '@' in hb_pp_RdStr() to only add missing space when in the begining of a new line. + 2000-06-04 09:20 GMT -3 Luiz Rafael Culik *utils/hbdoc/hbdoc.prg *Added code to support .CHM source code generation diff --git a/harbour/source/pp/ppcore.c b/harbour/source/pp/ppcore.c index 67d9f45c57..c7c382671d 100644 --- a/harbour/source/pp/ppcore.c +++ b/harbour/source/pp/ppcore.c @@ -2119,6 +2119,10 @@ int hb_pp_RdStr( FILE * handl_i, char * buffer, int maxlen, BOOL lDropSpaces, ch int State = 0; char cha, cLast = '\0', symbLast = '\0'; + /* Ron Pinkas Begin 2000-06-04 */ + BOOL bNewLine = TRUE; + /* Ron Pinkas End */ + HB_TRACE(HB_TR_DEBUG, ("hb_pp_RdStr(%p, %s, %d, %d, %s, %p, %p)", handl_i, buffer, maxlen, lDropSpaces, sBuffer, lenBuffer, iBuffer)); if( *lenBuffer == 0 ) return -1; @@ -2136,6 +2140,9 @@ int hb_pp_RdStr( FILE * handl_i, char * buffer, int maxlen, BOOL lDropSpaces, ch { if( s_ParseState == STATE_COMMENT && symbLast == ';' ) buffer[readed++] = ';'; + /* Ron Pinkas Begin 2000-06-04 */ + bNewLine = TRUE; + /* Ron Pinkas End */ break; } if( maxlen > 0 ) @@ -2184,7 +2191,7 @@ int hb_pp_RdStr( FILE * handl_i, char * buffer, int maxlen, BOOL lDropSpaces, ch /* Ron Pinkas Begin 2000-06-01 */ case '@': - if( sBuffer[ *iBuffer ] != ' ' && sBuffer[ *iBuffer ] != '\t' ) + if( bNewLine && sBuffer[ *iBuffer ] != ' ' && sBuffer[ *iBuffer ] != '\t' ) { buffer[readed++] = cha; s_prevchar = cha; @@ -2194,6 +2201,9 @@ int hb_pp_RdStr( FILE * handl_i, char * buffer, int maxlen, BOOL lDropSpaces, ch /* Ron Pinkas End */ } if( cha != ' ' && cha != ';' ) s_prevchar = cha; + /* Ron Pinkas Begin 2000-06-04 */ + if( cha != ' ' && cha != '\t' ) bNewLine = FALSE; + /* Ron Pinkas End */ } if( cha != ' ' && cha != '\t' ) State = 1; if( lDropSpaces && State ) lDropSpaces = 0;