XkbSetDebuggingFlags - Change the values of any of the debug controls


Bool XkbSetDebuggingFlags (Display * display , unsigned int mask , unsigned int flags , char * msg , unsigned int ctrls_mask , unsigned int ctrls , unsigned int * ret_flags , unsigned int * ret_ctrls );


  • - display
        connection to X server
  • - mask
        mask selecting debug output flags to change
  • - flags
        values for debug output flags selected by mask
  • - msg
        message to print right now
  • - ctrls_mask
        mask selecting debug controls to change
  • - ctrls
        values for debug controls selected by ctrls_mask
  • - ret_flags
        resulting state of all debug output flags
  • - ret_ctrls
        resulting state of all debug controls


The debugging aids are intended for use primarily by Xkb implementors and are optional in any implementation. There are two bitmasks that may be used to control debugging. One bitmask controls the output of debugging information, and the other controls behavior. Both bitmasks are initially all zeros. To change the values of any of the debug controls, use XkbSetDebuggingFlags. XkbSetDebuggingFlagsmodifies the debug output flags as specified by maskand flags, modifies the debug controls flags as specified by ctrls_maskand ctrls, prints the message msg,and backfills ret_flagsand ret_ctrlswith the resulting debug output and debug controls flags. When bits are set in the debug output masks, maskand flags,Xkb prints debug information corresponding to each bit at appropriate points during its processing. The device to which the output is written is implementation-dependent, but is normally the same device to which X server error messages are directed; thus the bits that can be set in maskand flagsis implementation-specific. To turn on a debug output selection, set the bit for the output in the maskparameter and set the corresponding bit in the flagsparameter. To turn off event selection for an event, set the bit for the output in the maskparameter and do not set the corresponding bit in the flagsparameter. When bits are set in the debug controls masks, ctrls_maskand ctrls,Xkb modifies its behavior according to each controls bit. ctrls_maskand ctrls are related in the same way that maskand flagsare. The valid controls bits are defined in Table 1.

c s s
Table 1 Debug Control Masks
Debug Control Mask Value Meaning
XkbDF_DisableLocks (1 << 0) Disable actions that lock modifiers

XkbSetDebuggingFlagsreturns True if successful and False otherwise. The only protocol error it may generate is BadAlloc, if for some reason it is unable to allocate storage. XkbSetDebuggingFlagsis intended for developer use and may be disabled in production X servers. If it is disabled, XkbSetDebuggingFlagshas no effect and does not generate any protocol errors. The message in msgis written immediately. The device to which it is written is implementation dependent but is normally the same device where X server error messages are directed.


  • True
                   The XkbSetDebuggingFlagsfunction returns True when successful.
  • False
                   The XkbSetDebuggingFlagsfunction returns False when not successful.



               Unable to allocate storage