umlaeute/Gem

gemhead abstraction is not used, and the compiled object behaviors changed.

Closed this issue · 2 comments

previously on Gem, when a gemhead received a bang, it outputed a "gemstate pointer pointer"
I used a lot this feature to replace a gemstate + separator.
It did not work any-more and lot's of pmpd example patch are broken (as example 52)
Today git on ubuntu linux.

gemhead is not an abstraction, but a compiled object.

If I replace [gemhead] with the abstraction [/home/chnry/pd/Gem/abstractions/gemhead], it works better.

this is somewhat tricky.

banging a [gemhead] needs to ensure that we have "a" valid context, otherwise we have all kind of weird/undefined behaviour.
now, [gemhead] also takes an argument to specify which context it is bound to (and not specifying a context is really binding to a context with an empty name).
so stacking [gemhead]s with different contexts might yield unexpected results.

however, i understand that this is not the case here.
i've checked the latest Gem from git and afaict, pmpd/examples/52_pmpd_string.pd is working correctly.
could you check?

PS: in order to force using the gemhead-abstraction, you should use [./gemhead] rather than a full path.

It also working here with both gemhead as a compiled object or an abstraction.
I'll check latter my other (and more complex) patch. Since they don't use multi context, I think (and hope) that everything will be OK.
For now, you can close this Issue.
Thanks a lot