mirror of
https://github.com/openharmony/third_party_tinyalsa.git
synced 2026-07-19 15:24:22 -04:00
checking limits of frame counts
This commit is contained in:
@@ -525,6 +525,8 @@ int pcm_get_htimestamp(struct pcm *pcm, unsigned int *avail,
|
||||
* @param pcm A PCM handle.
|
||||
* @param data The audio sample array
|
||||
* @param frame_count The number of frames occupied by the sample array.
|
||||
* This value should not be greater than @ref TINYALSA_FRAMES_MAX
|
||||
* or INT_MAX.
|
||||
* @return On success, this function returns the number of frames written; otherwise, a negative number.
|
||||
* @ingroup libtinyalsa-pcm
|
||||
*/
|
||||
@@ -534,6 +536,9 @@ int pcm_writei(struct pcm *pcm, const void *data, unsigned int frame_count)
|
||||
|
||||
if (pcm->flags & PCM_IN)
|
||||
return -EINVAL;
|
||||
else if ((frame_count > TINYALSA_FRAMES_MAX)
|
||||
|| (frame_count > INT_MAX))
|
||||
return -EINVAL;
|
||||
|
||||
x.buf = (void*)data;
|
||||
x.frames = frame_count;
|
||||
@@ -573,6 +578,8 @@ int pcm_writei(struct pcm *pcm, const void *data, unsigned int frame_count)
|
||||
* @param pcm A PCM handle.
|
||||
* @param data The audio sample array
|
||||
* @param frame_count The number of frames occupied by the sample array.
|
||||
* This value should not be greater than @ref TINYALSA_FRAMES_MAX
|
||||
* or INT_MAX.
|
||||
* @return On success, this function returns the number of frames written; otherwise, a negative number.
|
||||
* @ingroup libtinyalsa-pcm
|
||||
*/
|
||||
@@ -582,6 +589,9 @@ int pcm_readi(struct pcm *pcm, void *data, unsigned int frame_count)
|
||||
|
||||
if (!(pcm->flags & PCM_IN))
|
||||
return -EINVAL;
|
||||
else if ((frame_count > TINYALSA_FRAMES_MAX)
|
||||
|| (frame_count > INT_MAX))
|
||||
return -EINVAL;
|
||||
|
||||
x.buf = data;
|
||||
x.frames = frame_count;
|
||||
|
||||
Reference in New Issue
Block a user