1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
|
diff -ru ImageMagick-7.1.1-15.orig/MagickCore/module.c ImageMagick-7.1.1-15/MagickCore/module.c
--- ImageMagick-7.1.1-15.orig/MagickCore/module.c 2023-07-30 13:49:52.000000000 +0200
+++ ImageMagick-7.1.1-15/MagickCore/module.c 2023-08-24 18:06:47.065366224 +0200
@@ -66,10 +66,6 @@
#include "MagickCore/utility.h"
#include "MagickCore/utility-private.h"
#if defined(MAGICKCORE_MODULES_SUPPORT)
-#if defined(MAGICKCORE_LTDL_DELEGATE)
-#include "ltdl.h"
-typedef lt_dlhandle ModuleHandle;
-#else
+#include <dlfcn.h>
typedef void *ModuleHandle;
-#endif
@@ -77,7 +74,7 @@
Define declarations.
*/
#if defined(MAGICKCORE_LTDL_DELEGATE)
-# define ModuleGlobExpression "*.la"
+# define ModuleGlobExpression "*.so"
#else
# if defined(_DEBUG)
# define ModuleGlobExpression "IM_MOD_DB_*.dll"
@@ -893,11 +890,6 @@
if (status == MagickFalse)
ThrowFatalException(ResourceLimitFatalError,
"MemoryAllocationFailed");
-#if defined(MAGICKCORE_LTDL_DELEGATE)
- if (lt_dlinit() != 0)
- ThrowFatalException(ModuleFatalError,
- "UnableToInitializeModuleLoader");
-#endif
module_list=splay_tree;
}
UnlockSemaphoreInfo(module_semaphore);
@@ -994,11 +986,11 @@
/*
Open the module.
*/
- handle=(ModuleHandle) lt_dlopen(path);
+ handle=(ModuleHandle) dlopen(path, RTLD_NOW);
if (handle == (ModuleHandle) NULL)
{
(void) ThrowMagickException(exception,GetMagickModule(),ModuleError,
- "UnableToLoadModule","'%s': %s",name,lt_dlerror());
+ "UnableToLoadModule","'%s': %s",name,dlerror());
return(MagickFalse);
}
/*
@@ -1014,10 +1006,10 @@
Execute the module.
*/
ClearMagickException(exception);
- image_filter=(ImageFilterHandler *) lt_dlsym(handle,name);
+ image_filter=(ImageFilterHandler *) dlsym(handle,name);
if (image_filter == (ImageFilterHandler *) NULL)
(void) ThrowMagickException(exception,GetMagickModule(),ModuleError,
- "UnableToLoadModule","'%s': %s",name,lt_dlerror());
+ "UnableToLoadModule","'%s': %s",name,dlerror());
else
{
size_t
@@ -1038,9 +1030,9 @@
/*
Close the module.
*/
- if (lt_dlclose(handle) != 0)
+ if (dlclose(handle) != 0)
(void) ThrowMagickException(exception,GetMagickModule(),ModuleWarning,
- "UnableToCloseModule","'%s': %s",name,lt_dlerror());
+ "UnableToCloseModule","'%s': %s",name,dlerror());
return(exception->severity < ErrorException ? MagickTrue : MagickFalse);
}
@@ -1285,11 +1277,11 @@
*/
(void) LogMagickEvent(ModuleEvent,GetMagickModule(),
"Opening module at path \"%s\"",path);
- handle=(ModuleHandle) lt_dlopen(path);
+ handle=(ModuleHandle) dlopen(path, RTLD_NOW);
if (handle == (ModuleHandle) NULL)
{
(void) ThrowMagickException(exception,GetMagickModule(),ModuleError,
- "UnableToLoadModule","'%s': %s",path,lt_dlerror());
+ "UnableToLoadModule","'%s': %s",path,dlerror());
return(MagickFalse);
}
/*
@@ -1303,11 +1295,11 @@
Define RegisterFORMATImage method.
*/
TagToModuleName(module_name,"Register%sImage",name);
- module_info->register_module=(size_t (*)(void)) lt_dlsym(handle,name);
+ module_info->register_module=(size_t (*)(void)) dlsym(handle,name);
if (module_info->register_module == (size_t (*)(void)) NULL)
{
(void) ThrowMagickException(exception,GetMagickModule(),ModuleError,
- "UnableToRegisterImageFormat","'%s': %s",module_name,lt_dlerror());
+ "UnableToRegisterImageFormat","'%s': %s",module_name,dlerror());
return(MagickFalse);
}
(void) LogMagickEvent(ModuleEvent,GetMagickModule(),
@@ -1317,11 +1309,11 @@
Define UnregisterFORMATImage method.
*/
TagToModuleName(module_name,"Unregister%sImage",name);
- module_info->unregister_module=(void (*)(void)) lt_dlsym(handle,name);
+ module_info->unregister_module=(void (*)(void)) dlsym(handle,name);
if (module_info->unregister_module == (void (*)(void)) NULL)
{
(void) ThrowMagickException(exception,GetMagickModule(),ModuleError,
- "UnableToRegisterImageFormat","'%s': %s",module_name,lt_dlerror());
+ "UnableToRegisterImageFormat","'%s': %s",module_name,dlerror());
return(MagickFalse);
}
(void) LogMagickEvent(ModuleEvent,GetMagickModule(),
@@ -1464,7 +1464,7 @@
if (IsEventLogging() != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",tag);
#if defined(MAGICKCORE_LTDL_DELEGATE)
- (void) FormatLocaleString(name,MagickPathExtent,"%s.la",tag);
+ (void) FormatLocaleString(name,MagickPathExtent,"%s.so",tag);
(void) LocaleLower(name);
#else
#if defined(MAGICKCORE_WINDOWS_SUPPORT)
@@ -1518,7 +1518,7 @@
#elif !defined(MAGICKCORE_LTDL_DELEGATE)
(void) FormatLocaleString(name,MagickPathExtent,"%s.dll",tag);
#else
- (void) FormatLocaleString(name,MagickPathExtent,"%s.la",tag);
+ (void) FormatLocaleString(name,MagickPathExtent,"%s.so",tag);
#endif
}
@@ -1624,10 +1616,10 @@
if (module_info->unregister_module == NULL)
return(MagickTrue);
module_info->unregister_module();
- if (lt_dlclose((ModuleHandle) module_info->handle) != 0)
+ if (dlclose((ModuleHandle) module_info->handle) != 0)
{
(void) ThrowMagickException(exception,GetMagickModule(),ModuleWarning,
- "UnableToCloseModule","'%s': %s",module_info->tag,lt_dlerror());
+ "UnableToCloseModule","'%s': %s",module_info->tag,dlerror());
return(MagickFalse);
}
return(MagickTrue);
diff -ru ImageMagick-7.1.1-15.orig/MagickCore/opencl.c ImageMagick-7.1.1-15/MagickCore/opencl.c
--- ImageMagick-7.1.1-15.orig/MagickCore/opencl.c 2023-07-30 13:49:52.000000000 +0200
+++ ImageMagick-7.1.1-15/MagickCore/opencl.c 2023-08-24 18:03:15.806759171 +0200
@@ -2610,7 +2610,7 @@
if (openCL_library != (MagickLibrary *) NULL)
{
if (openCL_library->library != (void *) NULL)
- (void) lt_dlclose(openCL_library->library);
+ (void) dlclose(openCL_library->library);
openCL_library=(MagickLibrary *) RelinquishMagickMemory(openCL_library);
}
}
Only in ImageMagick-7.1.1-15/MagickCore: opencl.c.orig
|