Open Enyium opened 1 year ago
MakePropertyWritable
is an IScriptEnvironment
method, unlike IsPropertyWritable
.
This is why only the latter appears in AVS_Linkage.
As far as I know, C plugins (there is not much I am aware of), don't use avs_load_library
. They have their own loader into their own struct. avs_load_library is just a helper function with some convenience conversion of some functions which would be missed from the old Avisynth. Anyways, unlike avisynth.h, avisynth_c.h is usually edited or converted.
But yes, those two v9 entries are missing from AVSC_LOAD_FUNC, accidentally.
As for what must be arranged and ported for C interface, I'm gonna return to the topic later next week.
I didn't check everything. I just noticed that the C
struct AVS_Library
(avisynth_c.h
) containsBut the C++
struct AVS_Linkage
(avisynth.h
) only hasand not
MakePropertyWritable()
. Doesn't this prevent calling this function?And
avs_..._property_writable()
are in turn missing in the function list inavs_load_library()
. Isavs_load_library()
old, becauseavs_..._property_writable()
are mentioned elsewhere in the header file? If so, can it be removed?@pinterf: You said we must not forget to bump the interface version number. Is there also something regarding
avisynth_c.h
and the interface additions we must not forget?