Abbreviated, of course, and I'm typing this, not cutting and pasting, so
forgive my typos.

// put these lines near the top of your C source
extern void *(*gResolver)(const char *entryName);
#ifdef powerpc
extern void *(*gResolverPPC)(const char *entryName);
#endif

static inline void* CallResolver(const char *entryName)
{
#ifdef powerpc
        return gResolverPPC(entryName);
#else
        return gResolver(entryName);
#endif
}


// Inside your function, use the following line,
// instead of a call to REALLoadObjectMethod.
// The above lines, plus this one, should be all
// the changes you need to make.
//
// Excuse that this line is getting folded into two
// lines by my email client

valueFunc = (void (*)(REALobject, REALobject, REALobject))
CallResolver("dictionaryValueSetter");

// I'm assuming you already have the following:
// REALobject dictionaryObject;
// REALobject thisKey;
// REALobject thisValue;

// make sure you didn't get a NULL pointer from CallResolver
if (valueFunc)
{
        // now you can call your function, just as before
        valueFunc(dictionaryObject, thisKey, thisValue);
}


I hope this helps.  Be sure to sign onto my bug report, so REAL knows
I'm not the only one experiencing this bug.

On Sun, 2006-09-10 at 15:23 -0400, Alexander Cohen wrote:
> Hmmm, interesting. Can you explain how i would use "callResolver" to  
> get access to this function?
> 
> thanks
> 
> AC
> 
> On 9-Sep-06, at 11:31 PM, Michael A. Litscher wrote:
> 
> > I had the same problem.  I filed a bug report on it which you can read
> > here:
> > http://www.realsoftware.com/feedback/viewreport.php?reportid=pklfimqt
> >
> >
> >> Im trying to load a method from a dictionary object. This used to
> >> work in rb 2006 release 1 but does not work anymore in release 3. Has
> >> anything changed or am i doing something incorrectly? Here's how im
> >> loading it:

_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>

Reply via email to