Changeset 50314 in vbox for trunk/src/VBox/HostServices/SharedOpenGL
- Timestamp:
- Feb 3, 2014 7:29:26 PM (11 years ago)
- svn:sync-xref-src-repo-rev:
- 92023
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/HostServices/SharedOpenGL/crserver/crservice.cpp
r50313 r50314 933 933 } 934 934 935 static void crScreenshotHandle(CRVBOXHGCMTAKESCREENSHOT *pScreenshot, uint32_t idScreen, uint64_t u64Now) 936 { 937 if (!pScreenshot->pfnScreenshotBegin || pScreenshot->pfnScreenshotBegin(pScreenshot->pvContext, idScreen, u64Now)) 938 { 939 CR_SCREENSHOT Screenshot; 940 941 int rc = crServerVBoxScreenshotGet(idScreen, &Screenshot); 942 if (RT_SUCCESS(rc)) 943 { 944 pScreenshot->pfnScreenshotPerform(pScreenshot->pvContext, idScreen, 945 0, 0, 32, 946 Screenshot.Img.pitch, Screenshot.Img.width, Screenshot.Img.height, 947 (uint8_t*)Screenshot.Img.pvData, u64Now); 948 crServerVBoxScreenshotRelease(&Screenshot); 949 } 950 else 951 { 952 Assert(rc == VERR_INVALID_STATE); 953 } 954 955 if (pScreenshot->pfnScreenshotEnd) 956 pScreenshot->pfnScreenshotEnd(pScreenshot->pvContext, idScreen, u64Now); 957 } 958 } 959 935 960 /* 936 961 * We differentiate between a function handler for the guest and one for the host. … … 1225 1250 for (uint32_t i = 0; i < g_u32ScreenCount; ++i) 1226 1251 { 1227 CR_SCREENSHOT Screenshot; 1228 1229 int rc = crServerVBoxScreenshotGet(i, &Screenshot); 1230 if (RT_SUCCESS(rc)) 1231 { 1232 pScreenshot->pfnScreenshot(pScreenshot->pvContext, i, 1233 0, 0, 32, 1234 Screenshot.Img.pitch, Screenshot.Img.width, Screenshot.Img.height, 1235 (uint8_t*)Screenshot.Img.pvData, u64Now); 1236 crServerVBoxScreenshotRelease(&Screenshot); 1237 } 1238 else 1239 { 1240 Assert(rc == VERR_INVALID_STATE); 1241 } 1252 crScreenshotHandle(pScreenshot, i, u64Now); 1242 1253 } 1243 1254 } 1244 1255 else if (pScreenshot->u32Screen < g_u32ScreenCount) 1245 1256 { 1246 CR_SCREENSHOT Screenshot; 1247 1248 int rc = crServerVBoxScreenshotGet(pScreenshot->u32Screen, &Screenshot); 1249 if (RT_SUCCESS(rc)) 1250 { 1251 pScreenshot->pfnScreenshot(pScreenshot->pvContext, pScreenshot->u32Screen, 1252 0, 0, 32, 1253 Screenshot.Img.pitch, Screenshot.Img.width, Screenshot.Img.height, 1254 (uint8_t*)Screenshot.Img.pvData, u64Now); 1255 crServerVBoxScreenshotRelease(&Screenshot); 1256 } 1257 else 1258 { 1259 Assert(rc == VERR_INVALID_STATE); 1260 } 1257 crScreenshotHandle(pScreenshot, pScreenshot->u32Screen, u64Now); 1261 1258 } 1262 1259 else
Note:
See TracChangeset
for help on using the changeset viewer.