Unfortunately KEY_COFFEE is the canonical name in linux/input.h, and the more
sensible KEY_SCREENLOCK is an alias. Manually override this particular case,
since it's better to have "screenlock" in keymaps.
However, we still keep the automatic filtering for the general case, to avoid
introducing this problem again when input.h changes.
More than one key name was mapped to the same key, due to linux/input.h
defining some aliases (in particular, KEY_HANGUEL, KEY_SCREENLOCK,
KEY_MIN_INTERESTING). These caused hash table collisions.
Changed the generation of the tables to ignore these aliases, and updated all
keymaps to use the canonical name.
This was detected by llvm-clang-analyzer. Thanks to Lennart Poettering for
doing these checks and pointing this out!
https://launchpad.net/bugs/426647
extras/modem-modeswitch/61-mobile-action.rules: Match on device class/subclass
"00" as well, some devices like the Vodafone K3565-Z have that.
https://launchpad.net/bugs/281335
POSIX.1-2001 declares usleep() function obsolete and POSIX.1-2008
removes it.
[Kay Sievers]
- include time.h
- use const for timespec
- scsi_id: drop rand() in retry loop
- modem-probe: rename msuspend() to msleep()
This reverts commit 66bf63c05c.
Further debugging in https://launchpad.net/bugs/178860 showed that for some
weird reason the correct key codes already come out of the "Video Bus" input
device, and the previous commit would cause them to appear a second time
through the standard keyboard device.
This is a kernel bug in the end, but let's not break working things
prematurely.
Some Micro-Star boards apparently have mixed case vendor, instead of all-caps.
Update the glob to catch all such cases.
https://launchpad.net/bugs/178860
modem-modeswitch does not fully work on ZTE MF6xx modems, their fake CD-ROMs
need to be properly ejected in order for the actual modem to appear. Add udev
rule for this device (19d2:2000 in CD-ROM mode).
https://launchpad.net/bugs/281335
Fix spelling in docbook comments, code comments, and a local variable
name. Thanks to "ispell -h" for docbook HTML and "scspell" for source
code.
Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Since gtk-mkhtml is executed in a sub-directory of the build directory, and
make does not know of that, the $(buildir) variable will still be "." and
the $(srcdir) will not properly be found. For this reason, use the absolute
variants for the two functions, which won't be changing.
Since the check-keymaps.sh script checks for validity the source directory
and the Makefile.am file, instead of running it during user-oriented “make
check”, run it during developed-oriented “make distcheck”.
An invalid keymap will abort the execution which will prevent shipping
an incomplete Makefile.am.
To properly support out-of-source builds, pass as single parameter to the
test the path to the source directory.
Instead of using multiple recursive Makefile.am files, use a single
Makefile.am that sets and builds all the basic suite of libraries and
binaries for udev. This reduces the number of files in the source tree, and
also reduces drastically the build time when using parallel-make.
With this setup, all the compile steps will be executed in parallel, and
just the linking stage will be (partially) serialised on the libraries
creation.
We must never access random devices in /dev which do not belong to
the event we are handling. Hard-coding /dev/hidrawX, and looping over all
devices is absolutely not acceptable --> hook into hidraw events.
We can not relay on (rather random) properties merged into the parent
device by earlier rules --> use libudev to find the sibling device
with a matching interface.
Libusb does not fit into udev's use case. We never want want to scan
and open() all usb devices in the system, just to find the device
we are already handling the event for --> put all the stupid scanning
into a single function and prepare for a fixed libusb or drop it later.
The keymap table has some holes in it, which caused the interactive mode to
crash for unknown keys. In these cases, print the numeric key code instead.
What's odd is that this is a huawei modem, not an option modem, so one would
expect it to work better with usb_modeswitch and it's -H (huawei) mode - but
that's not the case, I've tested that as well.
https://launchpad.net/bugs/401655