st/xorg: If dri2 version is 2 support version 1 as well
[mesa.git] / src / gallium / drivers / r300 / r300_flush.c
index d60652a02190400236f7948381a0b2a9e5392fb7..4282357521b3fb06b7262d1b8916e2a3872698cb 100644 (file)
  * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
  * USE OR OTHER DEALINGS IN THE SOFTWARE. */
 
+#include "draw/draw_context.h"
+#include "draw/draw_private.h"
+
+#include "util/u_simple_list.h"
+
+#include "r300_context.h"
+#include "r300_cs.h"
 #include "r300_emit.h"
 #include "r300_flush.h"
 #include "r300_state_invariant.h"
@@ -32,9 +39,12 @@ static void r300_flush(struct pipe_context* pipe,
     struct r300_query *query;
 
     CS_LOCALS(r300);
+    (void) cs_count;
     /* We probably need to flush Draw, but we may have been called from
-     * within Draw. This feels kludgy, but it might be the best thing. */
-    if (!r300->draw->flushing) {
+     * within Draw. This feels kludgy, but it might be the best thing.
+     *
+     * Of course, the best thing is to kill Draw with fire. :3 */
+    if (r300->draw && !r300->draw->flushing) {
         draw_flush(r300->draw);
     }