Messages in this thread | | | Date | Thu, 25 Jun 2015 11:19:42 +0300 | From | Dan Carpenter <> | Subject | Re: [PATCH] staging: speakup: replace simple_strtoul() with kstrtoint() |
| |
Probably once you start writing a patch you will figure it out. :)
keymap_store() is a crap function. We have the cp1 pointer that points to the end of two back to back 3 char arrays. The name cp1 is because it is the second copy of the cp buffer which is a copy of the buf buffer. Since it is a backwards array we use cp1[-3] where normally we would say array[0] and cp1[-1] to mean the last element in the array.
We need around 6 characters in cp1, but we are only garaunteed to have 2. There is no checking.
Lots of checkpatch.pl warnings.
Just focus on cleaning up keymap_store() and hopefully at the end you can just delete spk_s2uchar().
regards, dan carpenter
| |