[alsa-devel] [PATCH 1/1] ASoC: topology: Fix variable overflow in split_format

Marcin Pietraszko marcin.pietraszko at linux.intel.com
Mon Aug 26 13:51:41 CEST 2019


The 1 which was 32-bit long, when left-shifted by more than 31 caused
an overflow, which resulted in some of the formats being not supported.

Signed-off-by: Marcin Pietraszko <marcin.pietraszko at linux.intel.com>
---
 src/topology/pcm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/topology/pcm.c b/src/topology/pcm.c
index 5f586dc..00a35b9 100644
--- a/src/topology/pcm.c
+++ b/src/topology/pcm.c
@@ -321,7 +321,7 @@ static int split_format(struct snd_soc_tplg_stream_caps *caps, char *str)
 			return -EINVAL;
 		}
 
-		caps->formats |= 1 << format;
+		caps->formats |= 1ull << format;
 		s = strtok(NULL, ", ");
 		i++;
 	}
-- 
2.7.4



More information about the Alsa-devel mailing list