Raycasthit info only working the first time the object is hit

Greetings, oh wise minds of the Internet.

I’ve run into an annoying issue while trying to use Physics.Raycast to identify the object hit. I use the following code to check objects on two layers (9 and 10) using the touchscreen (through the Android Remote) and it works, but only the first time I hit the object. Each subsequent hit on that object will do absolutely nothing…I can touch another object on those layers and it will update the Debug.Log message, but then that will only work once, too.

Here is the code:

var layerMask : LayerMask;

function Start () {
	// Set the layer mask to "Floor" and "Radar"
	layerMask.value = (1 << 9) | (1 << 10);
}

function Update () {
	for (var touch : Touch in Input.touches) {
		var hit : RaycastHit;
		var ray = Camera.main.ScreenPointToRay (Vector3(touch.position.x, touch.position.y,0));
		Debug.DrawRay (ray.origin, ray.direction * 10, Color.yellow);
		if (Physics.Raycast (ray, hit, Mathf.Infinity, layerMask)) {
			Debug.Log(hit.collider.gameObject.name + " ("+hit.collider.tag+") ");
		}
	}
}

The code seems clean to me…any ideas why this only works the first time I “touch” an object, and not afterwards?

Thanks in advance!

EDIT: after some more testing, it seems the problem is in Debug.Log (I printed the info on-screen using GUI commands and it works…)

This kind of solves my problem, although it’s strange that Debug.Log doesn’t seem to work in this instance…)

Uncheck “Collapse” button in your Console.