Struct "MiddlewareInfo" was expanded by a member variable "version".
Checks against this additional information still need to be implemented.
Fixed a possible mismatching on library names along the way.
#include <memory>
#include <cstring>
+#include "types.h"
namespace CommonAPI {
struct MiddlewareInfo {
const char* middlewareName_;
MiddlewareRuntimeLoadFunction getInstance_;
+ Version version_;
- MiddlewareInfo(const char* middlewareName, MiddlewareRuntimeLoadFunction middlewareRuntimeLoadFunction):
+ MiddlewareInfo(const char* middlewareName,
+ MiddlewareRuntimeLoadFunction middlewareRuntimeLoadFunction,
+ Version version):
middlewareName_(middlewareName),
- getInstance_(middlewareRuntimeLoadFunction) {}
+ getInstance_(middlewareRuntimeLoadFunction),
+ version_(version) {}
};
const char* fileNamePtr = libraryName.c_str();
while ((fileNamePtr = strchr(fileNamePtr + 1, '.'))) {
- if (strncmp(".so", fileNamePtr, 3) == 0) {
+ if (strncmp(".so\0", fileNamePtr, 4) == 0 || strncmp(".so.", fileNamePtr, 4) == 0) {
break;
}
}