[comp.sys.mac.programmer] GetFieldByName doesn't work in SuperCard........

thor@usdpyr.ACUSD.EDU (Thor Brickman ) (05/26/90)

We're having trouble getting one of our XFCN's (that works fine in HyperCard)
to work in SuperCard;  we've traced the problem to the GetFieldByName call. 
The Handle that is returned points to a pointer that points to a zero every
time;  that is, we're getting an empty string back.  Does anyone have any
idea what the difference is between SuperCard and HyperCard that could cause
this?

Here's the code that's doing this:

	RememberA0();
	SetUpA4();

	HandleToPstr( (char *) workfield, paramPtr->params[0] );
	worktype = (Boolean) HandleToBool( paramPtr, paramPtr->params[1] );
	workID = GetWorkID (paramPtr,(Str31 *) workfield,worktype);
answernum (paramPtr,workID);
	workHandle = GetFieldByID( paramPtr, worktype, workID );
answernum (paramPtr,(int) *(*workHandle));
	MoveHHi( workHandle );
	HLock(workHandle);

(We convert the name to an ID after GetFieldByName didn't work, to mak
absolutely sure we were trying to get the write thing;  answernum is a
function we wrote that puts an answer box up in SuperCard, showing us the
number;  the ID is correct, and *(*workHandle) is a null.)
Why are we getting an empty string here?

Thor Brickman, Jerold Stratton
thor@usdpyr.acusd.edu
   or
crit@usdcsv.acusd.edu
   or
BITNET address:  crit@usdcsv