Stop scanning the PDT if we find an specific function when ScanPDT's endFunc parameter is set
diff --git a/rmidevice/rmidevice.cpp b/rmidevice/rmidevice.cpp
index 0b85b55..8e0b25e 100644
--- a/rmidevice/rmidevice.cpp
+++ b/rmidevice/rmidevice.cpp
@@ -253,7 +253,7 @@
funcIter->GetQueryBase());
}
-int RMIDevice::ScanPDT()
+int RMIDevice::ScanPDT(int endFunc)
{
int rc;
unsigned int page;
@@ -283,6 +283,9 @@
m_functionList.push_back(func);
found = true;
+
+ if (func.GetFunctionNumber() == endFunc)
+ return 0;
}
if (!found)