qcdm: don't segfault getting number of log items

Not sure how this worked before at all.
This commit is contained in:
Dan Williams
2012-01-10 18:14:40 -06:00
parent 86e3ab1540
commit ff838972cf

View File

@@ -1157,6 +1157,7 @@ qcdm_cmd_ext_logmask_new (char *buf,
memset (cmd, 0, sizeof (*cmd)); memset (cmd, 0, sizeof (*cmd));
cmd->code = DIAG_CMD_EXT_LOGMASK; cmd->code = DIAG_CMD_EXT_LOGMASK;
if (items) {
for (i = 0; items[i] > 0; i++) { for (i = 0; items[i] > 0; i++) {
qcdm_warn_if_fail (items[i] > 0); qcdm_warn_if_fail (items[i] > 0);
qcdm_warn_if_fail (items[i] < 4095); qcdm_warn_if_fail (items[i] < 4095);
@@ -1165,6 +1166,7 @@ qcdm_cmd_ext_logmask_new (char *buf,
if (items[i] > highest) if (items[i] > highest)
highest = items[i]; highest = items[i];
} }
}
qcdm_return_val_if_fail (highest <= maxlog, 0); qcdm_return_val_if_fail (highest <= maxlog, 0);
cmd->len = htole16 (maxlog); cmd->len = htole16 (maxlog);