Skip to content

Commit d8be5a9

Browse files
falkTXfalkTX
authored andcommitted
Add get_lib_name()
1 parent e5b1716 commit d8be5a9

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

src/loadlib.cc

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ VstVoidFunc x_dlfunc (void* handle, const char* symbol)
8383
#endif
8484
}
8585

86+
static char libname[1024] = "";
8687
static char libpath[1024] = "";
8788

8889
#ifdef WIN32
@@ -91,6 +92,11 @@ BOOL WINAPI DllMain (HINSTANCE handle, DWORD fdwReason, LPVOID lpvReserved)
9192
{
9293
if (fdwReason == 1) {
9394
GetModuleFileNameA (handle, libpath, 1024);
95+
96+
strcpy (libname, libpath);
97+
char* dot = strrchr (libname, '.');
98+
if (dot) { *dot = 0; }
99+
94100
char* sep = strrchr (libpath, '\\');
95101
if (sep) { *sep = 0; }
96102
}
@@ -105,11 +111,20 @@ static void on_load(void) {
105111
dladdr ((void *)on_load, &dl_info);
106112
strncpy (libpath, dl_info.dli_fname, 1024);
107113
libpath[1023] = 0;
114+
115+
strcpy (libname, libpath);
116+
char* dot = strrchr (libname, '.');
117+
if (dot) { *dot = 0; }
118+
108119
char* sep = strrchr (libpath, '/');
109120
if (sep) { *sep = 0; }
110121
}
111122
#endif
112123

124+
const char* get_lib_name () {
125+
return libname;
126+
}
127+
113128
const char* get_lib_path () {
114129
return libpath;
115130
}

src/loadlib.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,6 @@ VstVoidFunc x_dlfunc (void* handle, const char* symbol);
2424
void* open_lv2_lib (const char* lib_path, bool persist = false);
2525
void close_lv2_lib (void*);
2626

27+
const char* get_lib_name ();
2728
const char* get_lib_path ();
2829
#endif

0 commit comments

Comments
 (0)