ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/Unix/sigsegv.cpp
(Generate patch)

Comparing BasiliskII/src/Unix/sigsegv.cpp (file contents):
Revision 1.49 by gbeauche, 2004-12-02T23:29:52Z vs.
Revision 1.50 by gbeauche, 2004-12-11T13:07:38Z

# Line 754 | Line 754 | static bool ix86_skip_instruction(unsign
754  
755          if (eip == 0)
756                  return false;
757 + #ifdef _WIN32
758 +        if (IsBadCodePtr((FARPROC)eip))
759 +                return false;
760 + #endif
761          
762          transfer_type_t transfer_type = SIGSEGV_TRANSFER_UNKNOWN;
763          transfer_size_t transfer_size = SIZE_LONG;
# Line 1514 | Line 1518 | static bool handle_badaccess(SIGSEGV_FAU
1518                  break;
1519   #endif
1520          case SIGSEGV_RETURN_FAILURE:
1521 <                return false;
1521 >                // We can't do anything with the fault_address, dump state?
1522 >                if (sigsegv_state_dumper != 0)
1523 >                        sigsegv_state_dumper(fault_address, fault_instruction);
1524 >                break;
1525          }
1519        
1520        // We can't do anything with the fault_address, dump state?
1521        if (sigsegv_state_dumper != 0)
1522                sigsegv_state_dumper(fault_address, fault_instruction);
1526  
1527          return false;
1528   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines