If any of the buttons to be altered are logically in the down state, XSetPointerMapping returns MappingBusy , and the mapping is not changed. XSetPointerMapping can generate a BadValue error. The XGetPointerMapping function returns the current mapping of the pointer. Pointer buttons are numbered starting from one. XGetPointerMapping returns the number of physical buttons actually on the pointer.
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error.