From 03d1f00c86718d96f28fed40ae506d3bbb1c81c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Wed, 5 Nov 2008 23:40:29 +0000 Subject: [PATCH] now uses DIRECT_BUFFER_INFO_AREA_SIZE as the direct_buffer_info area size git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28525 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- headers/private/interface/DirectWindowPrivate.h | 3 +++ src/add-ons/opengl/mesa_software_renderer/Jamfile | 2 +- .../opengl/mesa_software_renderer/MesaSoftwareRenderer.cpp | 7 +++---- src/kits/opengl/GLView.cpp | 3 ++- src/kits/opengl/Jamfile | 2 +- 5 files changed, 10 insertions(+), 7 deletions(-) diff --git a/headers/private/interface/DirectWindowPrivate.h b/headers/private/interface/DirectWindowPrivate.h index e4706f7d31..47a1f2f8e1 100644 --- a/headers/private/interface/DirectWindowPrivate.h +++ b/headers/private/interface/DirectWindowPrivate.h @@ -9,6 +9,9 @@ #include +#define DIRECT_BUFFER_INFO_AREA_SIZE B_PAGE_SIZE + + struct direct_window_sync_data { area_id area; sem_id disable_sem; diff --git a/src/add-ons/opengl/mesa_software_renderer/Jamfile b/src/add-ons/opengl/mesa_software_renderer/Jamfile index b9ab57070e..19d5c4dae1 100644 --- a/src/add-ons/opengl/mesa_software_renderer/Jamfile +++ b/src/add-ons/opengl/mesa_software_renderer/Jamfile @@ -26,7 +26,7 @@ if $(TARGET_PLATFORM) != haiku { SubDirC++Flags [ FDefines $(defines) ] ; } -UsePrivateHeaders opengl ; +UsePrivateHeaders interface opengl ; UseHeaders [ FDirName $(HAIKU_TOP) src kits opengl mesa ] ; UseHeaders [ FDirName $(HAIKU_TOP) src kits opengl mesa main ] ; diff --git a/src/add-ons/opengl/mesa_software_renderer/MesaSoftwareRenderer.cpp b/src/add-ons/opengl/mesa_software_renderer/MesaSoftwareRenderer.cpp index 2677af1162..a530f6c075 100644 --- a/src/add-ons/opengl/mesa_software_renderer/MesaSoftwareRenderer.cpp +++ b/src/add-ons/opengl/mesa_software_renderer/MesaSoftwareRenderer.cpp @@ -18,6 +18,7 @@ #include "MesaSoftwareRenderer.h" #include +#include #include #include @@ -563,11 +564,9 @@ MesaSoftwareRenderer::DirectConnected(direct_buffer_info *info) BAutolock lock(fInfoLocker); if (info) { if (!fInfo) { - // TODO size of info != sizeof(direct_buffer_info) - // see GLView.cpp in glview_direct_info::glview_direct_info() - fInfo = (direct_buffer_info *)calloc(1, B_PAGE_SIZE); + fInfo = (direct_buffer_info *)calloc(1, DIRECT_BUFFER_INFO_AREA_SIZE); } - memcpy(fInfo, info, B_PAGE_SIZE); + memcpy(fInfo, info, DIRECT_BUFFER_INFO_AREA_SIZE); } else if (fInfo) { free(fInfo); fInfo = NULL; diff --git a/src/kits/opengl/GLView.cpp b/src/kits/opengl/GLView.cpp index bc4c44c84f..a845ab3211 100644 --- a/src/kits/opengl/GLView.cpp +++ b/src/kits/opengl/GLView.cpp @@ -41,6 +41,7 @@ #include #include +#include "DirectWindowPrivate.h" #include "GLRendererRoster.h" struct glview_direct_info { @@ -568,7 +569,7 @@ const char * color_space_name(color_space space) glview_direct_info::glview_direct_info() { // TODO: See direct_window_data() in app_server's ServerWindow.cpp - direct_info = (direct_buffer_info *)calloc(1, B_PAGE_SIZE); + direct_info = (direct_buffer_info *)calloc(1, DIRECT_BUFFER_INFO_AREA_SIZE); direct_connected = false; enable_direct_mode = false; } diff --git a/src/kits/opengl/Jamfile b/src/kits/opengl/Jamfile index 635aa1571d..aad9ee919f 100644 --- a/src/kits/opengl/Jamfile +++ b/src/kits/opengl/Jamfile @@ -2,7 +2,7 @@ SubDir HAIKU_TOP src kits opengl ; SetSubDirSupportedPlatformsBeOSCompatible ; -UsePrivateHeaders opengl ; +UsePrivateHeaders interface opengl ; UsePrivateSystemHeaders ; if $(TARGET_PLATFORM) != haiku {