r300g: more efficient finish + fix comments
diff --git a/src/gallium/drivers/r300/r300_context.c b/src/gallium/drivers/r300/r300_context.c
index 4721b7d..85e45d8 100644
--- a/src/gallium/drivers/r300/r300_context.c
+++ b/src/gallium/drivers/r300/r300_context.c
@@ -253,11 +253,12 @@
             if (fb->cbufs[i]->texture) {
                 r300->rws->buffer_wait(r300->rws,
                     r300_texture(fb->cbufs[i]->texture)->buffer);
+                return;
             }
-            if (fb->zsbuf) {
-                r300->rws->buffer_wait(r300->rws,
-                    r300_texture(fb->zsbuf->texture)->buffer);
-            }
+        }
+        if (fb->zsbuf && fb->zsbuf->texture) {
+            r300->rws->buffer_wait(r300->rws,
+                r300_texture(fb->zsbuf->texture)->buffer);
         }
     }
 }
diff --git a/src/gallium/drivers/r300/r300_context.h b/src/gallium/drivers/r300/r300_context.h
index 82183cf..efc6df3 100644
--- a/src/gallium/drivers/r300/r300_context.h
+++ b/src/gallium/drivers/r300/r300_context.h
@@ -259,8 +259,8 @@
  *
  * This is not a subclass of pipe_fence_handle because pipe_fence_handle is
  * never actually fully defined. So, rather than have it as a member, and do
- * subclass-style casting, we treat pipe_query as an opaque, and just
- * trust that our state tracker does not ever mess up query objects.
+ * subclass-style casting, we treat pipe_fence_handle as an opaque, and just
+ * trust that our state tracker does not ever mess up fence objects.
  */
 struct r300_fence {
     struct pipe_reference reference;