Hi

The string length is important!

-----------------------
FUNC MAIN()
LOCAL nI, cStr, cSSS

FOR nI := 1 TO 10000

    cStr := "aaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.aaa;aaaaaaaaaaaaaaaaa"
    cSSS := ATREPL( ";", cStr, CHR(13)+CHR(10) )
NEXT

RETURN
-----------------------

hbmk2 test_atrepl.prg -lhbct -run
(OS: KUbuntu x64 9.10, harbour: $Id: ChangeLog 14036 2010-03-02)

*** glibc detected *** /home/alx/bars/test/test_atrepl: free():
invalid pointer: 0x00000000011af100 ***


If you apply this patch, it works:

--- atrepl_orig.c       2010-03-02 19:59:21.706782700 +0300
+++ atrepl.c    2010-03-02 19:59:32.336844828 +0300
@@ -226,7 +226,8 @@

             if( pc == NULL )
             {
-               hb_retclen_buffer( pcRetStr, sRetStrLen );
+               hb_retclen( pcRetStr, sRetStrLen );
+               hb_xfree( pcRetStr );
                return;
             }
_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to