On Tue, Mar 20, 2012 at 6:27 PM, Martin <laza...@mfriebe.de> wrote: > On 20/03/2012 12:08, Marcos Douglas wrote: >> >> Hi, >> >> I was testing the new connector to MSSQL when I found a problem. >> If I compile and run in console, I have no memleak. Good. But if I put >> a breakpoint in AConnection.Free; and press F8, I got this: >> >> ERROR >> ,msg="Warning:\nCannot insert breakpoint -237.\nError accessing memory >> address 0x7816cd30: Input/output error.\n" >> > > Does the issue happen the first time you press F8, or to you have to press a > 2nd time?
When I press a first time... but I think some times in a 2nd time. =| > In other words: Is it possble the debugger pauses inside free (possible in a > dll) and that when you hit F8 then, it can not step, because the dll has no > debug info? Yes, I think is possible... > If in stopped in the DLL, it might still put the green arrow on your source > => first stack with frame debug info... > > Open and watch the stack window. > > --- > Also open the "debug output" window. Open this one before you start your > app. Then copy the content. The content was copied below. > --- > If indeed gdb stops inside a dll, then F8 simply can not work ==================================================== <-file-exec-and-symbols "W:/md/dev/freepascal/lib/gh/bin/dbtest.exe"> ^done (gdb) <-gdb-set language pascal> ^done (gdb) <-environment-cd .> ^done (gdb) <-environment-cd "W:/md/dev/freepascal/lib/gh/bin/"> ^done (gdb) <-data-evaluate-expression FPC_THREADVAR_RELOCATE_PROC> ^done,value="0x0" (gdb) <-exec-arguments > ^done (gdb) <-gdb-set language pascal> ^done (gdb) <ptype TObject> &"ptype TObject\n" ~"type = TOBJECT = class \n" ~" public\n" ~" constructor CREATE (TOBJECT, POINTER) : TOBJECT;\n" ~" destructor ~DESTROY (TOBJECT, POINTER); virtual;\n" ~" function NEWINSTANCE (unnamedtype) : TOBJECT; virtual;\n" ~" procedure FREEINSTANCE (TOBJECT); virtual;\n" ~" function SAFECALLEXCEPTION (TOBJECT, TOBJECT, POINTER) : HRESULT; virtual;\n" ~" procedure DEFAULTHANDLER (TOBJECT, var); virtual;\n" ~" procedure FREE (TOBJECT);\n" ~" function INITINSTANCE (unnamedtype, POINTER) : TOBJECT;\n" ~" procedure CLEANUPINSTANCE (TOBJECT);\n" ~" function CLASSTYPE (unnamedtype) : TCLASS;\n" ~" function CLASSINFO (unnamedtype) : POINTER;\n" ~" function CLASSNAME (unnamedtype, SHORTSTRING) : SHORTSTRING;\n" ~" function CLASSNAMEIS (unnamedtype, SHORTSTRING) : BOOLEAN;\n" ~" function CLASSPARENT (unnamedtype) : TCLASS;\n" ~" function INSTANCESIZE (unnamedtype) : LONGINT;\n" ~" function INHERITSFROM (unnamedtype, TCLASS) : BOOLEAN;\n" ~" function STRINGMESSAGETABLE (unnamedtype) : PSTRINGMESSAGETABLE;\n" ~" function METHODADDRESS (unnamedtype, SHORTSTRING) : POINTER;\n" ~" function METHODNAME (unnamedtype, POINTER, SHORTSTRING) : SHORTSTRING;\n" ~" function FIELDADDRESS (TOBJECT, SHORTSTRING) : POINTER;\n" ~" procedure AFTERCONSTRUCTION (TOBJECT); virtual;\n" ~" procedure BEFOREDESTRUCTION (TOBJECT); virtual;\n" ~" procedure DEFAULTHANDLERSTR (TOBJECT, var); virtual;\n" ~" procedure DISPATCH (TOBJECT, var); virtual;\n" ~" procedure DISPATCHSTR (TOBJECT, var); virtual;\n" ~" function GETINTERFACE (TOBJECT, TGUID, out) : BOOLEAN;\n" ~" function GETINTERFACEBYSTR (TOBJECT, SHORTSTRING, out) : BOOLEAN;\n" ~" function GETINTERFACEWEAK (TOBJECT, TGUID, out) : BOOLEAN;\n" ~" function GETINTERFACEENTRY (unnamedtype, TGUID) : PINTERFACEENTRY;\n" ~" function GETINTERFACEENTRYBYSTR (unnamedtype, SHORTSTRING) : PINTERFACEENTRY;\n" ~" function GETINTERFACETABLE (unnamedtype) : PINTERFACETABLE;\n" ~" function UNITNAME (unnamedtype, ANSISTRING) : ANSISTRING;\n" ~" function EQUALS (TOBJECT, TOBJECT) : BOOLEAN; virtual;\n" ~" function GETHASHCODE (TOBJECT) : LONGINT; virtual;\n" ~" function TOSTRING (TOBJECT, ANSISTRING) : ANSISTRING; virtual;\n" ~"end\n" ^done (gdb) <ptype Exception> &"ptype Exception\n" ~"type = EXCEPTION = class : public TOBJECT \n" ~" private\n" ~" FMESSAGE : ANSISTRING;\n" ~" FHELPCONTEXT : LONGINT;\n" ~"\n" ~" public\n" ~" constructor CREATE (EXCEPTION, POINTER, ANSISTRING) : ^EXCEPTION;\n" ~" constructor CREATEFMT (EXCEPTION, POINTER, ANSISTRING, unnamedtype, LONGINT) : ^EXCEPTION;\n" ~" constructor CREATERES (EXCEPTION, POINTER, PSTRING) : ^EXCEPTION;\n" ~" constructor CREATERESFMT (EXCEPTION, POINTER, PSTRING, unnamedtype, LONGINT) : ^EXCEPTION;\n" ~" constructor CREATEHELP (EXCEPTION, POINTER, ANSISTRING, LONGINT) : ^EXCEPTION;\n" ~" constructor CREATEFMTHELP (EXCEPTION, POINTER, ANSISTRING, unnamedtype, LONGINT, LONGINT) : ^EXCEPTION;\n" ~" constructor CREATERESHELP (EXCEPTION, POINTER, PSTRING, LONGINT) : ^EXCEPTION;\n" ~" constructor CREATERESFMTHELP (EXCEPTION, POINTER, PSTRING, unnamedtype, LONGINT, LONGINT) : ^EXCEPTION;\n" ~"end\n" ^done (gdb) <ptype Shortstring> &"ptype Shortstring\n" ~"type = SHORTSTRING = record \n" ~" length : BYTE;\n" ~" st : array [1..255] of CHAR;\n" ~"end\n" ^done (gdb) <ptype pointer> &"ptype pointer\n" ~"type = ^POINTER\n" ^done (gdb) <ptype byte> &"ptype byte\n" ~"type = BYTE\n" ^done (gdb) <info file> &"info file\n" ~"Symbols from \"w:\\md\\dev\\freepascal\\lib\\gh\\bin\\dbtest.exe\".\n" ~"Local exec file:\n" ~"\t`w:\\md\\dev\\freepascal\\lib\\gh\\bin\\dbtest.exe', file type pei-i386.\n" ~"\tEntry point: 0x471e50\n" ~"\t0x00401000 - 0x00471e90 is .text\n" ~"\t0x00472000 - 0x0048abec is .data\n" ~"\t0x0048b000 - 0x0048fb94 is .bss\n" ~"\t0x00491000 - 0x00491b34 is .idata\n" ^done (gdb) <-data-evaluate-expression sizeof(POINTER)> ^done,value="4" (gdb) <-break-insert +0> ^done,bkpt={number="12",type="breakpoint",disp="keep",enabled="y",addr="0x004016d8",func="EXECSELECT",file="dbtest.pas",fullname="w:\\md\\dev\\freepascal\\lib\\gh\\examples\\db\\mssql\\dbtest.pas",line="28",times="0",original-location="dbtest.pas:28"} (gdb) <-break-insert main> ^done,bkpt={number="13",type="breakpoint",disp="keep",enabled="y",addr="0x004017d1",func="main",file="dbtest.pas",fullname="w:\\md\\dev\\freepascal\\lib\\gh\\examples\\db\\mssql\\dbtest.pas",line="37",times="0",original-location="main"} (gdb) <-break-insert *4660816> ^done,bkpt={number="14",type="breakpoint",disp="keep",enabled="y",addr="0x00471e50",func="_FPC_MAINCRTSTARTUP",file="sysinitpas.pp",fullname="w:\\md\\dev\\freepascal\\compiler\\2.6.1\\rtl\\win32\\sysinitpas.pp",line="30",times="0",original-location="*4660816"} (gdb) <-exec-run> =thread-group-started,id="i1",pid="4220" =thread-created,id="1",group-id="i1" ~"[New Thread 4220.0xe88]\n" ^running *running,thread-id="all" (gdb) =library-loaded,id="C:\\WINDOWS\\system32\\ntdll.dll",target-name="C:\\WINDOWS\\system32\\ntdll.dll",host-name="C:\\WINDOWS\\system32\\ntdll.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\kernel32.dll",target-name="C:\\WINDOWS\\system32\\kernel32.dll",host-name="C:\\WINDOWS\\system32\\kernel32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\oleaut32.dll",target-name="C:\\WINDOWS\\system32\\oleaut32.dll",host-name="C:\\WINDOWS\\system32\\oleaut32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\advapi32.dll",target-name="C:\\WINDOWS\\system32\\advapi32.dll",host-name="C:\\WINDOWS\\system32\\advapi32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\rpcrt4.dll",target-name="C:\\WINDOWS\\system32\\rpcrt4.dll",host-name="C:\\WINDOWS\\system32\\rpcrt4.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\secur32.dll",target-name="C:\\WINDOWS\\system32\\secur32.dll",host-name="C:\\WINDOWS\\system32\\secur32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\gdi32.dll",target-name="C:\\WINDOWS\\system32\\gdi32.dll",host-name="C:\\WINDOWS\\system32\\gdi32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\user32.dll",target-name="C:\\WINDOWS\\system32\\user32.dll",host-name="C:\\WINDOWS\\system32\\user32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\msvcrt.dll",target-name="C:\\WINDOWS\\system32\\msvcrt.dll",host-name="C:\\WINDOWS\\system32\\msvcrt.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\ole32.dll",target-name="C:\\WINDOWS\\system32\\ole32.dll",host-name="C:\\WINDOWS\\system32\\ole32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\imm32.dll",target-name="C:\\WINDOWS\\system32\\imm32.dll",host-name="C:\\WINDOWS\\system32\\imm32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\lpk.dll",target-name="C:\\WINDOWS\\system32\\lpk.dll",host-name="C:\\WINDOWS\\system32\\lpk.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\usp10.dll",target-name="C:\\WINDOWS\\system32\\usp10.dll",host-name="C:\\WINDOWS\\system32\\usp10.dll",symbols-loaded="0",thread-group="i1" *stopped,reason="breakpoint-hit",disp="keep",bkptno="14",frame={addr="0x00471e50",func="_FPC_MAINCRTSTARTUP",args=[],file="sysinitpas.pp",fullname="w:\\md\\dev\\freepascal\\compiler\\2.6.1\\rtl\\win32\\sysinitpas.pp",line="30"},thread-id="1",stopped-threads="all" (gdb) <-break-delete 13> ^done (gdb) <-break-delete 14> ^done (gdb) <-break-delete 12> ^done (gdb) <info program> &"info program\n" ~"\tUsing the running image of child Thread 4220.0xe88.\n" ~"Program stopped at 0x471e50.\n" ~"It stopped at a breakpoint that has since been deleted.\n" ~"Type \"info stack\" or \"info registers\" for more information.\n" ^done (gdb) <info address FPC_RAISEEXCEPTION> &"info address FPC_RAISEEXCEPTION\n" ~"Symbol \"FPC_RAISEEXCEPTION\" is at 0x40b070 in a file compiled without debugging.\n" ^done (gdb) <-break-insert *4239472> ^done,bkpt={number="15",type="breakpoint",disp="keep",enabled="y",addr="0x0040b070",func="fpc_raiseexception",file="W:/md/dev/freepascal/compiler/2.6.1/rtl/inc/except.inc",fullname="w:\\md\\dev\\freepascal\\compiler\\2.6.1\\rtl\\inc\\except.inc",line="191",times="0",original-location="*4239472"} (gdb) <info address FPC_BREAK_ERROR> &"info address FPC_BREAK_ERROR\n" ~"Symbol \"FPC_BREAK_ERROR\" is at 0x40cef0 in a file compiled without debugging.\n" ^done (gdb) <-break-insert *4247280> ^done,bkpt={number="16",type="breakpoint",disp="keep",enabled="y",addr="0x0040cef0",func="HANDLEERRORADDRFRAME",file="W:/md/dev/freepascal/compiler/2.6.1/rtl/inc/system.inc",fullname="w:\\md\\dev\\freepascal\\compiler\\2.6.1\\rtl\\inc\\system.inc",line="962",times="0",original-location="*4247280"} (gdb) <info address FPC_RUNERROR> &"info address FPC_RUNERROR\n" ~"Symbol \"FPC_RUNERROR\" is at 0x40cfe0 in a file compiled without debugging.\n" ^done (gdb) <-break-insert *4247520> ^done,bkpt={number="17",type="breakpoint",disp="keep",enabled="y",addr="0x0040cfe0",func="RUNERROR",file="W:/md/dev/freepascal/compiler/2.6.1/rtl/inc/system.inc",fullname="w:\\md\\dev\\freepascal\\compiler\\2.6.1\\rtl\\inc\\system.inc",line="1007",times="0",original-location="*4247520"} (gdb) <-symbol-list-lines W:\md\dev\freepascal\lib\gh\examples\db\mssql\dbtest.pas> ^done,lines=[{pc="0x00401640",line="21"},{pc="0x0040164c",line="21"},{pc="0x00401678",line="22"},{pc="0x0040167f",line="23"},{pc="0x0040169d",line="24"},{pc="0x004016bb",line="25"},{pc="0x004016d0",line="26"},{pc="0x004016d8",line="28"},{pc="0x0040174b",line="29"},{pc="0x00401769",line="32"},{pc="0x00401785",line="34"},{pc="0x004017ad",line="34"},{pc="0x004017c0",line="36"},{pc="0x004017d1",line="37"},{pc="0x004017e8",line="38"},{pc="0x004017ff",line="39"},{pc="0x0040181d",line="41"},{pc="0x0040182c",line="45"},{pc="0x00401842",line="46"},{pc="0x00401858",line="47"},{pc="0x0040186e",line="48"},{pc="0x00401884",line="49"},{pc="0x0040188e",line="50"},{pc="0x004018b7",line="53"},{pc="0x004018c1",line="54"},{pc="0x004018c9",line="58"},{pc="0x004018df",line="59"},{pc="0x004018ef",line="60"},{pc="0x00401918",line="63"},{pc="0x00401922",line="64"},{pc="0x00401940",line="65"},{pc="0x00401960",line="66"},{pc="0x00401980",line="67"},{pc="0x004019a0",line="68"},{pc="0x004019c0",line="69"},{pc="0x004019d0",line="71"},{pc="0x004019f9",line="72"},{pc="0x004019fe",line="75"},{pc="0x00401a08",line="76"},{pc="0x00401a26",line="77"},{pc="0x00401a46",line="78"},{pc="0x00401a66",line="79"},{pc="0x00401a76",line="81"},{pc="0x00401a9f",line="82"},{pc="0x00401aa4",line="84"},{pc="0x00401ab4",line="86"},{pc="0x00401ad0",line="87"},{pc="0x00401aee",line="88"},{pc="0x00401b0e",line="89"},{pc="0x00401b2e",line="90"},{pc="0x00401b4e",line="91"},{pc="0x00401b6e",line="92"},{pc="0x00401b7d",line="94"},{pc="0x00401b96",line="97"},{pc="0x00401bbf",line="98"},{pc="0x00401bc4",line="113"},{pc="0x00401bce",line="114"},{pc="0x00401bec",line="115"},{pc="0x00401bfc",line="116"},{pc="0x00401c2a",line="118"},{pc="0x00401c34",line="119"},{pc="0x00401c4d",line="121"}] (gdb) <info line "W:\md\dev\freepascal\lib\gh\examples\db\mssql\dbtest.pas":119> &"info line \"W:\\md\\dev\\freepascal\\lib\\gh\\examples\\db\\mssql\\dbtest.pas\":119\n" ~"Line 119 of \"dbtest.pas\" starts at address 0x401c34 <main+1140> and ends at 0x401c4d <main+1165>.\n" ^done (gdb) <-break-insert -f dbtest.pas:119> ^done,bkpt={number="18",type="breakpoint",disp="keep",enabled="y",addr="0x00401c34",func="main",file="dbtest.pas",fullname="w:\\md\\dev\\freepascal\\lib\\gh\\examples\\db\\mssql\\dbtest.pas",line="119",times="0",original-location="dbtest.pas:119"} (gdb) <-break-enable 18> ^done (gdb) <-exec-continue> ^running *running,thread-id="all" (gdb) =library-loaded,id="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\dblib.dll",target-name="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\dblib.dll",host-name="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\dblib.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\libiconv2.dll",target-name="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\libiconv2.dll",host-name="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\libiconv2.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\shell32.dll",target-name="C:\\WINDOWS\\system32\\shell32.dll",host-name="C:\\WINDOWS\\system32\\shell32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\shlwapi.dll",target-name="C:\\WINDOWS\\system32\\shlwapi.dll",host-name="C:\\WINDOWS\\system32\\shlwapi.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\WinSxS\\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\\msvcr80.dll",target-name="C:\\WINDOWS\\WinSxS\\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\\msvcr80.dll",host-name="C:\\WINDOWS\\WinSxS\\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\\msvcr80.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\ws2_32.dll",target-name="C:\\WINDOWS\\system32\\ws2_32.dll",host-name="C:\\WINDOWS\\system32\\ws2_32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\ws2help.dll",target-name="C:\\WINDOWS\\system32\\ws2help.dll",host-name="C:\\WINDOWS\\system32\\ws2help.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\WinSxS\\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\\comctl32.dll",target-name="C:\\WINDOWS\\WinSxS\\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\\comctl32.dll",host-name="C:\\WINDOWS\\WinSxS\\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\\comctl32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\comctl32.dll",target-name="C:\\WINDOWS\\system32\\comctl32.dll",host-name="C:\\WINDOWS\\system32\\comctl32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\System32\\mswsock.dll",target-name="C:\\WINDOWS\\System32\\mswsock.dll",host-name="C:\\WINDOWS\\System32\\mswsock.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\dnsapi.dll",target-name="C:\\WINDOWS\\system32\\dnsapi.dll",host-name="C:\\WINDOWS\\system32\\dnsapi.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\iphlpapi.dll",target-name="C:\\WINDOWS\\system32\\iphlpapi.dll",host-name="C:\\WINDOWS\\system32\\iphlpapi.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\mprapi.dll",target-name="C:\\WINDOWS\\system32\\mprapi.dll",host-name="C:\\WINDOWS\\system32\\mprapi.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\activeds.dll",target-name="C:\\WINDOWS\\system32\\activeds.dll",host-name="C:\\WINDOWS\\system32\\activeds.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\adsldpc.dll",target-name="C:\\WINDOWS\\system32\\adsldpc.dll",host-name="C:\\WINDOWS\\system32\\adsldpc.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\netapi32.dll",target-name="C:\\WINDOWS\\system32\\netapi32.dll",host-name="C:\\WINDOWS\\system32\\netapi32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\wldap32.dll",target-name="C:\\WINDOWS\\system32\\wldap32.dll",host-name="C:\\WINDOWS\\system32\\wldap32.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\atl.dll",target-name="C:\\WINDOWS\\system32\\atl.dll",host-name="C:\\WINDOWS\\system32\\atl.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\rtutils.dll",target-name="C:\\WINDOWS\\system32\\rtutils.dll",host-name="C:\\WINDOWS\\system32\\rtutils.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\samlib.dll",target-name="C:\\WINDOWS\\system32\\samlib.dll",host-name="C:\\WINDOWS\\system32\\samlib.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\setupapi.dll",target-name="C:\\WINDOWS\\system32\\setupapi.dll",host-name="C:\\WINDOWS\\system32\\setupapi.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\System32\\winrnr.dll",target-name="C:\\WINDOWS\\System32\\winrnr.dll",host-name="C:\\WINDOWS\\System32\\winrnr.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\msctf.dll",target-name="C:\\WINDOWS\\system32\\msctf.dll",host-name="C:\\WINDOWS\\system32\\msctf.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\rasadhlp.dll",target-name="C:\\WINDOWS\\system32\\rasadhlp.dll",host-name="C:\\WINDOWS\\system32\\rasadhlp.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\system32\\hnetcfg.dll",target-name="C:\\WINDOWS\\system32\\hnetcfg.dll",host-name="C:\\WINDOWS\\system32\\hnetcfg.dll",symbols-loaded="0",thread-group="i1" =library-loaded,id="C:\\WINDOWS\\System32\\wshtcpip.dll",target-name="C:\\WINDOWS\\System32\\wshtcpip.dll",host-name="C:\\WINDOWS\\System32\\wshtcpip.dll",symbols-loaded="0",thread-group="i1" =thread-created,id="2",group-id="i1" ~"[New Thread 4220.0x155c]\n" *running,thread-id="all" *stopped,reason="breakpoint-hit",disp="keep",bkptno="18",frame={addr="0x00401c34",func="main",args=[],file="dbtest.pas",fullname="w:\\md\\dev\\freepascal\\lib\\gh\\examples\\db\\mssql\\dbtest.pas",line="119"},thread-id="1",stopped-threads="all" (gdb) <-stack-info-depth> ^done,depth="1" (gdb) <-stack-list-arguments 1 0 0> ^done,stack-args=[frame={level="0",args=[]}] (gdb) <-stack-list-frames 0 0> ^done,stack=[frame={level="0",addr="0x00401c34",func="main",file="dbtest.pas",fullname="w:\\md\\dev\\freepascal\\lib\\gh\\examples\\db\\mssql\\dbtest.pas",line="119"}] (gdb) <-thread-info> ^done,threads=[{id="2",target-id="Thread 4220.0x155c",frame={level="0",addr="0x7c90e514",func="ntdll!LdrAccessResource",args=[],from="C:\\WINDOWS\\system32\\ntdll.dll"},state="stopped"},{id="1",target-id="Thread 4220.0xe88",frame={level="0",addr="0x00401c34",func="main",args=[],file="dbtest.pas",fullname="w:\\md\\dev\\freepascal\\lib\\gh\\examples\\db\\mssql\\dbtest.pas",line="119"},state="stopped"}],current-thread-id="1" (gdb) <-stack-list-arguments 1 0 0> ^done,stack-args=[frame={level="0",args=[]}] (gdb) <-stack-list-locals 1> ^done,locals=[] (gdb) <-data-evaluate-expression $fp> ^done,value="0x16eff94" (gdb) <-exec-next> ^running *running,thread-id="1" (gdb) *running,thread-id="all" =library-unloaded,id="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\dblib.dll",target-name="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\dblib.dll",host-name="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\dblib.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\WinSxS\\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\\msvcr80.dll",target-name="C:\\WINDOWS\\WinSxS\\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\\msvcr80.dll",host-name="C:\\WINDOWS\\WinSxS\\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\\msvcr80.dll",thread-group="i1" =library-unloaded,id="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\libiconv2.dll",target-name="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\libiconv2.dll",host-name="w:\\md\\dev\\freepascal\\lib\\gh\\bin\\libiconv2.dll",thread-group="i1" ~"Cannot remove breakpoints because program is no longer writable.\nFurther execution is probably impossible.\n" *stopped,reason="end-stepping-range",frame={addr="0x00401c4d",func="main",args=[],file="dbtest.pas",fullname="w:\\md\\dev\\freepascal\\lib\\gh\\examples\\db\\mssql\\dbtest.pas",line="121"},thread-id="1",stopped-threads="all" ~"warning: Error removing breakpoint -108\n" (gdb) <-stack-info-depth> ^done,depth="1" (gdb) <-stack-list-arguments 1 0 0> ^done,stack-args=[frame={level="0",args=[]}] (gdb) <-stack-list-frames 0 0> ^done,stack=[frame={level="0",addr="0x00401c4d",func="main",file="dbtest.pas",fullname="w:\\md\\dev\\freepascal\\lib\\gh\\examples\\db\\mssql\\dbtest.pas",line="121"}] (gdb) <-thread-info> ^done,threads=[{id="2",target-id="Thread 4220.0x155c",frame={level="0",addr="0x7c90e514",func="ntdll!LdrAccessResource",args=[],from="C:\\WINDOWS\\system32\\ntdll.dll"},state="stopped"},{id="1",target-id="Thread 4220.0xe88",frame={level="0",addr="0x00401c4d",func="main",args=[],file="dbtest.pas",fullname="w:\\md\\dev\\freepascal\\lib\\gh\\examples\\db\\mssql\\dbtest.pas",line="121"},state="stopped"}],current-thread-id="1" (gdb) <-stack-list-arguments 1 0 0> ^done,stack-args=[frame={level="0",args=[]}] (gdb) <-stack-list-locals 1> ^done,locals=[] (gdb) <-data-evaluate-expression $fp> ^done,value="0x16eff94" (gdb) <-exec-next> ^error,msg="Warning:\nCannot insert breakpoint -110.\nError accessing memory address 0x7816cd30: Input/output error.\n" (gdb) <-break-delete 18> ^done (gdb) <kill> &"kill\n" =thread-exited,id="2",group-id="i1" =thread-exited,id="1",group-id="i1" =thread-group-exited,id="i1" ^done (gdb) <info program> &"info program\n" ~"The program being debugged is not being run.\n" ^done (gdb) <-break-delete 15> ^done (gdb) <-break-delete 16> ^done (gdb) <-break-delete 17> ^done (gdb) <-file-exec-and-symbols > =library-unloaded,id="C:\\WINDOWS\\system32\\ntdll.dll",target-name="C:\\WINDOWS\\system32\\ntdll.dll",host-name="C:\\WINDOWS\\system32\\ntdll.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\kernel32.dll",target-name="C:\\WINDOWS\\system32\\kernel32.dll",host-name="C:\\WINDOWS\\system32\\kernel32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\oleaut32.dll",target-name="C:\\WINDOWS\\system32\\oleaut32.dll",host-name="C:\\WINDOWS\\system32\\oleaut32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\advapi32.dll",target-name="C:\\WINDOWS\\system32\\advapi32.dll",host-name="C:\\WINDOWS\\system32\\advapi32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\rpcrt4.dll",target-name="C:\\WINDOWS\\system32\\rpcrt4.dll",host-name="C:\\WINDOWS\\system32\\rpcrt4.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\secur32.dll",target-name="C:\\WINDOWS\\system32\\secur32.dll",host-name="C:\\WINDOWS\\system32\\secur32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\gdi32.dll",target-name="C:\\WINDOWS\\system32\\gdi32.dll",host-name="C:\\WINDOWS\\system32\\gdi32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\user32.dll",target-name="C:\\WINDOWS\\system32\\user32.dll",host-name="C:\\WINDOWS\\system32\\user32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\msvcrt.dll",target-name="C:\\WINDOWS\\system32\\msvcrt.dll",host-name="C:\\WINDOWS\\system32\\msvcrt.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\ole32.dll",target-name="C:\\WINDOWS\\system32\\ole32.dll",host-name="C:\\WINDOWS\\system32\\ole32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\imm32.dll",target-name="C:\\WINDOWS\\system32\\imm32.dll",host-name="C:\\WINDOWS\\system32\\imm32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\lpk.dll",target-name="C:\\WINDOWS\\system32\\lpk.dll",host-name="C:\\WINDOWS\\system32\\lpk.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\usp10.dll",target-name="C:\\WINDOWS\\system32\\usp10.dll",host-name="C:\\WINDOWS\\system32\\usp10.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\shell32.dll",target-name="C:\\WINDOWS\\system32\\shell32.dll",host-name="C:\\WINDOWS\\system32\\shell32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\shlwapi.dll",target-name="C:\\WINDOWS\\system32\\shlwapi.dll",host-name="C:\\WINDOWS\\system32\\shlwapi.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\ws2_32.dll",target-name="C:\\WINDOWS\\system32\\ws2_32.dll",host-name="C:\\WINDOWS\\system32\\ws2_32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\ws2help.dll",target-name="C:\\WINDOWS\\system32\\ws2help.dll",host-name="C:\\WINDOWS\\system32\\ws2help.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\WinSxS\\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\\comctl32.dll",target-name="C:\\WINDOWS\\WinSxS\\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\\comctl32.dll",host-name="C:\\WINDOWS\\WinSxS\\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\\comctl32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\comctl32.dll",target-name="C:\\WINDOWS\\system32\\comctl32.dll",host-name="C:\\WINDOWS\\system32\\comctl32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\System32\\mswsock.dll",target-name="C:\\WINDOWS\\System32\\mswsock.dll",host-name="C:\\WINDOWS\\System32\\mswsock.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\dnsapi.dll",target-name="C:\\WINDOWS\\system32\\dnsapi.dll",host-name="C:\\WINDOWS\\system32\\dnsapi.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\iphlpapi.dll",target-name="C:\\WINDOWS\\system32\\iphlpapi.dll",host-name="C:\\WINDOWS\\system32\\iphlpapi.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\mprapi.dll",target-name="C:\\WINDOWS\\system32\\mprapi.dll",host-name="C:\\WINDOWS\\system32\\mprapi.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\activeds.dll",target-name="C:\\WINDOWS\\system32\\activeds.dll",host-name="C:\\WINDOWS\\system32\\activeds.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\adsldpc.dll",target-name="C:\\WINDOWS\\system32\\adsldpc.dll",host-name="C:\\WINDOWS\\system32\\adsldpc.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\netapi32.dll",target-name="C:\\WINDOWS\\system32\\netapi32.dll",host-name="C:\\WINDOWS\\system32\\netapi32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\wldap32.dll",target-name="C:\\WINDOWS\\system32\\wldap32.dll",host-name="C:\\WINDOWS\\system32\\wldap32.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\atl.dll",target-name="C:\\WINDOWS\\system32\\atl.dll",host-name="C:\\WINDOWS\\system32\\atl.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\rtutils.dll",target-name="C:\\WINDOWS\\system32\\rtutils.dll",host-name="C:\\WINDOWS\\system32\\rtutils.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\samlib.dll",target-name="C:\\WINDOWS\\system32\\samlib.dll",host-name="C:\\WINDOWS\\system32\\samlib.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\setupapi.dll",target-name="C:\\WINDOWS\\system32\\setupapi.dll",host-name="C:\\WINDOWS\\system32\\setupapi.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\System32\\winrnr.dll",target-name="C:\\WINDOWS\\System32\\winrnr.dll",host-name="C:\\WINDOWS\\System32\\winrnr.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\msctf.dll",target-name="C:\\WINDOWS\\system32\\msctf.dll",host-name="C:\\WINDOWS\\system32\\msctf.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\rasadhlp.dll",target-name="C:\\WINDOWS\\system32\\rasadhlp.dll",host-name="C:\\WINDOWS\\system32\\rasadhlp.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\system32\\hnetcfg.dll",target-name="C:\\WINDOWS\\system32\\hnetcfg.dll",host-name="C:\\WINDOWS\\system32\\hnetcfg.dll",thread-group="i1" =library-unloaded,id="C:\\WINDOWS\\System32\\wshtcpip.dll",target-name="C:\\WINDOWS\\System32\\wshtcpip.dll",host-name="C:\\WINDOWS\\System32\\wshtcpip.dll",thread-group="i1" ^done (gdb) ==================================================== Marcos Douglas _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal