VirtualBox

source: vbox/trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server_writeback.c@ 52095

最後變更 在這個檔案從52095是 39288,由 vboxsync 提交於 13 年 前

CrOpenGL: avoid blocked client polling & extra memcpy (block hgsmi command until completion)

  • 屬性 svn:eol-style 設為 native
  • 屬性 svn:keywords 設為 Id
檔案大小: 858 位元組
 
1/* Copyright (c) 2001, Stanford University
2 * All rights reserved
3 *
4 * See the file LICENSE.txt for information on redistributing this software.
5 */
6
7#include "cr_mem.h"
8#include "cr_net.h"
9#include "server_dispatch.h"
10#include "server.h"
11
12void SERVER_DISPATCH_APIENTRY crServerDispatchWriteback( GLint *writeback )
13{
14 (void) writeback;
15 crServerWriteback( );
16}
17
18void crServerWriteback(void)
19{
20 CRMessageWriteback *wb = (CRMessageWriteback *) crAlloc( sizeof( *wb ) );
21 wb->header.type = CR_MESSAGE_WRITEBACK;
22 CRDBGPTR_PRINTWB(cr_server.curClient->conn->u32ClientID, &cr_server.writeback_ptr);
23 CRDBGPTR_CHECKNZ(&cr_server.writeback_ptr);
24 crMemcpy( &(wb->writeback_ptr), &(cr_server.writeback_ptr), sizeof( wb->writeback_ptr ) );
25 crNetSend( cr_server.curClient->conn, NULL, wb, sizeof( *wb ) );
26 CRDBGPTR_SETZ(&cr_server.writeback_ptr);
27 crFree( wb );
28}
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette