Das GOTO ist schon geil.
Das "EXTERN_SYMBOL vlc_entry" hab ich als
DLL-Import verstanden, aber es wird doch nirgendwo verwendet, also nutzlos?
Delphi-Quellcode:
var
module: Pmodule_t;
config: Pmodule_config_t;
function vlc_plugin_set(Param1, Param2, Param3: irgendwas): nochwas; // nochwas = Result-Typ von vlc_set
begin
Result := vlc_set(opaque, nil, Param1, Param2, Param3);
end;
...
function vlc_module_begin: Integer; // aber für mich sieht es mehr nach einem Boolean aus
{var
module: Pmodule_t;
config: Pmodule_config_t;}
begin
config := nil;
if vlc_plugin_set(VLC_MODULE_CREATE, @module) then // vom Gefühl her würde ich denken da fehlt ein NOT
Exit(-1);
if vlc_module_set(VLC_MODULE_NAME, MODULE_STRING) then
Exit(-1);
//Result := ; // vermutlich 0, aber da nirgendwo initialisiert/gesetzt, kannst auch Random benutzen [EDIT] siehe nächste Zeilen
{Result :=} vlc_module_end; // gut, da vlc_module_end IM vlc_module_begin definiert wurde, wird es wohl auch gleich mit aufgerufen
Result := 0; // weil ich vlc_module_end als Prozedur hab, da es eh immer das Selbe liefert
end;
procedure vlc_module_end;
begin
config;
//Result := 0;
end;
Die Variablen module/config sollen wohl globale Variablen sein.
Sieht für mich zwar lokal aus, aber macht so keinen Sinn.
Außerdem knallt es in vlc_module_end wenn vlc_config_set nicht aufgerufen wurde.