#include "MALLOC.h"#include "GetExceptionCode.h"#include "ExceptionMessage.h"#include "sciprint.h"Include dependency graph for ExceptionMessage.c:

Go to the source code of this file.
Functions | |
| char * | GetExceptionString (DWORD ExceptionCode) |
| void | ExceptionMessage (DWORD ExceptionCode, char *functionname) |
| void ExceptionMessage | ( | DWORD | ExceptionCode, | |
| char * | functionname | |||
| ) |
Definition at line 12 of file ExceptionMessage.c.
References FREE, GetExceptionString(), NULL, and sciprint().
Referenced by gw_arnoldi(), gw_boolean(), gw_cacsd0(), gw_cacsd1(), gw_cacsd2(), gw_cacsd3(), gw_core(), gw_cscicos(), gw_differential_equations1(), gw_differential_equations2(), gw_differential_equations3(), gw_differential_equations4(), gw_differential_equations5(), gw_differential_equations6(), gw_elementaries_functions(), gw_fftw(), gw_fileio(), gw_graphics(), gw_gui(), gw_integer(), gw_interpolation(), gw_io(), gw_linear_algebra(), gw_localization(), gw_metanet(), gw_optim(), gw_polynomials(), gw_pvm(), gw_randlib(), gw_scicos(), gw_signal(), gw_sound(), gw_sparse(), gw_special_functions1(), gw_special_functions2(), gw_statistics(), gw_symbolic(), gw_tclsci(), gw_time(), gw_wintools(), gwdatastructures1(), gwdatastructures2(), realmain(), and userlk().
00013 { 00014 char *ExceptionString=GetExceptionString(ExceptionCode); 00015 if (functionname) 00016 { 00017 sciprint("Warning !!!\nScilab has found a critical error (%s)\nwith \"%s\" function.\nSave your data and restart Scilab.\n",ExceptionString,functionname); 00018 } 00019 else 00020 { 00021 sciprint("Warning !!!\nScilab has found a critical error (%s).\nSave your data and restart Scilab.\n",ExceptionString); 00022 } 00023 if (ExceptionString) {FREE(ExceptionString);ExceptionString=NULL;} 00024 }
Here is the call graph for this function:

Here is the caller graph for this function:

| char* GetExceptionString | ( | DWORD | ExceptionCode | ) |
Definition at line 6 of file GetExceptionCode.c.
References MALLOC.
00007 { 00008 char *StringOuput=(char *)MALLOC((strlen("EXCEPTION_NONCONTINUABLE_EXCEPTION")+1)*sizeof(char)); 00009 00010 switch (ExceptionCode) 00011 { 00012 case EXCEPTION_ACCESS_VIOLATION: 00013 wsprintf(StringOuput,"%s","EXCEPTION_ACCESS_VIOLATION"); 00014 break; 00015 case EXCEPTION_DATATYPE_MISALIGNMENT: 00016 wsprintf(StringOuput,"%s","EXCEPTION_DATATYPE_MISALIGNMENT"); 00017 break; 00018 case EXCEPTION_ARRAY_BOUNDS_EXCEEDED: 00019 wsprintf(StringOuput,"%s","EXCEPTION_ARRAY_BOUNDS_EXCEEDED"); 00020 break; 00021 case EXCEPTION_IN_PAGE_ERROR: 00022 wsprintf(StringOuput,"%s","EXCEPTION_IN_PAGE_ERROR"); 00023 break; 00024 case EXCEPTION_GUARD_PAGE: 00025 wsprintf(StringOuput,"%s","EXCEPTION_GUARD_PAGE"); 00026 break; 00027 case EXCEPTION_STACK_OVERFLOW: 00028 wsprintf(StringOuput,"%s","EXCEPTION_STACK_OVERFLOW"); 00029 break; 00030 case EXCEPTION_ILLEGAL_INSTRUCTION: 00031 wsprintf(StringOuput,"%s","EXCEPTION_ILLEGAL_INSTRUCTION"); 00032 break; 00033 case EXCEPTION_PRIV_INSTRUCTION: 00034 wsprintf(StringOuput,"%s","EXCEPTION_PRIV_INSTRUCTION"); 00035 break; 00036 case EXCEPTION_INVALID_DISPOSITION: 00037 wsprintf(StringOuput,"%s","EXCEPTION_INVALID_DISPOSITION"); 00038 break; 00039 case EXCEPTION_NONCONTINUABLE_EXCEPTION: 00040 wsprintf(StringOuput,"%s","EXCEPTION_NONCONTINUABLE_EXCEPTION"); 00041 break; 00042 case EXCEPTION_BREAKPOINT: 00043 wsprintf(StringOuput,"%s","EXCEPTION_BREAKPOINT"); 00044 break; 00045 case EXCEPTION_SINGLE_STEP: 00046 wsprintf(StringOuput,"%s","EXCEPTION_SINGLE_STEP"); 00047 break; 00048 case EXCEPTION_INVALID_HANDLE: 00049 wsprintf(StringOuput,"%s","EXCEPTION_INVALID_HANDLE"); 00050 break; 00051 case EXCEPTION_INT_DIVIDE_BY_ZERO: 00052 wsprintf(StringOuput,"%s","EXCEPTION_INT_DIVIDE_BY_ZERO"); 00053 break; 00054 case EXCEPTION_INT_OVERFLOW: 00055 wsprintf(StringOuput,"%s","EXCEPTION_INT_OVERFLOW"); 00056 break; 00057 case EXCEPTION_FLT_DENORMAL_OPERAND: 00058 wsprintf(StringOuput,"%s","EXCEPTION_FLT_DENORMAL_OPERAND"); 00059 break; 00060 case EXCEPTION_FLT_DIVIDE_BY_ZERO: 00061 wsprintf(StringOuput,"%s","EXCEPTION_FLT_DIVIDE_BY_ZERO"); 00062 break; 00063 case EXCEPTION_FLT_INEXACT_RESULT: 00064 wsprintf(StringOuput,"%s","EXCEPTION_FLT_INEXACT_RESULT"); 00065 break; 00066 case EXCEPTION_FLT_INVALID_OPERATION: 00067 wsprintf(StringOuput,"%s","EXCEPTION_FLT_INVALID_OPERATION"); 00068 break; 00069 case EXCEPTION_FLT_OVERFLOW: 00070 wsprintf(StringOuput,"%s","EXCEPTION_FLT_OVERFLOW"); 00071 break; 00072 case EXCEPTION_FLT_STACK_CHECK: 00073 wsprintf(StringOuput,"%s","EXCEPTION_FLT_STACK_CHECK"); 00074 break; 00075 case EXCEPTION_FLT_UNDERFLOW: 00076 wsprintf(StringOuput,"%s","EXCEPTION_FLT_UNDERFLOW"); 00077 break; 00078 default: 00079 wsprintf(StringOuput,"%s","unknown exception"); 00080 break; 00081 } 00082 00083 return StringOuput; 00084 }
1.5.1