glRenderMode error return code is 0 not -1.
Read the glSelectBuffer docs for an explanation of the -1 return value.
In brief: -1 means you had a buffer overflow in your selection buffer.
Means not all hits fit into your buffer and (watch out!) you may need to parse only til the last-but-one entry, because the last entry may only contain a partial result if the buffer length modulo entry length is not zero.
So you were wrong with the “appropriately large buffer” assumption and if you crash on -1 return values, it’s your fault.
[This message has been edited by Relic (edited 04-16-2003).]