>>16
If it didn't find any zero before n characters had been looked through it would return n. Mostly used with n being the size of the buffer, effectively giving you the length of a zero-terminated string or the length of the buffer. Preventing overflow.
It was a symptom of not fuqin sending the length of the data and rely on a terminating character instead. Which could be cut off.