From d9d105a0ce6bbaa8d1d1cf70a255612a5dd33701 Mon Sep 17 00:00:00 2001 From: Alex Ray Date: Wed, 11 Sep 2013 16:20:07 -0700 Subject: consumer_ir: add array length to get carrier freq Change-Id: Iefb424db6f16ffefa40da56c765c9b7a24bea397 --- modules/consumerir/consumerir.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'modules/consumerir') diff --git a/modules/consumerir/consumerir.c b/modules/consumerir/consumerir.c index 6a032a7..83eba75 100644 --- a/modules/consumerir/consumerir.c +++ b/modules/consumerir/consumerir.c @@ -54,10 +54,13 @@ static int consumerir_get_num_carrier_freqs(struct consumerir_device *dev) } static int consumerir_get_carrier_freqs(struct consumerir_device *dev, - consumerir_freq_range_t *ranges) + size_t len, consumerir_freq_range_t *ranges) { - memcpy(ranges, consumerir_freqs, sizeof(consumerir_freqs)); - return ARRAY_SIZE(consumerir_freqs); + size_t to_copy = ARRAY_SIZE(consumerir_freqs); + + to_copy = len < to_copy ? len : to_copy; + memcpy(ranges, consumerir_freqs, to_copy * sizeof(consumerir_freq_range_t)); + return to_copy; } static int consumerir_close(hw_device_t *dev) -- cgit v1.1