VirtualBox

忽略:
時間撮記:
2015-10-30 上午09:03:19 (9 年 以前)
作者:
vboxsync
訊息:

pr7179. GuestSession, GuestProcess, GuestControl classes have been modified.

檔案:
修改 1 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/Main/src-client/GuestCtrlImpl.cpp

    r56030 r58521  
    559559        else
    560560        {
     561
     562            ComObjPtr<Progress> pProgress;
     563            SessionTaskUpdateAdditions *pTask = NULL;
    561564            try
    562565            {
    563                 ComObjPtr<Progress> pProgress;
    564                 SessionTaskUpdateAdditions *pTask = new SessionTaskUpdateAdditions(pSession /* GuestSession */,
    565                                                                                    aSource, aArgs, fFlags);
    566                 rc = pSession->i_startTaskAsync(tr("Updating Guest Additions"), pTask, pProgress);
    567                 if (RT_SUCCESS(rc))
     566                try
     567                {
     568                    pTask = new SessionTaskUpdateAdditions(pSession /* GuestSession */, aSource, aArgs, fFlags);
     569                }
     570                catch(...)
     571                {
     572                    hr = setError(VBOX_E_IPRT_ERROR, tr("Failed to create SessionTaskUpdateAdditions object "));
     573                    throw;
     574                }
     575
     576
     577                hr = pTask->Init(Utf8StrFmt(tr("Updating Guest Additions")));
     578                if (FAILED(hr))
     579                {
     580                    delete pTask;
     581                    hr = setError(VBOX_E_IPRT_ERROR,
     582                                  tr("Creating progress object for SessionTaskUpdateAdditions object failed"));
     583                    throw hr;
     584                }
     585
     586                hr = pTask->createThread(NULL, RTTHREADTYPE_MAIN_HEAVY_WORKER);
     587
     588                if (SUCCEEDED(hr))
    568589                {
    569590                    /* Return progress to the caller. */
     591                    pProgress = pTask->GetProgressObject();
    570592                    hr = pProgress.queryInterfaceTo(aProgress.asOutParam());
    571593                }
    572594                else
    573595                    hr = setError(VBOX_E_IPRT_ERROR,
    574                                   tr("Starting task for updating Guest Additions on the guest failed: %Rrc"), rc);
     596                                  tr("Starting thread for updating Guest Additions on the guest failed "));
    575597            }
    576598            catch(std::bad_alloc &)
     
    578600                hr = E_OUTOFMEMORY;
    579601            }
     602            catch(HRESULT eHR)
     603            {
     604                LogFlowThisFunc(("Exception was caught in the function \n"));
     605            }
    580606        }
    581607    }
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

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