Hello hello! I’ve hit something that’s odd. I suspect I’ve missed something obvious but I can’t see what it is.
This code:
[ CreateFileReference fileName nameLength buffer fileReference;
print "fileName: ", (StringOrArray)fileName, "^";
if (fileName ofclass String){
nameLength = fileName.print_to_array(createFileReferenceBuffer, MAX_ARRAY_LENGTH);
buffer = createFileReferenceBuffer;
} else {
nameLength = fileName-->0;
buffer = fileName;
}
print "fileName result: ", (StringOrArray)buffer, "^";
print "length: ", nameLength, "^";
Called like:
print (StringOrArray)JSCOMM_EVAL_FILE, "^";
jsCommEvalFile = CreateFileReference(JSCOMM_EVAL_FILE);
Produces this output in WinGlulxe:
/JSCommunication/JSCommEval
fileName: /JSCommunication/JSCommEval
fileName result: /JSCommunication/JSCommEval
length: 27
But produces this in Quixe:
/JSCommunication/JSCommEval
fileName: /JSCommunication/JSCommEval
fileName result:
length: 0
I’m stumped. Up until now, everything run has been the same in both.
I’m sure I’ve done something somewhere that’s created the problem, I just don’t see how I could have managed to affect variable assignments…