Changeset 25073 in vbox
- Timestamp:
- Nov 28, 2009 9:11:05 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/VMMDev/VMMDevHGCM.cpp
r24076 r25073 82 82 * This field simplifies loading of saved state. 83 83 */ 84 /** @todo @bugref{4500} - Now that we require states to be portable between 85 * systems and between 32-bit/64-bit variants of the same OS, this field no 86 * longer simplifies loading of saved state. :-( Needs proper fixing... */ 84 87 uint32_t cbCmd; 88 /** HACK ALERT! (TEMPORARY) 89 * Factor to muliply cbCmd by when reading it from a saved state. */ 90 #define CMD_SIZE_HACK_FACTOR 4 85 91 86 92 /* The type of the command. */ … … 496 502 uint32_t cbCmdSize = sizeof (struct VBOXHGCMCMD) + pHGCMConnect->header.header.size; 497 503 504 #ifdef CMD_SIZE_HACK_FACTOR /*HACK ALERT!*/ 505 if (pSavedCmd->cbCmd * CMD_SIZE_HACK_FACTOR < cbCmdSize) 506 #else 498 507 if (pSavedCmd->cbCmd < cbCmdSize) 508 #endif 499 509 { 500 510 logRelSavedCmdSizeMismatch ("HGCMConnect", pSavedCmd->cbCmd, cbCmdSize); … … 552 562 uint32_t cbCmdSize = sizeof (struct VBOXHGCMCMD); 553 563 564 #ifdef CMD_SIZE_HACK_FACTOR /*HACK ALERT!*/ 565 if (pSavedCmd->cbCmd * CMD_SIZE_HACK_FACTOR < cbCmdSize) 566 #else 554 567 if (pSavedCmd->cbCmd < cbCmdSize) 568 #endif 555 569 { 556 570 logRelSavedCmdSizeMismatch ("HGCMConnect", pSavedCmd->cbCmd, cbCmdSize); … … 2093 2107 2094 2108 /* Size of entire command. */ 2109 /** @todo @bugref{4500} - Not portable, see other todos. */ 2095 2110 rc = SSMR3PutU32(pSSM, pIter->cbCmd); 2096 2111 AssertRCReturn(rc, rc); … … 2162 2177 } 2163 2178 2164 /* @thread EMT*/2179 /** @thread EMT(0) */ 2165 2180 int vmmdevHGCMLoadState(VMMDevState *pVMMDevState, PSSMHANDLE pSSM, uint32_t uVersion) 2166 2181 { … … 2222 2237 2223 2238 /* Size of entire command. */ 2239 /** @todo @bugref{4500} - Not portable, see other todos. */ 2224 2240 rc = SSMR3GetU32(pSSM, &u32); 2225 2241 AssertRCReturn(rc, rc); 2226 2242 2227 PVBOXHGCMCMD pCmd = (PVBOXHGCMCMD)RTMemAllocZ (u32 );2243 PVBOXHGCMCMD pCmd = (PVBOXHGCMCMD)RTMemAllocZ (u32 * CMD_SIZE_HACK_FACTOR); /*HACK ALERT!*/ 2228 2244 AssertReturn(pCmd, VERR_NO_MEMORY); 2229 2245 pCmd->cbCmd = u32;
Note:
See TracChangeset
for help on using the changeset viewer.