OSDN Git Service

DO NOT MERGE AVRC: Add bound check for AVRC_EVT_APP_SETTING_CHANGE
authorHansong Zhang <hsz@google.com>
Fri, 11 May 2018 18:40:44 +0000 (11:40 -0700)
committerHansong Zhang <hsz@google.com>
Fri, 11 May 2018 18:40:44 +0000 (11:40 -0700)
Test: manual
Bug: 73782082
Change-Id: I4e384a2f8c0d8c4af03bd5865b2e907321419c86

stack/avrc/avrc_pars_ct.c

index b665b8d..018870a 100644 (file)
@@ -122,6 +122,10 @@ void avrc_parse_notification_rsp (UINT8 *p_stream, tAVRC_REG_NOTIF_RSP *p_rsp)
 
         case AVRC_EVT_APP_SETTING_CHANGE:
             BE_STREAM_TO_UINT8(p_rsp->param.player_setting.num_attr, p_stream);
+            if (p_rsp->param.player_setting.num_attr > AVRC_MAX_APP_SETTINGS) {
+                android_errorWriteLog(0x534e4554, "73782082");
+                p_rsp->param.player_setting.num_attr = AVRC_MAX_APP_SETTINGS;
+            }
             for (int index = 0; index < p_rsp->param.player_setting.num_attr; index++)
             {
                 BE_STREAM_TO_UINT8(p_rsp->param.player_setting.attr_id[index], p_stream);