Main Page   Modules   Data Structures   Globals   Appendix  

Error Handling
[MISC API]

Error handling of the m17n library. More...

Enumerations

enum  MErrorCode {
  MERROR_NONE,
  MERROR_OBJECT,
  MERROR_SYMBOL,
  MERROR_MTEXT,
  MERROR_TEXTPROP,
  MERROR_CHAR,
  MERROR_CHARTABLE,
  MERROR_CHARSET,
  MERROR_CODING,
  MERROR_RANGE,
  MERROR_LANGUAGE,
  MERROR_LOCALE,
  MERROR_PLIST,
  MERROR_MISC,
  MERROR_WIN,
  MERROR_X,
  MERROR_FRAME,
  MERROR_FACE,
  MERROR_DRAW,
  MERROR_FLT,
  MERROR_FONT,
  MERROR_FONTSET,
  MERROR_FONT_OTF,
  MERROR_FONT_X,
  MERROR_FONT_FT,
  MERROR_IM,
  MERROR_DB,
  MERROR_IO,
  MERROR_DEBUG,
  MERROR_MEMORY,
  MERROR_GD,
  MERROR_MAX
}
 Enumeration for error code of the m17n library. More...

Variables

int merror_code
 External variable to hold error code of the m17n library.
void(* m17n_memory_full_handler )(enum MErrorCode err)
 Memory allocation error handler.

Detailed Description

Error handling of the m17n library.

There are two types of errors that may happen in a function of the m17n library.

The first type is argument errors. When a library function is called with invalid arguments, it returns a value that indicates error and at the same time sets the external variable merror_code to a non-zero integer.

The second type is memory allocation errors. When the required amount of memory is not available on the system, m17n library functions call a function pointed to by the external variable m17n_memory_full_handler. The default value of the variable is a pointer to the default_error_handle() function, which just calls exit().


Enumeration Type Documentation

enum MErrorCode

Enumeration for error code of the m17n library.

Enumeration for error code of the m17n library.

When a library function is called with an invalid argument, it sets the external variable merror_code to one of these values. All the error codes are positive integers.

When a memory allocation error happens, the function pointed to by the external variable m17n_memory_full_handler is called with one of these values as an argument.


Variable Documentation

Memory allocation error handler.

The external variable m17n_memory_full_handler holds a pointer to the function to call when a library function failed to allocate memory. err is one of enum MErrorCode indicating in which function the error occurred.

This variable initially points a function that simply calls the exit () function with err as an argument.

An application program that needs a different error handling can change this variable to point a proper function.

External variable to hold error code of the m17n library.

The external variable merror_code holds an error code of the m17n library. When a library function is called with an invalid argument, it sets this variable to one of enum MErrorCode.

This variable initially has the value 0.


Top of this page

Main Page   Modules   Data Structures   Globals   Appendix  

mulemark