applied patch #1912699 - "Pinned" / always loaded plugins support
this patch also adds plugin_api_version to exec_flags so your plug-in can now tell if features it needs are available more plug-ins that need this will be converted once the patch to make both the stubs and the plug-ins use the same header file is in place git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5809 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
9ac4ab0891
commit
4c30821aa5
10 changed files with 173 additions and 7 deletions
|
@ -23,6 +23,7 @@
|
|||
#include "ui.h"
|
||||
#include "components.h"
|
||||
#include "exec.h"
|
||||
#include "plugin.h"
|
||||
#include "lang.h"
|
||||
#include "resource.h"
|
||||
|
||||
|
@ -48,10 +49,12 @@ struct {
|
|||
exec_flags *flags;
|
||||
void *ExecuteCodeSegment;
|
||||
void *validate_filename;
|
||||
void *RegisterPluginCallback;
|
||||
} plugin_extra_parameters = {
|
||||
&g_exec_flags,
|
||||
&ExecuteCodeSegment,
|
||||
&validate_filename
|
||||
&validate_filename,
|
||||
&RegisterPluginCallback
|
||||
};
|
||||
|
||||
#if defined(NSIS_SUPPORT_ACTIVEXREG) || defined(NSIS_SUPPORT_CREATESHORTCUT)
|
||||
|
@ -996,7 +999,7 @@ static int NSISCALL ExecuteEntry(entry *entry_)
|
|||
update_status_text(LANG_CANNOTFINDSYMBOL,buf0);
|
||||
log_printf3("Error registering DLL: %s not found in %s",buf0,buf1);
|
||||
}
|
||||
if (!parm3) FreeLibrary(h);
|
||||
if (!parm3 && Plugins_CanUnload(h)) FreeLibrary(h);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue