if (!strDevicePath || !strcmp(bsdPath, strDevicePath))
{
// on darwin, the device path is the same as the comm path.
- if (iFound == 0 || strcmp(deviceList[iFound].comm, bsdPath))
+ if (iFound == 0 || strcmp(deviceList[iFound-1].comm, bsdPath))
{
- snprintf(deviceList[iFound ].path, sizeof(deviceList[iFound].path), "%s", bsdPath);
- snprintf(deviceList[iFound++].comm, sizeof(deviceList[iFound].path), "%s", bsdPath);
+ snprintf(deviceList[iFound].path, sizeof(deviceList[iFound].path), "%s", bsdPath);
+ snprintf(deviceList[iFound].comm, sizeof(deviceList[iFound].path), "%s", bsdPath);
+ iFound++;
}
}
}
if (!strDevicePath || !strcmp(strPath.c_str(), strDevicePath))
{
CStdString strComm(strPath);
- if (FindComPort(strComm) && (iFound == 0 || strcmp(deviceList[iFound].comm, strComm.c_str())))
+ if (FindComPort(strComm) && (iFound == 0 || strcmp(deviceList[iFound-1].comm, strComm.c_str())))
{
- snprintf(deviceList[iFound ].path, sizeof(deviceList[iFound].path), "%s", strPath.c_str());
- snprintf(deviceList[iFound++].comm, sizeof(deviceList[iFound].path), "%s", strComm.c_str());
+ snprintf(deviceList[iFound].path, sizeof(deviceList[iFound].path), "%s", strPath.c_str());
+ snprintf(deviceList[iFound].comm, sizeof(deviceList[iFound].path), "%s", strComm.c_str());
+ iFound++;
}
}
}
for (i = 0; i < 8; ++i)
{
(void)snprintf(devicePath, sizeof(devicePath), "/dev/ttyU%d", i);
+ if (strDevicePath && strcmp(devicePath, strDevicePath) != 0)
+ continue;
if (!access(devicePath, 0))
{
- snprintf(deviceList[iFound ].path, sizeof(deviceList[iFound].path), "%s", devicePath);
- snprintf(deviceList[iFound++].comm, sizeof(deviceList[iFound].path), "%s", devicePath);
+ snprintf(deviceList[iFound].path, sizeof(deviceList[iFound].path), "%s", devicePath);
+ snprintf(deviceList[iFound].comm, sizeof(deviceList[iFound].path), "%s", devicePath);
+ iFound++;
}
}
#else
//silence "unused" warnings
- void *tmp = (void*)deviceList;
- tmp = (void *)strDevicePath;
+ ((void)deviceList);
+ ((void) strDevicePath);
#endif
- iBufSize = 0; /* silence "unused" warning on linux/osx */
+ iBufSize = 0; if(!iBufSize){} /* silence "unused" warning on linux/osx */
return iFound;
}