Hi,
after moving from some old Harbour version to 1.0.1 in production
environment my app started to GPF on __DBPACK.
I've debugged code a little bit. After evaluation of
SELF_EVALBLOCK( ( AREAP ) pArea, pBlock )
inside hb_dbfPack(), the result of HB_IS_BLOCK( pBlock ) is FALSE,
because hb_vmEvalBlockOrMacro() releases pArea->valResult (it contains
this codeblock). Some older Harbour code works OK.
Self-contained sample (not necessarily GPFs, but prints wrong results):
PROC main()
DBCREATE("test124", {{"F1", "C", 10, 0}})
USE test124 NEW EXCLUSIVE
DBAPPEND()
DBAPPEND()
DBAPPEND()
DBAPPEND()
__DBPACK({|| QQOUT(".")}, 1) // Only one "." is printed!!!
DBCLOSEALL()
RETURN
Best regards,
Mindaugas
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour