]>
Commit | Line | Data |
---|---|---|
109876d2 JP |
1 | --- domoticz-2021.1/hardware/plugins/DelayedLink.h.orig 2021-04-17 17:50:55.000000000 +0200 |
2 | +++ domoticz-2021.1/hardware/plugins/DelayedLink.h 2021-04-20 12:36:46.238826640 +0200 | |
fbf2e314 JP |
3 | @@ -155,21 +155,9 @@ |
4 | shared_lib_ = nullptr; | |
5 | if (!shared_lib_) { | |
6 | #ifdef WIN32 | |
7 | - if (!shared_lib_) shared_lib_ = LoadLibrary("python310.dll"); | |
9a71e0cb | 8 | - if (!shared_lib_) shared_lib_ = LoadLibrary("python39.dll"); |
86ad2462 | 9 | - if (!shared_lib_) shared_lib_ = LoadLibrary("python38.dll"); |
9dda6696 AM |
10 | - if (!shared_lib_) shared_lib_ = LoadLibrary("python37.dll"); |
11 | - if (!shared_lib_) shared_lib_ = LoadLibrary("python36.dll"); | |
12 | - if (!shared_lib_) shared_lib_ = LoadLibrary("python35.dll"); | |
13 | - if (!shared_lib_) shared_lib_ = LoadLibrary("python34.dll"); | |
86ad2462 | 14 | + if (!shared_lib_) shared_lib_ = LoadLibrary("python.dll"); |
9dda6696 | 15 | #else |
fbf2e314 | 16 | - if (!shared_lib_) FindLibrary("python3.10", true); |
9a71e0cb | 17 | - if (!shared_lib_) FindLibrary("python3.9", true); |
86ad2462 | 18 | - if (!shared_lib_) FindLibrary("python3.8", true); |
9dda6696 AM |
19 | - if (!shared_lib_) FindLibrary("python3.7", true); |
20 | - if (!shared_lib_) FindLibrary("python3.6", true); | |
21 | - if (!shared_lib_) FindLibrary("python3.5", true); | |
22 | - if (!shared_lib_) FindLibrary("python3.4", true); | |
109876d2 | 23 | + if (!shared_lib_) FindLibrary(PYTHON_LIBDIR, false); |
10f7a92e AM |
24 | #ifdef __FreeBSD__ |
25 | if (!shared_lib_) FindLibrary("python3.7m", true); | |
26 | if (!shared_lib_) FindLibrary("python3.6m", true); | |
109876d2 JP |
27 | @@ -355,34 +327,20 @@ |
28 | else | |
29 | { | |
30 | std::vector<std::string> entries; | |
31 | - DirectoryListing(entries, sLibrary, true, false); | |
32 | - for (const auto &entry : entries) | |
9dda6696 | 33 | - { |
109876d2 JP |
34 | - if (shared_lib_) |
35 | - { | |
36 | - break; | |
37 | - } | |
38 | - | |
39 | - library = sLibrary + entry + "/"; | |
9dda6696 AM |
40 | - FindLibrary(library, false); |
41 | - } | |
109876d2 JP |
42 | - |
43 | - entries.clear(); | |
44 | DirectoryListing(entries, sLibrary, false, true); | |
45 | for (const auto &filename : entries) | |
9dda6696 | 46 | { |
109876d2 JP |
47 | - if (shared_lib_) |
48 | - { | |
49 | - break; | |
50 | - } | |
9dda6696 | 51 | |
109876d2 JP |
52 | if (filename.length() > 12 && |
53 | filename.compare(0, 11, "libpython3.") == 0 && | |
54 | - filename.compare(filename.length() - 3, 3, ".so") == 0 && | |
55 | - filename.compare(filename.length() - 6, 6, ".dylib") == 0) | |
56 | + filename.find(".so", 10) != std::string::npos) | |
57 | { | |
58 | - library = sLibrary + filename; | |
59 | + library = sLibrary + "/" + filename; | |
60 | shared_lib_ = dlopen(library.c_str(), RTLD_LAZY | RTLD_GLOBAL); | |
61 | + if (shared_lib_) | |
62 | + { | |
63 | + break; | |
64 | + } | |
65 | } | |
9dda6696 | 66 | } |
109876d2 | 67 | } |