Changeset 5538 in vbox
- Timestamp:
- Oct 27, 2007 4:22:10 AM (17 years ago)
- svn:sync-xref-src-repo-rev:
- 25760
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/ConsoleImpl.cpp
r5520 r5538 959 959 AutoReaderLock alock (that); 960 960 961 int vrc = SSMR3PutU32 (pSSM, that->mSharedFolders.size());961 int vrc = SSMR3PutU32 (pSSM, (uint32_t)that->mSharedFolders.size()); 962 962 AssertRC (vrc); 963 963 … … 970 970 971 971 Utf8Str name = folder->name(); 972 vrc = SSMR3PutU32 (pSSM, name.length() + 1 /* term. 0 */);972 vrc = SSMR3PutU32 (pSSM, (uint32_t)name.length() + 1 /* term. 0 */); 973 973 AssertRC (vrc); 974 974 vrc = SSMR3PutStrZ (pSSM, name); … … 976 976 977 977 Utf8Str hostPath = folder->hostPath(); 978 vrc = SSMR3PutU32 (pSSM, hostPath.length() + 1 /* term. 0 */);978 vrc = SSMR3PutU32 (pSSM, (uint32_t)hostPath.length() + 1 /* term. 0 */); 979 979 AssertRC (vrc); 980 980 vrc = SSMR3PutStrZ (pSSM, hostPath); … … 4369 4369 VBOXHGCMSVCPARM parms[2]; 4370 4370 SHFLSTRING *pFolderName, *pMapName; 4371 intcbString;4371 size_t cbString; 4372 4372 4373 4373 Log (("Adding shared folder '%ls' -> '%ls'\n", aName, aHostPath)); 4374 4374 4375 4375 cbString = (RTStrUcs2Len (aHostPath) + 1) * sizeof (RTUCS2); 4376 if (cbString >= UINT16_MAX) 4377 return setError (E_INVALIDARG, tr ("The name is too long")); 4376 4378 pFolderName = (SHFLSTRING *) RTMemAllocZ (sizeof (SHFLSTRING) + cbString); 4377 4379 Assert (pFolderName); 4378 4380 memcpy (pFolderName->String.ucs2, aHostPath, cbString); 4379 4381 4380 pFolderName->u16Size = cbString;4381 pFolderName->u16Length = cbString - sizeof(RTUCS2);4382 pFolderName->u16Size = (uint16_t)cbString; 4383 pFolderName->u16Length = (uint16_t)cbString - sizeof(RTUCS2); 4382 4384 4383 4385 parms[0].type = VBOX_HGCM_SVC_PARM_PTR; 4384 4386 parms[0].u.pointer.addr = pFolderName; 4385 parms[0].u.pointer.size = sizeof (SHFLSTRING) + cbString;4387 parms[0].u.pointer.size = sizeof (SHFLSTRING) + (uint16_t)cbString; 4386 4388 4387 4389 cbString = (RTStrUcs2Len (aName) + 1) * sizeof (RTUCS2); 4390 if (cbString >= UINT16_MAX) 4391 { 4392 RTMemFree (pFolderName); 4393 return setError (E_INVALIDARG, tr ("The host path is too long")); 4394 } 4388 4395 pMapName = (SHFLSTRING *) RTMemAllocZ (sizeof(SHFLSTRING) + cbString); 4389 4396 Assert (pMapName); 4390 4397 memcpy (pMapName->String.ucs2, aName, cbString); 4391 4398 4392 pMapName->u16Size = cbString;4393 pMapName->u16Length = cbString - sizeof (RTUCS2);4399 pMapName->u16Size = (uint16_t)cbString; 4400 pMapName->u16Length = (uint16_t)cbString - sizeof (RTUCS2); 4394 4401 4395 4402 parms[1].type = VBOX_HGCM_SVC_PARM_PTR; 4396 4403 parms[1].u.pointer.addr = pMapName; 4397 parms[1].u.pointer.size = sizeof (SHFLSTRING) + cbString;4404 parms[1].u.pointer.size = sizeof (SHFLSTRING) + (uint16_t)cbString; 4398 4405 4399 4406 int vrc = mVMMDev->hgcmHostCall ("VBoxSharedFolders", … … 4430 4437 VBOXHGCMSVCPARM parms; 4431 4438 SHFLSTRING *pMapName; 4432 intcbString;4439 size_t cbString; 4433 4440 4434 4441 Log (("Removing shared folder '%ls'\n", aName)); 4435 4442 4436 4443 cbString = (RTStrUcs2Len (aName) + 1) * sizeof (RTUCS2); 4444 if (cbString >= UINT16_MAX) 4445 return setError (E_INVALIDARG, tr ("The name is too long")); 4437 4446 pMapName = (SHFLSTRING *) RTMemAllocZ (sizeof (SHFLSTRING) + cbString); 4438 4447 Assert (pMapName); 4439 4448 memcpy (pMapName->String.ucs2, aName, cbString); 4440 4449 4441 pMapName->u16Size = cbString;4442 pMapName->u16Length = cbString - sizeof (RTUCS2);4450 pMapName->u16Size = (uint16_t)cbString; 4451 pMapName->u16Length = (uint16_t)cbString - sizeof (RTUCS2); 4443 4452 4444 4453 parms.type = VBOX_HGCM_SVC_PARM_PTR; 4445 4454 parms.u.pointer.addr = pMapName; 4446 parms.u.pointer.size = sizeof (SHFLSTRING) + cbString;4455 parms.u.pointer.size = sizeof (SHFLSTRING) + (uint16_t)cbString; 4447 4456 4448 4457 int vrc = mVMMDev->hgcmHostCall ("VBoxSharedFolders", … … 4869 4878 return VERR_INVALID_PARAMETER; /* The clientId is invalid then. */ 4870 4879 } 4871 ULONG ulUSBVersion = 0x00010001; /* 1.1 */ 4872 #if 0 4873 HRESULT hrc = aHostDevice->GetUSBVersion(&ulUSBVersion); 4880 4881 USHORT portVersion = 1; 4882 #if 0 /* can't test this now */ 4883 HRESULT hrc = aHostDevice->COMGETTER(PortVersion)(&portVersion); 4874 4884 AssertComRCReturn(hrc, VERR_GENERAL_FAILURE); 4885 Assert(portVersion == 1 || portVersion == 2); 4875 4886 #endif 4876 Assert(ulUSBVersion == 0x00010001 || ulUSBVersion == 0x00020000);4877 4887 4878 4888 int vrc = PDMR3USBCreateProxyDevice (that->mpVM, aUuid, aRemote, aAddress, pvRemoteBackend, 4879 ulUSBVersion == 0x00010001 ? VUSB_STDVER_11 : VUSB_STDVER_20);4889 portVersion == 1 ? VUSB_STDVER_11 : VUSB_STDVER_20); 4880 4890 if (VBOX_SUCCESS (vrc)) 4881 4891 {
Note:
See TracChangeset
for help on using the changeset viewer.