From 6c4d80f93a89e83588443f3010dc0861e3a590e3 Mon Sep 17 00:00:00 2001 From: lllucius Date: Mon, 11 Nov 2013 01:12:30 +0000 Subject: [PATCH] Fix running on Windows 95. Creating the symbolic link will fail on 95, but it only matters if we state is saved...which Audacity doesn't do (yet). --- lib-src/lv2/windows/lilv_config.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/lib-src/lv2/windows/lilv_config.h b/lib-src/lv2/windows/lilv_config.h index 43cb89cc0..633b6884f 100755 --- a/lib-src/lv2/windows/lilv_config.h +++ b/lib-src/lv2/windows/lilv_config.h @@ -12,4 +12,24 @@ #define LILV_DIR_SEP "\\" #define LILV_DEFAULT_LV2_PATH "%APPDATA%\\LV2;%COMMONPROGRAMFILES%\\LV2" +#include +#undef CreateSymbolicLink +inline BOOLEAN CreateSymbolicLink(LPCSTR lpSymlinkFileName, + LPCSTR lpTargetFileName, + DWORD dwFlags) +{ + typedef BOOLEAN (WINAPI *CSL)(LPCSTR lpSymlinkFileName, + LPCSTR lpTargetFileName, + DWORD dwFlags); + + CSL *symlink = (CSL *) GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), + TEXT("CreateSymbolicLinkA")); + if (symlink) + { + return (*symlink)(lpSymlinkFileName, lpTargetFileName, dwFlags); + } + + return FALSE; +} + #endif /* W_LILV_CONFIG_H_WAF */