Page 1 of 1

Linked plugins

Posted: Tue May 10, 2016 11:37 am
by lazi
If I am right the linked plugins are copied to sys:Storage/Hollywood and keeps there while the script is running.
A user reported me that he can not run the program, because he does have lock on the sys: volume.

The solution seems to be stay on with separate plugins in the program drawer.

What about checking the storage target and change it to T: if sys:storage is missing or write protected?
Or would it be a lot of work to use linked plugins without temporary files?

And what about checking Libs:Hollywood and if there is a plugin with the same version number, there is no need to save the plugin to a temporary file? Then the user could select the possibility in the installer to copy plugins or not.

Re: Linked plugins

Posted: Tue May 10, 2016 6:26 pm
by airsoftsoftwair
A lock on SYS:? How exactly does this work? Is this an OS-feature or some 3rd party patch? I've never heard of locks on SYS: before...

Re: Linked plugins

Posted: Tue May 10, 2016 7:44 pm
by lazi
6.WorkBench:> lock ?
DRIVE/A,ON/S,OFF/S,PASSKEY:

It is an OS feature from maybe 3.1.

lock sys: on

Then the sys: is write protected.

Re: Linked plugins

Posted: Tue May 10, 2016 10:33 pm
by airsoftsoftwair
Interesting, never heard of it before but looks like it really has been there for quite a long time... But I'm not sure if I should fix anything. Setting a lock on SYS: sounds like asking for trouble to me because lots of programs will try to write to SYS:, e.g. when writing to ENVARC:. The general problem is that there is no standard path for temporary files on the Amiga except T: .... but T: is always in RAM: so it's unfit for larger files. That's why Hollywood uses SYS:Storage which seems to come closest to a location for non-RAM temporary files.

Re: Linked plugins

Posted: Tue May 10, 2016 10:43 pm
by lazi
And what about checking Libs:Hollywood and just skip the temporary file if the same plugin is already installed?

Re: Linked plugins

Posted: Sat May 14, 2016 12:42 pm
by airsoftsoftwair
This won't spare Hollywood from loading the linked plugin either because the one installed in LIBS:Hollywood could be an older version of the plugin so Hollywood needs to load the linked plugin nevertheless to see if it's a newer version.

But I could probably implement loading the plugin directly from the applet without the temporary file detour. dos.library has an InternalLoadSeg() function which could be used to realize this but I'll have to see how well this works on the NG systems like OS4, MorphOS and AROS. I'll check if this is up for the job.

Re: Linked plugins

Posted: Sun May 15, 2016 2:04 pm
by lazi
Thanks Andreas, that sounds good!