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
This commit is contained in:
Jérôme Duval
2008-11-05 23:40:29 +00:00
parent ff693eba44
commit 03d1f00c86
5 changed files with 10 additions and 7 deletions
@@ -9,6 +9,9 @@
#include <OS.h>
#define DIRECT_BUFFER_INFO_AREA_SIZE B_PAGE_SIZE
struct direct_window_sync_data {
area_id area;
sem_id disable_sem;
@@ -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 ] ;
@@ -18,6 +18,7 @@
#include "MesaSoftwareRenderer.h"
#include <Autolock.h>
#include <DirectWindowPrivate.h>
#include <GraphicsDefs.h>
#include <Screen.h>
@@ -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;
+2 -1
View File
@@ -41,6 +41,7 @@
#include <DirectWindow.h>
#include <GLRenderer.h>
#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;
}
+1 -1
View File
@@ -2,7 +2,7 @@ SubDir HAIKU_TOP src kits opengl ;
SetSubDirSupportedPlatformsBeOSCompatible ;
UsePrivateHeaders opengl ;
UsePrivateHeaders interface opengl ;
UsePrivateSystemHeaders ;
if $(TARGET_PLATFORM) != haiku {