[ros-bugs] [Bug 1212] New: C++ Exceptions broken: __CxxFrameHandler

ReactOS.Bugzilla at reactos.org ReactOS.Bugzilla at reactos.org
Thu Dec 29 01:33:56 CET 2005


http://www.reactos.org/bugzilla/show_bug.cgi?id=1212

           Summary: C++ Exceptions broken: __CxxFrameHandler
           Product: ReactOS
           Version: TRUNK
          Platform: x86 Hardware
        OS/Version: ReactOS
            Status: NEW
          Severity: normal
          Priority: P3
         Component: Win32
        AssignedTo: ros-bugs at reactos.org
        ReportedBy: w3seek at reactos.com
         QAContact: ros-bugs at reactos.org


__CxxFrameHandler in msvcrt.dll doesn't restore the eax register. An application
to exploit the bug (endless loop of exceptions) can be found here:
http://www.codeproject.com/tools/todolist2.asp

(lib\rtl\exception.c:29) RtlRaiseException(Status 005cfc2c)
(lib\rtl\exception.c:36) ExceptionAddress 7c8010a6
(./ntoskrnl/ke/exception.c:94) KiRaiseException
(lib\crt\wine\cppexcept.c:342) invalid frame magic e06d7363
(lib\crt\wine\cppexcept.c:342) invalid frame magic e06d7363
Unhandled exception
ExceptionCode:    e06d7363
Address:          7c8010a6   C:\ReactOS\system32\kernel32.dll
CS:EIP 1b:7c8010a6
DS 23 ES 23 FS 3b GS 0
EAX: 00000001   EBX: 005cfc2c   ECX: 005cf6a8
EDX: 00000023   EBP: 005cfc88   ESI: 005cf94c   ESP: 005cfc28
EDI: 005cfc2c   EFLAGS: 00000246
Frames:
   78000000+2abb       C:\ReactOS\system32\msvcrt.dll
     400000+5d023      C:\ToDoList.exe
     400000+5cf9b      C:\ToDoList.exe
     400000+415c0      C:\ToDoList.exe
   73dd0000+cf74       C:\ReactOS\system32\MFC42.DLL
   7c800000+1ec6b      C:\ReactOS\system32\kernel32.dll
(lib\crt\wine\cppexcept.c:342) invalid frame magic c0000027
(lib\crt\wine\cppexcept.c:342) invalid frame magic c0000027
Unhandled exception
ExceptionCode:    c0000005
Faulting Address:        5
Address:          780030da   C:\ReactOS\system32\msvcrt.dll
CS:EIP 1b:780030da
DS 23 ES 23 FS 3b GS 0
EAX: 00000001   EBX: 00000000   ECX: 0045cf84
EDX: 7c91e344   EBP: 005cf428   ESI: 00000000   ESP: 005cf428
EDI: 00000000   EFLAGS: 00000202
Frames:
   7c900000+1e330      C:\ReactOS\system32\ntdll.dll
   7c900000+1e304      C:\ReactOS\system32\ntdll.dll
   7c800000+2b9ab      C:\ReactOS\system32\kernel32.dll
   7c900000+1e330      C:\ReactOS\system32\ntdll.dll
   7c900000+1e304      C:\ReactOS\system32\ntdll.dll
   7c900000+822b       C:\ReactOS\system32\ntdll.dll
   78000000+2abb       C:\ReactOS\system32\msvcrt.dll
     400000+5d023      C:\ToDoList.exe
     400000+5cf9b      C:\ToDoList.exe
     400000+415c0      C:\ToDoList.exe
   73dd0000+cf74       C:\ReactOS\system32\MFC42.DLL
   7c800000+1ec6b      C:\ReactOS\system32\kernel32.dll
Unhandled exception
ExceptionCode:    c0000005
Faulting Address:        5
Address:          780030da   C:\ReactOS\system32\msvcrt.dll
CS:EIP 1b:780030da
DS 23 ES 23 FS 3b GS 0
EAX: 00000001   EBX: 00000000   ECX: 0045cf84
EDX: 7c91e344   EBP: 005cec2c   ESI: 00000000   ESP: 005cec2c
EDI: 00000000   EFLAGS: 00000202
Frames:
   7c900000+1e330      C:\ReactOS\system32\ntdll.dll
   7c900000+1e304      C:\ReactOS\system32\ntdll.dll
   7c800000+2b9ab      C:\ReactOS\system32\kernel32.dll
   7c900000+1e330      C:\ReactOS\system32\ntdll.dll
   7c900000+1e304      C:\ReactOS\system32\ntdll.dll
   7c900000+822b       C:\ReactOS\system32\ntdll.dll
   7c900000+1e330      C:\ReactOS\system32\ntdll.dll
   7c900000+1e304      C:\ReactOS\system32\ntdll.dll
   7c800000+2b9ab      C:\ReactOS\system32\kernel32.dll
   7c900000+1e330      C:\ReactOS\system32\ntdll.dll
   7c900000+1e304      C:\ReactOS\system32\ntdll.dll
   7c900000+822b       C:\ReactOS\system32\ntdll.dll
   78000000+2abb       C:\ReactOS\system32\msvcrt.dll
     400000+5d023      C:\ToDoList.exe
     400000+5cf9b      C:\ToDoList.exe
     400000+415c0      C:\ToDoList.exe
   73dd0000+cf74       C:\ReactOS\system32\MFC42.DLL
   7c800000+1ec6b      C:\ReactOS\system32\kernel32.dll

-- 
Configure bugmail: http://www.reactos.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
You are the QA contact for the bug, or are watching the QA contact.


More information about the Ros-bugs mailing list