From: Steve Kozma Date: 2004-02-16T22:08:53+09:00 Subject: "General Protection Fault " after third run of an external program Hi! I invoke an external command the following way: ... execThis = "c:/WINNT/tar_dos.exe -cf " + $tarFileName + " " + $nameList win_system(execThis) ... I defined win_system the way I saw it on the list: def win_system(command) Win32API.new("crtdll","system",['P'],'L').Call(command) end Now, when I start my program (on Win2000) it works fine. Starting again is most of the time OK too. But mostly on the third time I get this error (copied from irb shell): Exiting due to signal SIGSEGV General Protection Fault at eip=0001607f eax=ffa30040 ebx=0000003f ecx=000001dc edx=ffa30000 esi=00000040 edi=00000003 ebp=0006e5b0 esp=0006e5a0 program= cs: sel=01a7 base=01dc0000 limit=7e22ffff ds: sel=01af base=01dc0000 limit=7e22ffff es: sel=01af base=01dc0000 limit=7e22ffff fs: sel=017f base=00006e10 limit=0000ffff gs: sel=01bf base=00000000 limit=7ffeffff ss: sel=01af base=01dc0000 limit=7e22ffff Call frame traceback EIPs: 0x0001607f 0x00016005 0x0001481a 0x000148d1 => 0 After such an error I have to close the DOS Shell where I was started the program with irb, and open a new one to get it work again. Any idea why this happens? Best regards, Steve