[PATCH 9/9] conf: remove dead code from get_hexachar

Jaroslav Kysela perex at perex.cz
Sun Dec 27 13:25:52 CET 2020


Dne 27. 12. 20 v 9:37 Takashi Iwai napsal(a):
> On Sat, 26 Dec 2020 22:35:47 +0100,
> Alex Henrie wrote:
>>
>> Signed-off-by: Alex Henrie <alexhenrie24 at gmail.com>
>> ---
>>  src/conf.c | 9 +--------
>>  1 file changed, 1 insertion(+), 8 deletions(-)
>>
>> diff --git a/src/conf.c b/src/conf.c
>> index 44d1bfde..970ad643 100644
>> --- a/src/conf.c
>> +++ b/src/conf.c
>> @@ -877,16 +877,9 @@ static int get_nonwhite(input_t *input)
>>  
>>  static inline int get_hexachar(input_t *input)
>>  {
>> -	int c, num = 0;
>> -
>> +	int c;
>>  	c = get_char(input);
>> -	if (c >= '0' && c <= '9') num |= (c - '0') << 4;
>> -	else if (c >= 'a' && c <= 'f') num |= (c - 'a') << 4;
>> -	else if (c >= 'A' && c <= 'F') num |= (c - 'A') << 4;
>>  	c = get_char(input);
>> -	if (c >= '0' && c <= '9') num |= (c - '0') << 0;
>> -	else if (c >= 'a' && c <= 'f') num |= (c - 'a') << 0;
>> -	else if (c >= 'A' && c <= 'F') num |= (c - 'A') << 0;
>>  	return c;
> 
> The current code is obviously wrong and the suggested fix goes even to
> a wronger direction :)  The function should return num instead.
> 
> I wonder how this did't hit any problem, so far.  Maybe 0x prefix was
> rarely used, fortunately.

It's a bit recent code. I fixed the return value now. It's for \xFF not for
0xFF prefix. Thank you for your investigation, Alex.

					Jaroslav

-- 
Jaroslav Kysela <perex at perex.cz>
Linux Sound Maintainer; ALSA Project; Red Hat, Inc.


More information about the Alsa-devel mailing list