Merge "USB HAL: Fix infinite loop."
This commit is contained in:
commit
15558bf93b
1 changed files with 12 additions and 7 deletions
|
@ -176,17 +176,22 @@ rescan:
|
|||
ports++;
|
||||
}
|
||||
}
|
||||
|
||||
if (ports == 0) {
|
||||
closedir(dp);
|
||||
return Status::SUCCESS;
|
||||
}
|
||||
|
||||
names.resize(ports);
|
||||
rewinddir(dp);
|
||||
|
||||
while ((ep = readdir (dp))) {
|
||||
/* Check to see if new ports were added since the first pass. */
|
||||
if (current >= ports) {
|
||||
rewinddir(dp);
|
||||
goto rescan;
|
||||
}
|
||||
|
||||
if (ep->d_type == DT_LNK) {
|
||||
/* Check to see if new ports were added since the first pass. */
|
||||
if (current >= ports) {
|
||||
rewinddir(dp);
|
||||
goto rescan;
|
||||
}
|
||||
names[current++] = ep->d_name;
|
||||
}
|
||||
}
|
||||
|
@ -238,7 +243,7 @@ Status getPortStatusHelper (hidl_vec<PortStatus>& currentPortStatus) {
|
|||
|
||||
if (result == Status::SUCCESS) {
|
||||
currentPortStatus.resize(names.size());
|
||||
for(std::vector<std::string>::size_type i = 0; i != names.size(); i++) {
|
||||
for(std::vector<std::string>::size_type i = 0; i < names.size(); i++) {
|
||||
ALOGI("%s", names[i].c_str());
|
||||
currentPortStatus[i].portName = names[i];
|
||||
|
||||
|
|
Loading…
Reference in a new issue