[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sc-dev] "/n_after"



On Sunday, June 23, 2002, at 03:03  PM, Julian Rohrhuber wrote:

there seems to me that "/n_after" does the same like "n_before".
(and where is the source for the osc parser?)


You are correct. The bug is in SC_MiscCmds.cpp

change:


SCErr meth_nodeAddAfter(World *inWorld, int inSize, char *inData, ReplyAddress *inReply); SCErr meth_nodeAddAfter(World *inWorld, int inSize, char *inData, ReplyAddress *inReply)
{
	sc_msg_iter msg(inSize, inData);	
	int32 nodeID = msg.geti();
	Node *node = World_GetNode(inWorld, nodeID);
	if (!node) return kSCErr_NodeNotFound;

	Node *afterThisOne = World_GetNode(inWorld, msg.geti());
	if (!afterThisOne) return kSCErr_NodeNotFound;
	
	Node_Remove(node);
	Node_AddBefore(node, afterThisOne);
	return kSCErr_None;
}

to:


SCErr meth_nodeAddAfter(World *inWorld, int inSize, char *inData, ReplyAddress *inReply); SCErr meth_nodeAddAfter(World *inWorld, int inSize, char *inData, ReplyAddress *inReply)
{
	sc_msg_iter msg(inSize, inData);	
	int32 nodeID = msg.geti();
	Node *node = World_GetNode(inWorld, nodeID);
	if (!node) return kSCErr_NodeNotFound;

	Node *afterThisOne = World_GetNode(inWorld, msg.geti());
	if (!afterThisOne) return kSCErr_NodeNotFound;
	
	Node_Remove(node);
	Node_AddAfter(node, afterThisOne);
	return kSCErr_None;
}


--
--- james mccartney   james@xxxxxxxxxxxxxx   <http://www.audiosynth.com>
SuperCollider - a real time synthesis programming language for the PowerMac.
<ftp://www.audiosynth.com/pub/updates/SC2.2.15.sea.hqx>