PRBool			descendingFlag, sortChanged = false; void			*sortToken; uint32			sortTokenType;
PRBool			descendingFlag = false, sortChanged = false; void			*sortToken = NULL; uint32			sortTokenType = 0;
sortNodes(HT_View view, HT_Resource parent, HT_Resource *children, uint32 numChildren){	RDF_BT			containerType;	PRBool			descendingFlag, sortChanged = false;	void			*sortToken;	uint32			sortTokenType;	uint32			startIndex, loop;	XP_ASSERT(view != NULL);	XP_ASSERT(parent != NULL);	containerType = resourceType(parent->node);	if ((view->sortToken == NULL) && (containerType != RDF_RT) && 0)	{		/* default: sort on name column */		sortChanged = true; 		sortToken = view->sortToken;		view->sortToken = gCoreVocab->RDF_name;		sortTokenType = view->sortTokenType;		view->sortTokenType = HT_COLUMN_STRING;		descendingFlag = view->descendingFlag;		view->descendingFlag = false;	}	if (numChildren>1)	{		/* smart sorting (sort within separators) on name column */		if (view->sortToken == gCoreVocab->RDF_name)		{			startIndex=0;			for (loop=0; loop<numChildren; loop++)			{				if (HT_IsSeparator(children[loop]))				{					if (loop > startIndex+1)					{						XP_QSORT((void *)&children[startIndex], (size_t)(loop-startIndex),							(size_t)sizeof(HT_Resource *), (void *)nodeCompareRtn);						startIndex = loop+1;					}				}			}			if (loop > startIndex+1)			{				XP_QSORT((void *)&children[startIndex], (size_t)(loop-startIndex),					(size_t)sizeof(HT_Resource *), (void *)nodeCompareRtn);				startIndex = loop+1;			}		}		else		{			XP_QSORT((void *)children, (size_t)numChildren,				(size_t)sizeof(HT_Resource *), (void *)nodeCompareRtn);		}	}	if (sortChanged == true)	{		view->sortToken = sortToken;		view->sortTokenType = sortTokenType;		view->descendingFlag = descendingFlag;	}}